summaryrefslogtreecommitdiff
path: root/db/update.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'db/update.cpp')
-rw-r--r--db/update.cpp9
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