From c1bb1315e57f39a1ee6d6d7f43e506944ece879b Mon Sep 17 00:00:00 2001 From: "takeshi.nakata" Date: Sat, 4 Apr 2020 11:48:26 +0900 Subject: [PATCH 1/2] fix UPDATE BYTES to default values --- internal/hammer/ddl.go | 4 +++- internal/hammer/ddl_test.go | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/internal/hammer/ddl.go b/internal/hammer/ddl.go index b607945..0340ce5 100644 --- a/internal/hammer/ddl.go +++ b/internal/hammer/ddl.go @@ -57,8 +57,10 @@ func (u Update) defaultValue() string { return "false" case spansql.Int64, spansql.Float64: return "0" - case spansql.String, spansql.Bytes: + case spansql.String: return "''" + case spansql.Bytes: + return "CAST('' AS BYTES)" case spansql.Date: return "'0001-01-01'" case spansql.Timestamp: diff --git a/internal/hammer/ddl_test.go b/internal/hammer/ddl_test.go index f629448..4f977f3 100644 --- a/internal/hammer/ddl_test.go +++ b/internal/hammer/ddl_test.go @@ -60,6 +60,10 @@ func TestUpdate_SQL(t *testing.T) { d: spansql.ColumnDef{Name: "test_column", Type: spansql.Type{Base: spansql.String}}, s: "UPDATE test_table SET test_column = '' WHERE test_column IS NULL", }, + { + d: spansql.ColumnDef{Name: "test_column", Type: spansql.Type{Base: spansql.Bytes}}, + s: "UPDATE test_table SET test_column = CAST('' AS BYTES) WHERE test_column IS NULL", + }, { d: spansql.ColumnDef{Name: "test_column", Type: spansql.Type{Base: spansql.String, Array: true}}, s: "UPDATE test_table SET test_column = [] WHERE test_column IS NULL", From a6873e810727624b557b6b151c88e5cae2fa8ed6 Mon Sep 17 00:00:00 2001 From: "takeshi.nakata" Date: Tue, 7 Apr 2020 18:25:40 +0900 Subject: [PATCH 2/2] use byte literal --- internal/hammer/ddl.go | 2 +- internal/hammer/ddl_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/hammer/ddl.go b/internal/hammer/ddl.go index 0340ce5..4539f27 100644 --- a/internal/hammer/ddl.go +++ b/internal/hammer/ddl.go @@ -60,7 +60,7 @@ func (u Update) defaultValue() string { case spansql.String: return "''" case spansql.Bytes: - return "CAST('' AS BYTES)" + return "b''" case spansql.Date: return "'0001-01-01'" case spansql.Timestamp: diff --git a/internal/hammer/ddl_test.go b/internal/hammer/ddl_test.go index 4f977f3..b167fc6 100644 --- a/internal/hammer/ddl_test.go +++ b/internal/hammer/ddl_test.go @@ -62,7 +62,7 @@ func TestUpdate_SQL(t *testing.T) { }, { d: spansql.ColumnDef{Name: "test_column", Type: spansql.Type{Base: spansql.Bytes}}, - s: "UPDATE test_table SET test_column = CAST('' AS BYTES) WHERE test_column IS NULL", + s: "UPDATE test_table SET test_column = b'' WHERE test_column IS NULL", }, { d: spansql.ColumnDef{Name: "test_column", Type: spansql.Type{Base: spansql.String, Array: true}},