Files
documentdb/error_mappings.csv
Parag Jain b650a1d1c9 Merged PR 1743315: [Compat] Fixing output pipeline namespace validations
### 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 -->
2025-07-23 15:56:08 +08:00

532 lines
12 KiB
CSV

ErrorMapping,ErrorName
1,InternalError
2,BadValue
5,GraphContainsCycle
9,FailedToParse
14,TypeMismatch
15,Overflow
16,InvalidLength
20,IllegalOperation
23,AlreadyInitialized
26,NamespaceNotFound
27,IndexNotFound
28,PathNotViable
31,RoleNotFound
34,CannotBackfillArray
40,ConflictingUpdateOperators
43,CursorNotFound
48,NamespaceExists
52,DollarPrefixedFieldName
53,CanNotBeTypeArray
54,NotSingleValueField
55,Location55
56,EmptyFieldName
57,DottedFieldName
61,ShardKeyNotFound
66,ImmutableField
67,CannotCreateIndex
68,IndexAlreadyExists
72,InvalidOptions
73,InvalidNamespace
85,IndexOptionsConflict
86,IndexKeySpecsConflict
111,NotExactValueField
115,CommandNotSupported
118,NamespaceNotSharded
121,DocumentFailedValidation
143,CursorInUse
146,ExceededMemoryLimit
159,DurationOverflow
165,ViewDepthLimitExceeded
166,CommandNotSupportedOnView
167,OptionNotSupportedOnView
181,AmbiguousIndexKeyPattern
197,InvalidIndexSpecificationOption
224,QueryFeatureNotAllowed
232,MaxSubPipelineDepthExceeded
241,ConversionFailure
263,OperationNotSupportedInTransaction
276,IndexBuildAborted
291,UnableToFindIndex
361,CollectionUUIDMismatch
8000,UserCountLimitExceeded
10065,Location10065
10107,NotWritablePrimary
10334,BsonObjectTooLarge
11000,DuplicateKey
12587,BackgroundOperationInProgressForNamespace
13026,Location13026
13027,Location13027
13068,Location13068
13103,Location13103
13111,Location13111
13113,MergeStageNoMatchingDocument
13297,DbAlreadyExists
13548,Location13548
15947,Location15947
15952,Location15952
15955,Location15955
15957,Location15957
15958,Location15958
15959,Location15959
15972,Location15972
15976,Location15976
15981,Location15981
15998,Location15998
16004,Location16004
16006,Location16006
16007,Location16007
16020,Location16020
16034,Location16034
16035,Location16035
16410,Location16410
16411,Location16411
16433,Location16433
16554,DollarAddNumericOrDateTypes
16610,DollarModByZeroProhibited
16611,DollarModOnlyNumeric
16612,DollarAddOnlyOneDate
16702,Location16702
16747,Location16747
16748,Location16748
16749,Location16749
16755,Location16755
16764,Location16764
16766,HashedIndexDoNotSupportArrayValues
16800,Location16800
16801,Location16801
16804,Location16804
16874,Location16874
16875,Location16875
16876,Location16876
16878,Location16878
16879,Location16879
16880,Location16880
16882,Location16882
16883,Location16883
16990,Location16990
16994,Location16994
17040,Location17040
17041,Location17041
17042,Location17042
17043,Location17043
17044,Location17044
17045,Location17045
17046,Location17046
17047,Location17047
17048,Location17048
17049,Location17049
17053,Location17053
17080,DollarCondMissingIfParameter
17081,DollarCondMissingThenParameter
17082,DollarCondMissingElseParameter
17083,DollarCondBadParameter
17124,DollarSizeRequiresArray
17194,ExactlyOneTextIndex
17261,Location17261
17276,Location17276
17308,Location17308
17310,Location17310
17385,Location17385
17419,DocumentAfterUpdateLargerThanMaxSize
17420,DocumentToUpsertLargerThanMaxSize
18533,Location18533
18534,Location18534
18535,Location18535
18536,Location18536
18537,Location18537
18628,Location18628
18629,Location18629
28625,Location28625
28646,Location28646
28647,Location28647
28648,Location28648
28650,Location28650
28651,Location28651
28656,Location28656
28657,Location28657
28664,Location28664
28667,RangeArgumentExpressionArgsOutOfRange
28680,DollarAbsCantTakeLongMinValue
28689,ArrayOperatorElemAtFirstArgMustBeArray
28690,DollarArrayElemAtSecondArgArgMustBeNumeric
28691,DollarArrayElemAtSecondArgArgMustBe32Bit
28714,DollarSqrtGreaterOrEqualToZero
28724,DollarSliceInvalidInput
28725,DollarSliceInvalidTypeSecondArg
28726,DollarSliceInvalidValueSecondArg
28727,DollarSliceInvalidTypeThirdArg
28728,DollarSliceInvalidValueThirdArg
28729,DollarSliceInvalidSignThirdArg
28745,Location28745
28746,Location28746
28747,Location28747
28748,Location28748
28749,Location28749
28756,DollarLogArgumentMustBeNumeric
28757,DollarLogBaseMustBeNumeric
28758,DollarLogNumberMustBePositive
28759,DollarLogBaseMustBeGreaterThanOne
28761,DollarLog10MustBePositiveNumber
28762,DollarPowBaseMustBeNumeric
28763,DollarPowExponentMustBeNumeric
28764,DollarPowExponentInvalidForZeroBase
28765,Location28765
28766,DollarLnMustBePositiveNumber
28769,Location28769
28803,Location28803
28808,Location28808
28809,Location28809
28810,Location28810
28811,Location28811
28812,Location28812
28818,Location28818
28822,Location28822
31002,Location31002
31022,Location31022
31023,Location31023
31024,Location31024
31032,KeyCannotContainNullByte
31034,Location31034
31095,Location31095
31109,Location31109
31119,Location31119
31120,Location31120
31138,Location31138
31170,Location31170
31249,Location31249
31250,Location31250
31253,Location31253
31254,Location31254
31256,Location31256
31271,Location31271
31276,Location31276
31308,Location31308
31319,Location31319
31320,Location31320
31321,Location31321
31325,Location31325
31393,Location31393
31395,Location31395
31441,Location31441
31465,Location31465
34435,Location34435
34443,Location34443
34444,Location34444
34445,Location34445
34446,Location34446
34447,Location34447
34448,Location34448
34449,Location34449
34450,Location34450
34451,Location34451
34452,Location34452
34453,Location34453
34454,Location34454
34455,Location34455
34460,Location34460
34461,Location34461
34462,Location34462
34463,Location34463
34464,Location34464
34465,Location34465
34466,Location34466
34467,Location34467
34468,Location34468
34471,Location34471
34473,Location34473
40060,DollarSwitchRequiresObject
40061,DollarSwitchRequiresArrayForBranches
40062,DollarSwitchRequiresObjectForEachBranch
40063,DollarSwitchUnknownArgumentForBranch
40064,DollarSwitchRequiresCaseExpressionForBranch
40065,DollarSwitchRequiresThenExpressionForBranch
40066,DollarSwitchNoMatchingBranchAndNoDefault
40067,DollarSwitchBadArgument
40068,DollarSwitchRequiresAtLeastOneBranch
40075,Location40075
40076,Location40076
40077,Location40077
40078,Location40078
40079,Location40079
40080,Location40080
40081,DollarInRequiresArray
40085,Location40085
40086,Location40086
40087,Location40087
40090,Location40090
40091,Location40091
40092,Location40092
40093,Location40093
40094,Location40094
40096,Location40096
40097,Location40097
40100,Location40100
40101,Location40101
40102,Location40102
40103,Location40103
40104,Location40104
40105,Location40105
40147,Location40147
40156,Location40156
40158,Location40158
40160,Location40160
40169,Location40169
40177,Location40177
40181,Location40181
40185,Location40185
40191,Location40191
40192,Location40192
40193,Location40193
40194,Location40194
40195,Location40195
40196,Location40196
40197,Location40197
40198,Location40198
40199,Location40199
40200,Location40200
40201,Location40201
40202,Location40202
40218,Location40218
40228,Location40228
40229,Location40229
40234,Location40234
40235,Location40235
40236,Location40236
40237,Location40237
40238,Location40238
40239,Location40239
40240,Location40240
40241,Location40241
40242,Location40242
40243,Location40243
40244,Location40244
40245,Location40245
40246,Location40246
40257,Location40257
40258,Location40258
40260,Location40260
40261,Location40261
40272,Location40272
40319,Location40319
40321,Location40321
40323,Location40323
40324,UnrecognizedCommand
40352,Location40352
40386,DollarArrayToObjectRequiresArray
40390,DollarObjectToArrayRequiresObject
40391,DollarArrayToObjectAllMustBeObjects
40392,DollarArrayToObjectIncorrectNumberOfKeys
40393,DollarArrayToObjectRequiresObjectWithKAndV
40394,DollarArrayToObjectObjectKeyMustBeString
40395,DollarArrayToObjectArrayKeyMustBeString
40396,DollarArrayToObjectAllMustBeArrays
40397,DollarArrayToObjectIncorrectArrayLength
40398,DollarArrayToObjectBadInputTypeFormat
40400,DollarMergeObjectsInvalidType
40414,Location40414
40415,UnknownBsonField
40485,Location40485
40489,Location40489
40515,Location40515
40516,Location40516
40517,Location40517
40518,Location40518
40519,Location40519
40520,Location40520
40521,Location40521
40522,Location40522
40523,Location40523
40524,Location40524
40525,Location40525
40533,Location40533
40535,Location40535
40536,Location40536
40539,Location40539
40540,Location40540
40541,Location40541
40542,Location40542
40600,Location40600
40601,Location40601
40602,Location40602
40603,Location40603
40647,ChangeStreamBadResumeToken
40684,Location40684
42501,InsufficientPrivilege
50694,Location50694
50695,Location50695
50696,Location50696
50699,Location50699
50700,Location50700
50723,Location50723
50752,Location50752
50759,Location50759
50989,Location50989
51003,Location51003
51024,Location51024
51044,Location51044
51045,Location51045
51047,Location51047
51074,Location51074
51075,Location51075
51080,DollarRoundOverflowInt64
51081,DollarRoundFirstArgMustBeNumeric
51082,DollarRoundPrecisionMustBeIntegral
51083,DollarRoundPrecisionOutOfRange
51091,Location51091
51103,Location51103
51104,Location51104
51105,Location51105
51106,Location51106
51107,Location51107
51108,Location51108
51109,Location51109
51110,Location51110
51111,Location51111
51132,Location51132
51134,Location51134
51151,Location51151
51156,Location51156
51178,Location51178
51183,Location51183
51185,Location51185
51186,Location51186
51187,Location51187
51191,Location51191
51246,Location51246
51247,Location51247
51276,Location51276
51743,Location51743
51744,Location51744
51745,Location51745
51746,Location51746
51747,Location51747
51748,Location51748
51749,Location51749
51750,Location51750
51751,Location51751
327391,Location327391
327392,Location327392
605001,Location605001
1257300,DollarIfNullRequiresAtLeastTwoArgs
2942500,Location2942500
2942501,Location2942501
2942502,Location2942502
2942503,Location2942503
2942504,Location2942504
2942505,Location2942505
2942506,Location2942506
3040501,DollarRandNonEmptyArgument
3041701,Location3041701
3041702,Location3041702
3041703,Location3041703
3041704,Location3041704
4031700,IntermediateResultTooLarge
4161100,DollarSetFieldRequiresObject
4161101,DollarSetFieldUnknownArgument
4161102,Location4161102
4161103,Location4161103
4161104,Location4161104
4161105,Location4161105
4161106,Location4161106
4161107,Location4161107
4161108,Location4161108
4161109,Location4161109
4341107,Location4341107
4890500,Location4890500
4940400,Location4940400
4940401,Location4940401
5107200,Location5107200
5107201,Location5107201
5166301,Location5166301
5166302,Location5166302
5166303,Location5166303
5166304,Location5166304
5166305,Location5166305
5166307,Location5166307
5166400,Location5166400
5166401,Location5166401
5166402,Location5166402
5166403,Location5166403
5166404,Location5166404
5166405,Location5166405
5166406,Location5166406
5339900,Location5339900
5339901,Location5339901
5339902,Location5339902
5371601,Location5371601
5371602,Location5371602
5371603,Location5371603
5423900,Location5423900
5423901,Location5423901
5423902,Location5423902
5429413,Location5429413
5429414,Location5429414
5429513,Location5429513
5439007,Location5439007
5439008,Location5439008
5439009,Location5439009
5439010,Location5439010
5439012,Location5439012
5439013,Location5439013
5439014,Location5439014
5439015,Location5439015
5439016,Location5439016
5439017,Location5439017
5439018,Location5439018
5490710,Location5490710
5624900,Location5624900
5624901,Location5624901
5626500,Location5626500
5654600,Location5654600
5654601,Location5654601
5654602,Location5654602
5687301,Location5687301
5687302,Location5687302
5687400,Location5687400
5687401,Location5687401
5733201,Location5733201
5733401,Location5733401
5733402,Location5733402
5733403,Location5733403
5733406,Location5733406
5733408,Location5733408
5733409,Location5733409
5746102,Location5746102
5787801,Location5787801
5787900,Location5787900
5787901,Location5787901
5787902,Location5787902
5787903,Location5787903
5787906,Location5787906
5787907,Location5787907
5787908,Location5787908
5788001,Location5788001
5788002,Location5788002
5788003,Location5788003
5788004,Location5788004
5788005,Location5788005
5788200,Location5788200
5788604,Location5788604
5858203,Location5858203
5860402,Location5860402
5876900,Location5876900
5897900,Location5897900
5946802,Location5946802
5976500,Location5976500
6007200,Location6007200
6045000,Location6045000
6050106,Location6050106
6050202,Location6050202
6050204,Location6050204
6053600,Location6053600
6586400,Location6586400
7429703,Location7429703
7436100,Location7436100
7555701,Location7555701
7555702,Location7555702
7749501,Location7749501
7750301,Location7750301
7750302,Location7750302
7750303,Location7750303
8993000,Location8993000