{"id":"db524115efbb9aca","repo":"jackc/pgx","slug":"invalid-length-for-char-v","errorCode":null,"errorMessage":"invalid length for \"char\": %v","messagePattern":"invalid length for \"char\": (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pgtype/qchar.go","lineNumber":83,"sourceCode":"\t\tcase *rune:\n\t\t\treturn scanPlanQcharCodecRune{}\n\t\tcase *string:\n\t\t\treturn scanPlanQcharCodecString{}\n\t\t}\n\t}\n\n\treturn nil\n}\n\ntype scanPlanQcharCodecByte struct{}\n\nfunc (scanPlanQcharCodecByte) Scan(src []byte, dst any) error {\n\tif src == nil {\n\t\treturn fmt.Errorf(\"cannot scan NULL into %T\", dst)\n\t}\n\n\tif len(src) > 1 {\n\t\treturn fmt.Errorf(`invalid length for \"char\": %v`, len(src))\n\t}\n\n\tb := dst.(*byte)\n\t// In the text format the zero value is returned as a zero byte value instead of 0\n\tif len(src) == 0 {\n\t\t*b = 0\n\t} else {\n\t\t*b = src[0]\n\t}\n\n\treturn nil\n}\n\ntype scanPlanQcharCodecRune struct{}\n\nfunc (scanPlanQcharCodecRune) Scan(src []byte, dst any) error {\n\tif src == nil {\n\t\treturn fmt.Errorf(\"cannot scan NULL into %T\", dst)","sourceCodeStart":65,"sourceCodeEnd":101,"githubUrl":"https://github.com/jackc/pgx/blob/ec1a0befd22592cffffdeeb0a50311b506372f4c/pgtype/qchar.go#L65-L101","documentation":"Error \"invalid length for \"char\": %v\" thrown in jackc/pgx.","triggerScenarios":"Thrown at pgtype/qchar.go:83 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}