-
Type: Bug
-
Resolution: Won't Fix
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Execution
-
ALL
Problem Statement/Rationale
This is a description of the current state of things why we need to do this work.
MQLRUN crashes if it is passed a $merge stage. For example,
D:\Code\mongohouse>artifacts\mqlrun -e "[{ $merge: { into: 'foo' } }]" -j D:\out.bson {"t":{"$date":"2021-03-23T15:24:31.567Z"},"s":"F", "c":"-", "id":23079, "ctx":"main","msg":"Invariant failure","attr":{"expr":"Hit a MONGO_UNREACHABLE!","file":"C:\\data\\mci\\baa2519902cb0fcd2e153c9c7bcf9243\\src\\src\\mongo/db/pipeline/process_interface/stub_mongo_process_interface.h","line":82}} {"t":{"$date":"2021-03-23T15:24:31.568Z"},"s":"F", "c":"-", "id":23080, "ctx":"main","msg":"\n\n***aborting after invariant() failure\n\n"}
Proposed Change/Action
This is a brief description of the task to be completed.
We should return a useful error message if $merge is included in the pipeline. Right, now the error is being written to stdout, which ADL attempts to read as BSON and determines to be invalid, leading to a completely unhelpful error. If the error were written to stderr instead, it would be treated as an error by ADL.
Additional Notes
Any additional information that may be useful to include.