mirror of
https://github.com/FerretDB/documentdb.git
synced 2026-11-06 11:02:50 -05:00
### Does this PR have any customer impact? ### Type (Feature, Refactoring, Bugfix, DevOps, Testing, Perf, etc) ### Does it involve schema level changes? (Table, Column, Index, UDF, etc level changes) ### Are you introducing any new config? If yes, do you have tests with and without them being set? ### ChangeLog (Refer [Template](../oss/CHANGELOG.md)) ### Description [Compat] Fixing output pipeline namespace validations ---- #### AI description (iteration 1) #### PR Classification Bug fix and compatibility update. #### PR Summary This pull request enforces strict namespace validations for aggregation pipeline output stages by preventing writes to internal databases and system collections. It introduces a dedicated validation function for both $out and $merge stages and integrates new error codes across the codebase and mapping files. - `oss/pg_documentdb/src/aggregation/bson_aggregation_output_pipeline.c`: Added the `ValidateTargetNameSpaceForOutputStage` function and updated calls in both the $out and $merge handlers. - `pgmongo/src/utils/documentdb_conversion_codes.c` and `oss/pg_documentdb_core/include/utils/documentdb_errors.h`: Introduced and mapped new error codes for invalid namespace targets. - Updated multiple error mapping files (`documentdb_errors.csv`, `error_mappings.csv`, `documentdb_codes.txt`, `external_error_mapping.csv`, and `mongo_codes.csv`) and test CSV files under `gateway/managed/Tests.Integration.Shell.Postgres` to reflect the new validations and error messages. <!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
532 lines
11 KiB
CSV
532 lines
11 KiB
CSV
OrdinalPosition,ErrorName
|
|
1,InternalError
|
|
2,BadValue
|
|
3,GraphContainsCycle
|
|
4,FailedToParse
|
|
5,TypeMismatch
|
|
6,Overflow
|
|
7,IllegalOperation
|
|
8,AlreadyInitialized
|
|
9,NamespaceNotFound
|
|
10,IndexNotFound
|
|
11,PathNotViable
|
|
12,RoleNotFound
|
|
13,CannotBackfillArray
|
|
14,ConflictingUpdateOperators
|
|
15,CursorNotFound
|
|
16,NamespaceExists
|
|
17,DollarPrefixedFieldName
|
|
18,CanNotBeTypeArray
|
|
19,NotSingleValueField
|
|
20,EmptyFieldName
|
|
21,DottedFieldName
|
|
22,ShardKeyNotFound
|
|
23,ImmutableField
|
|
24,CannotCreateIndex
|
|
25,IndexAlreadyExists
|
|
26,InvalidOptions
|
|
27,InvalidNamespace
|
|
28,IndexOptionsConflict
|
|
29,IndexKeySpecsConflict
|
|
30,NotExactValueField
|
|
31,CommandNotSupported
|
|
32,NamespaceNotSharded
|
|
33,ExceededMemoryLimit
|
|
34,DurationOverflow
|
|
35,ViewDepthLimitExceeded
|
|
36,CommandNotSupportedOnView
|
|
37,OptionNotSupportedOnView
|
|
38,AmbiguousIndexKeyPattern
|
|
39,InvalidIndexSpecificationOption
|
|
40,QueryFeatureNotAllowed
|
|
41,MaxSubPipelineDepthExceeded
|
|
42,ConversionFailure
|
|
43,OperationNotSupportedInTransaction
|
|
44,IndexBuildAborted
|
|
45,UnableToFindIndex
|
|
46,CollectionUUIDMismatch
|
|
47,Location10065
|
|
48,BsonObjectTooLarge
|
|
49,DuplicateKey
|
|
50,BackgroundOperationInProgressForNamespace
|
|
51,Location13026
|
|
52,Location13027
|
|
53,Location13068
|
|
54,MergeStageNoMatchingDocument
|
|
55,DbAlreadyExists
|
|
56,Location13548
|
|
57,Location15947
|
|
58,Location15952
|
|
59,Location15955
|
|
60,Location15957
|
|
61,Location15958
|
|
62,Location15959
|
|
63,Location15972
|
|
64,Location15976
|
|
65,Location15981
|
|
66,Location16004
|
|
67,Location16006
|
|
68,Location16007
|
|
69,Location16020
|
|
70,Location6045000
|
|
71,Location16034
|
|
72,Location16035
|
|
73,Location16410
|
|
74,Location16411
|
|
75,Location16433
|
|
76,DollarAddNumericOrDateTypes
|
|
77,DollarModByZeroProhibited
|
|
78,DollarModOnlyNumeric
|
|
79,DollarAddOnlyOneDate
|
|
80,Location16702
|
|
81,Location16747
|
|
82,Location16748
|
|
83,Location16749
|
|
84,Location16755
|
|
85,Location16764
|
|
86,HashedIndexDoNotSupportArrayValues
|
|
87,Location16800
|
|
88,Location16801
|
|
89,Location16804
|
|
90,Location16874
|
|
91,Location16875
|
|
92,Location16876
|
|
93,Location16878
|
|
94,Location16879
|
|
95,Location16880
|
|
96,Location16882
|
|
97,Location16883
|
|
98,Location16994
|
|
99,Location17040
|
|
100,Location17041
|
|
101,Location17042
|
|
102,Location17043
|
|
103,Location17044
|
|
104,Location17045
|
|
105,Location17046
|
|
106,Location17047
|
|
107,Location17048
|
|
108,Location17049
|
|
109,DollarCondMissingIfParameter
|
|
110,DollarCondMissingThenParameter
|
|
111,DollarCondMissingElseParameter
|
|
112,DollarCondBadParameter
|
|
113,DollarSizeRequiresArray
|
|
114,ExactlyOneTextIndex
|
|
115,Location17261
|
|
116,Location17276
|
|
117,Location17308
|
|
118,Location17310
|
|
119,DocumentAfterUpdateLargerThanMaxSize
|
|
120,DocumentToUpsertLargerThanMaxSize
|
|
121,Location18628
|
|
122,Location18629
|
|
123,Location18533
|
|
124,Location18534
|
|
125,Location18535
|
|
126,Location18536
|
|
127,Location18537
|
|
128,Location28625
|
|
129,Location28646
|
|
130,Location28647
|
|
131,Location28648
|
|
132,Location28650
|
|
133,Location28651
|
|
134,Location28656
|
|
135,Location28657
|
|
136,Location28664
|
|
137,Location51044
|
|
138,Location51045
|
|
139,Location50989
|
|
140,RangeArgumentExpressionArgsOutOfRange
|
|
141,DollarAbsCantTakeLongMinValue
|
|
142,ArrayOperatorElemAtFirstArgMustBeArray
|
|
143,DollarArrayElemAtSecondArgArgMustBeNumeric
|
|
144,DollarArrayElemAtSecondArgArgMustBe32Bit
|
|
145,DollarSqrtGreaterOrEqualToZero
|
|
146,DollarSliceInvalidInput
|
|
147,DollarSliceInvalidTypeSecondArg
|
|
148,DollarSliceInvalidValueSecondArg
|
|
149,DollarSliceInvalidTypeThirdArg
|
|
150,DollarSliceInvalidValueThirdArg
|
|
151,DollarSliceInvalidSignThirdArg
|
|
152,Location28745
|
|
153,Location28746
|
|
154,Location28747
|
|
155,Location28748
|
|
156,Location28749
|
|
157,DollarLogArgumentMustBeNumeric
|
|
158,DollarLogBaseMustBeNumeric
|
|
159,DollarLogNumberMustBePositive
|
|
160,DollarLogBaseMustBeGreaterThanOne
|
|
161,DollarLog10MustBePositiveNumber
|
|
162,DollarPowBaseMustBeNumeric
|
|
163,DollarPowExponentMustBeNumeric
|
|
164,DollarPowExponentInvalidForZeroBase
|
|
165,Location28765
|
|
166,DollarLnMustBePositiveNumber
|
|
167,Location28769
|
|
168,Location28803
|
|
169,Location28808
|
|
170,Location28809
|
|
171,Location28810
|
|
172,Location28811
|
|
173,Location28812
|
|
174,Location28818
|
|
175,Location28822
|
|
176,KeyCannotContainNullByte
|
|
177,Location31002
|
|
178,Location31022
|
|
179,Location31023
|
|
180,Location31024
|
|
181,Location31034
|
|
182,Location31095
|
|
183,Location31109
|
|
184,Location31119
|
|
185,Location31120
|
|
186,Location31138
|
|
187,Location31249
|
|
188,Location31250
|
|
189,Location31253
|
|
190,Location31254
|
|
191,Location31256
|
|
192,Location31271
|
|
193,Location31276
|
|
194,Location31308
|
|
195,Location31325
|
|
196,Location31393
|
|
197,Location31395
|
|
198,Location34435
|
|
199,Location31441
|
|
200,Location34443
|
|
201,Location34444
|
|
202,Location34445
|
|
203,Location34446
|
|
204,Location34447
|
|
205,Location34448
|
|
206,Location34449
|
|
207,Location34450
|
|
208,Location34451
|
|
209,Location34452
|
|
210,Location34453
|
|
211,Location34454
|
|
212,Location34455
|
|
213,Location34460
|
|
214,Location34461
|
|
215,Location34462
|
|
216,Location34463
|
|
217,Location34464
|
|
218,Location34465
|
|
219,Location34466
|
|
220,Location34467
|
|
221,Location34468
|
|
222,Location34471
|
|
223,Location34473
|
|
224,DollarSwitchRequiresObject
|
|
225,DollarSwitchRequiresArrayForBranches
|
|
226,DollarSwitchRequiresObjectForEachBranch
|
|
227,DollarSwitchUnknownArgumentForBranch
|
|
228,DollarSwitchRequiresCaseExpressionForBranch
|
|
229,DollarSwitchRequiresThenExpressionForBranch
|
|
230,DollarSwitchNoMatchingBranchAndNoDefault
|
|
231,DollarSwitchBadArgument
|
|
232,DollarSwitchRequiresAtLeastOneBranch
|
|
233,Location40075
|
|
234,Location40076
|
|
235,Location40077
|
|
236,Location40078
|
|
237,Location40079
|
|
238,Location40080
|
|
239,DollarInRequiresArray
|
|
240,Location40085
|
|
241,Location40086
|
|
242,Location40087
|
|
243,Location40090
|
|
244,Location40091
|
|
245,Location40092
|
|
246,Location40093
|
|
247,Location40094
|
|
248,Location40096
|
|
249,Location40097
|
|
250,Location40100
|
|
251,Location40101
|
|
252,Location40102
|
|
253,Location40103
|
|
254,Location40104
|
|
255,Location40105
|
|
256,Location40147
|
|
257,Location40156
|
|
258,Location40158
|
|
259,Location40160
|
|
260,Location40169
|
|
261,Location40177
|
|
262,Location40185
|
|
263,Location40191
|
|
264,Location40192
|
|
265,Location40193
|
|
266,Location40194
|
|
267,Location40195
|
|
268,Location40196
|
|
269,Location40197
|
|
270,Location40198
|
|
271,Location40199
|
|
272,Location40200
|
|
273,Location40201
|
|
274,Location40202
|
|
275,Location40218
|
|
276,Location40228
|
|
277,Location40234
|
|
278,Location40238
|
|
279,Location40272
|
|
280,Location40319
|
|
281,Location40321
|
|
282,Location40323
|
|
283,UnrecognizedCommand
|
|
284,Location40352
|
|
285,DollarArrayToObjectRequiresArray
|
|
286,DollarObjectToArrayRequiresObject
|
|
287,DollarArrayToObjectAllMustBeObjects
|
|
288,DollarArrayToObjectIncorrectNumberOfKeys
|
|
289,DollarArrayToObjectRequiresObjectWithKAndV
|
|
290,DollarArrayToObjectObjectKeyMustBeString
|
|
291,DollarArrayToObjectArrayKeyMustBeString
|
|
292,DollarArrayToObjectAllMustBeArrays
|
|
293,DollarArrayToObjectIncorrectArrayLength
|
|
294,DollarArrayToObjectBadInputTypeFormat
|
|
295,DollarMergeObjectsInvalidType
|
|
296,Location40414
|
|
297,UnknownBsonField
|
|
298,Location40485
|
|
299,Location40489
|
|
300,Location40515
|
|
301,Location40516
|
|
302,Location40517
|
|
303,Location40518
|
|
304,Location40519
|
|
305,Location40520
|
|
306,Location40521
|
|
307,Location40522
|
|
308,Location40523
|
|
309,Location40524
|
|
310,Location40525
|
|
311,Location40533
|
|
312,Location40535
|
|
313,Location40536
|
|
314,Location40539
|
|
315,Location40540
|
|
316,Location40541
|
|
317,Location40542
|
|
318,Location40600
|
|
319,Location40601
|
|
320,Location40602
|
|
321,Location40603
|
|
322,Location40235
|
|
323,Location40237
|
|
324,ChangeStreamBadResumeToken
|
|
325,Location40684
|
|
326,Location50694
|
|
327,Location50695
|
|
328,Location50696
|
|
329,Location50699
|
|
330,Location50700
|
|
331,Location50723
|
|
332,Location50752
|
|
333,Location50759
|
|
334,Location51024
|
|
335,Location51047
|
|
336,Location51074
|
|
337,Location51075
|
|
338,DollarRoundOverflowInt64
|
|
339,DollarRoundFirstArgMustBeNumeric
|
|
340,DollarRoundPrecisionMustBeIntegral
|
|
341,DollarRoundPrecisionOutOfRange
|
|
342,Location51091
|
|
343,Location51103
|
|
344,Location51104
|
|
345,Location51105
|
|
346,Location51106
|
|
347,Location51107
|
|
348,Location51108
|
|
349,Location51109
|
|
350,Location51110
|
|
351,Location51111
|
|
352,Location51132
|
|
353,Location51134
|
|
354,Location51151
|
|
355,Location51156
|
|
356,Location51178
|
|
357,Location51183
|
|
358,Location51185
|
|
359,Location51186
|
|
360,Location51187
|
|
361,Location51191
|
|
362,Location51246
|
|
363,Location51276
|
|
364,Location51247
|
|
365,Location51743
|
|
366,Location51744
|
|
367,Location51745
|
|
368,Location51746
|
|
369,Location51747
|
|
370,Location51748
|
|
371,Location51749
|
|
372,Location51750
|
|
373,Location51751
|
|
374,Location327391
|
|
375,Location327392
|
|
376,DollarIfNullRequiresAtLeastTwoArgs
|
|
377,DollarRandNonEmptyArgument
|
|
378,IntermediateResultTooLarge
|
|
379,DollarSetFieldRequiresObject
|
|
380,DollarSetFieldUnknownArgument
|
|
381,Location2942500
|
|
382,Location2942501
|
|
383,Location2942502
|
|
384,Location2942503
|
|
385,Location2942504
|
|
386,Location2942505
|
|
387,Location2942506
|
|
388,Location3041701
|
|
389,Location3041702
|
|
390,Location3041703
|
|
391,Location4161102
|
|
392,Location4161103
|
|
393,Location4161104
|
|
394,Location4161105
|
|
395,Location4161106
|
|
396,Location4161107
|
|
397,Location4161108
|
|
398,Location4161109
|
|
399,Location4890500
|
|
400,Location4940400
|
|
401,Location4940401
|
|
402,Location5166400
|
|
403,Location5166401
|
|
404,Location5166402
|
|
405,Location5166403
|
|
406,Location5166404
|
|
407,Location5166405
|
|
408,Location5166406
|
|
409,Location5107200
|
|
410,Location5107201
|
|
411,Location5166301
|
|
412,Location5166302
|
|
413,Location5166303
|
|
414,Location5166304
|
|
415,Location5166305
|
|
416,Location5166307
|
|
417,Location5339900
|
|
418,Location5339901
|
|
419,Location5339902
|
|
420,Location5429413
|
|
421,Location5429414
|
|
422,Location5429513
|
|
423,Location5439007
|
|
424,Location5439008
|
|
425,Location5439009
|
|
426,Location5439010
|
|
427,Location5439012
|
|
428,Location5439013
|
|
429,Location5439014
|
|
430,Location5439015
|
|
431,Location5439016
|
|
432,Location5439017
|
|
433,Location5439018
|
|
434,Location5626500
|
|
435,Location5654600
|
|
436,Location5654601
|
|
437,Location5654602
|
|
438,Location5687301
|
|
439,Location5687302
|
|
440,Location5687400
|
|
441,Location5687401
|
|
442,Location5746102
|
|
443,Location5787801
|
|
444,Location5787900
|
|
445,Location5787901
|
|
446,Location5787902
|
|
447,Location5787903
|
|
448,Location5787906
|
|
449,Location5787907
|
|
450,Location5787908
|
|
451,Location5788200
|
|
452,Location5858203
|
|
453,Location5976500
|
|
454,Location5371601
|
|
455,Location5371602
|
|
456,Location5371603
|
|
457,DocumentFailedValidation
|
|
458,Location605001
|
|
459,Location6050106
|
|
460,Location16990
|
|
461,Location13111
|
|
462,Location5788001
|
|
463,Location5788002
|
|
464,Location5788003
|
|
465,Location5788004
|
|
466,Location5788005
|
|
467,Location5733201
|
|
468,Location5733401
|
|
469,Location5733402
|
|
470,Location5733403
|
|
471,Location5733406
|
|
472,Location5733408
|
|
473,Location5733409
|
|
474,Location5876900
|
|
475,Location5897900
|
|
476,Location5946802
|
|
477,Location6007200
|
|
478,Location6053600
|
|
479,Location6586400
|
|
480,Location8993000
|
|
481,Location5423900
|
|
482,Location5423901
|
|
483,Location5423902
|
|
484,Location5490710
|
|
485,Location5624900
|
|
486,Location5624901
|
|
487,Location6050202
|
|
488,Location6050204
|
|
489,Location5788604
|
|
490,Location31170
|
|
491,Location31465
|
|
492,Location40181
|
|
493,InvalidLength
|
|
494,Location15998
|
|
495,Location40229
|
|
496,UserCountLimitExceeded
|
|
497,Location55
|
|
498,Location40236
|
|
499,Location17053
|
|
500,Location7429703
|
|
501,Location7436100
|
|
502,Location7750301
|
|
503,Location7750302
|
|
504,Location7750303
|
|
505,Location51003
|
|
506,Location7749501
|
|
507,Location5860402
|
|
508,Location7555701
|
|
509,Location7555702
|
|
510,Location3041704
|
|
511,Location4341107
|
|
512,InsufficientPrivilege
|
|
513,NotWritablePrimary
|
|
514,Location40239
|
|
515,Location40240
|
|
516,Location40241
|
|
517,Location40242
|
|
518,Location40243
|
|
519,Location40244
|
|
520,Location40245
|
|
521,Location40246
|
|
522,Location40257
|
|
523,Location40258
|
|
524,Location40260
|
|
525,Location40261
|
|
526,CursorInUse,
|
|
527,Location13103
|
|
528,Location17385
|
|
529,Location31319
|
|
530,Location31320
|
|
531,Location31321 |