{"id":"b7a448d4a13b1fe4","repo":"jackc/pgx","slug":"unknown-upper-bound-type-v","errorCode":null,"errorMessage":"unknown upper bound type %v","messagePattern":"unknown upper bound type (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pgtype/range_codec.go","lineNumber":231,"sourceCode":"\t\t\treturn nil, fmt.Errorf(\"cannot encode %v as element of range\", upper)\n\t\t}\n\n\t\tbuf, err = upperPlan.Encode(upper, buf)\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"failed to encode %v as element of range: %w\", upper, err)\n\t\t}\n\t\tif buf == nil {\n\t\t\treturn nil, fmt.Errorf(\"Upper cannot be NULL unless UpperType is Unbounded\")\n\t\t}\n\t}\n\n\tswitch upperType {\n\tcase Exclusive, Unbounded:\n\t\tbuf = append(buf, ')')\n\tcase Inclusive:\n\t\tbuf = append(buf, ']')\n\tdefault:\n\t\treturn nil, fmt.Errorf(\"unknown upper bound type %v\", upperType)\n\t}\n\n\treturn buf, nil\n}\n\nfunc (c *RangeCodec) PlanScan(m *Map, oid uint32, format int16, target any) ScanPlan {\n\tswitch format {\n\tcase BinaryFormatCode:\n\t\tif _, ok := target.(RangeScanner); ok {\n\t\t\treturn &scanPlanBinaryRangeToRangeScanner{rc: c, m: m}\n\t\t}\n\tcase TextFormatCode:\n\t\tif _, ok := target.(RangeScanner); ok {\n\t\t\treturn &scanPlanTextRangeToRangeScanner{rc: c, m: m}\n\t\t}\n\t}\n\n\treturn nil","sourceCodeStart":213,"sourceCodeEnd":249,"githubUrl":"https://github.com/jackc/pgx/blob/ec1a0befd22592cffffdeeb0a50311b506372f4c/pgtype/range_codec.go#L213-L249","documentation":"Error \"unknown upper bound type %v\" thrown in jackc/pgx.","triggerScenarios":"Thrown at pgtype/range_codec.go:231 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"ec1a0befd22592cffffdeeb0a50311b506372f4c","analyzedAt":"2026-08-04T22:52:11.263Z","schemaVersion":2}