diff options
Diffstat (limited to 'db/update.cpp')
-rw-r--r-- | db/update.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/db/update.cpp b/db/update.cpp index cbf93ba..d4a038b 100644 --- a/db/update.cpp +++ b/db/update.cpp @@ -527,7 +527,7 @@ namespace mongo { string field = root + e.fieldName(); FieldCompareResult cmp = compareDottedFieldNames( m->second.m->fieldName , field ); - DEBUGUPDATE( "\t\t\t field:" << field << "\t mod:" << m->second.m->fieldName << "\t cmp:" << cmp ); + DEBUGUPDATE( "\t\t\t field:" << field << "\t mod:" << m->second.m->fieldName << "\t cmp:" << cmp << "\t short: " << e.fieldName() ); switch ( cmp ){ @@ -550,6 +550,13 @@ namespace mongo { e = es.next(); m++; } + else { + // this is a very weird case + // have seen it in production, but can't reproduce + // this assert prevents an inf. loop + // but likely isn't the correct solution + assert(0); + } continue; } case LEFT_BEFORE: // Mod on a field that doesn't exist |