If this fails, iterator won't be closed