Lets chat about this one. Not sure I like having the builder reaching in to private methods of DBClientBase. I wonder if we could solve this by making a

DBClientXXX::execute(const BulkOperationBuilder& ops)

method.