{"id":"bdbb381d1195aa12","repo":"jackc/pgx","slug":"cannot-scan-null-into-t-bdbb38","errorCode":null,"errorMessage":"cannot scan NULL into %T","messagePattern":"cannot scan NULL into %T","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pgtype/float8.go","lineNumber":245,"sourceCode":"\tcase TextFormatCode:\n\t\tswitch target.(type) {\n\t\tcase *float64:\n\t\t\treturn scanPlanTextAnyToFloat64{}\n\t\tcase Float64Scanner:\n\t\t\treturn scanPlanTextAnyToFloat64Scanner{}\n\t\tcase Int64Scanner:\n\t\t\treturn scanPlanTextAnyToInt64Scanner{}\n\t\t}\n\t}\n\n\treturn nil\n}\n\ntype scanPlanBinaryFloat8ToFloat64 struct{}\n\nfunc (scanPlanBinaryFloat8ToFloat64) 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\traw, err := pgio.Uint64Exact(src)\n\tif err != nil {\n\t\treturn fmt.Errorf(\"float8: %w\", err)\n\t}\n\n\tn := int64(raw)\n\tf := (dst).(*float64)\n\t*f = math.Float64frombits(uint64(n))\n\n\treturn nil\n}\n\ntype scanPlanBinaryFloat8ToFloat64Scanner struct{}\n\nfunc (scanPlanBinaryFloat8ToFloat64Scanner) Scan(src []byte, dst any) error {\n\ts := (dst).(Float64Scanner)","sourceCodeStart":227,"sourceCodeEnd":263,"githubUrl":"https://github.com/jackc/pgx/blob/ec1a0befd22592cffffdeeb0a50311b506372f4c/pgtype/float8.go#L227-L263","documentation":"Error \"cannot scan NULL into %T\" thrown in jackc/pgx.","triggerScenarios":"Thrown at pgtype/float8.go:245 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}