// Separate the objects to be persisted into groups, for the "table" in question
Map<String, Set<ObjectProvider>> opsByTable = new HashMap();
for (int i=0;i<ops.length;i++)
{
AbstractClassMetaData cmd = ops[i].getClassMetaData();
if (!cmd.pkUsesIdentityValueGenerator())
{
String tableName = MongoDBUtils.getCollectionName(cmd);
Set<ObjectProvider> opsForTable = opsByTable.get(tableName);
if (opsForTable == null)
{