diff --git a/spanner/request_id_header.go b/spanner/request_id_header.go index 51fa93af8c1a..ec367260a8e2 100644 --- a/spanner/request_id_header.go +++ b/spanner/request_id_header.go @@ -46,7 +46,7 @@ func init() { if err != nil { panic(err) } - randIDForProcess = r64.String() + randIDForProcess = fmt.Sprintf("%016x", r64.Uint64()) } // Please bump this version whenever this implementation diff --git a/spanner/request_id_header_test.go b/spanner/request_id_header_test.go index 84d9f5c39232..5afc68f2c98c 100644 --- a/spanner/request_id_header_test.go +++ b/spanner/request_id_header_test.go @@ -16,6 +16,7 @@ package spanner import ( "context" + "encoding/hex" "encoding/json" "fmt" "math" @@ -1925,3 +1926,13 @@ func TestRequestIDHeader_SingleUseReadOnly_ExecuteStreamingSql_UnavailableDuring t.Fatalf("RequestID streaming segments mismatch: got - want +\n%s", diff) } } + +func TestRequestID_randIDForProcessIsHexadecimal(t *testing.T) { + decoded, err := hex.DecodeString(randIDForProcess) + if err != nil { + t.Fatal(err) + } + if len(decoded) == 0 { + t.Fatal("Expected a non-empty decoded result") + } +}