better report errors
handle out of memory properly when open-iterating a collection