better handling of `no data` exception