From 44732401a33458a21cf1665355b667d07d09e09a Mon Sep 17 00:00:00 2001 From: MyonKeminta <9948422+MyonKeminta@users.noreply.github.com> Date: Sat, 14 Aug 2021 14:25:58 +0800 Subject: [PATCH 01/27] util: Fix some incorrect usages of the assert.Equal in testify (#27207) --- util/deadlockhistory/deadlock_history_test.go | 196 +++++++++--------- util/keydecoder/keydecoder_test.go | 136 ++++++------ 2 files changed, 166 insertions(+), 166 deletions(-) diff --git a/util/deadlockhistory/deadlock_history_test.go b/util/deadlockhistory/deadlock_history_test.go index 88e1db0f6b631..63d4e05ae01fd 100644 --- a/util/deadlockhistory/deadlock_history_test.go +++ b/util/deadlockhistory/deadlock_history_test.go @@ -50,34 +50,34 @@ func getAllDatum(d *DeadlockHistory, columns []*model.ColumnInfo) [][]types.Datu func TestDeadlockHistoryCollection(t *testing.T) { h := NewDeadlockHistory(1) - assert.Equal(t, len(h.GetAll()), 0) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 0) + assert.Equal(t, 0, len(h.GetAll())) + assert.Equal(t, 0, h.head) + assert.Equal(t, 0, h.size) rec1 := &DeadlockRecord{ OccurTime: time.Now(), } h.Push(rec1) res := h.GetAll() - assert.Equal(t, len(res), 1) - assert.Equal(t, res[0], rec1) // Checking pointer equals is ok. - assert.Equal(t, res[0].ID, uint64(1)) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 1) + assert.Equal(t, 1, len(res)) + assert.Equal(t, rec1, res[0]) // Checking pointer equals is ok. + assert.Equal(t, uint64(1), res[0].ID) + assert.Equal(t, 0, h.head) + assert.Equal(t, 1, h.size) rec2 := &DeadlockRecord{ OccurTime: time.Now(), } h.Push(rec2) res = h.GetAll() - assert.Equal(t, len(res), 1) - assert.Equal(t, res[0], rec2) - assert.Equal(t, res[0].ID, uint64(2)) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 1) + assert.Equal(t, 1, len(res)) + assert.Equal(t, rec2, res[0]) + assert.Equal(t, uint64(2), res[0].ID) + assert.Equal(t, 0, h.head) + assert.Equal(t, 1, h.size) h.Clear() - assert.Equal(t, len(h.GetAll()), 0) + assert.Equal(t, 0, len(h.GetAll())) h = NewDeadlockHistory(3) rec1 = &DeadlockRecord{ @@ -85,39 +85,39 @@ func TestDeadlockHistoryCollection(t *testing.T) { } h.Push(rec1) res = h.GetAll() - assert.Equal(t, len(res), 1) - assert.Equal(t, res[0], rec1) // Checking pointer equals is ok. - assert.Equal(t, res[0].ID, uint64(1)) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 1) + assert.Equal(t, 1, len(res)) + assert.Equal(t, rec1, res[0]) // Checking pointer equals is ok. + assert.Equal(t, uint64(1), res[0].ID) + assert.Equal(t, 0, h.head) + assert.Equal(t, 1, h.size) rec2 = &DeadlockRecord{ OccurTime: time.Now(), } h.Push(rec2) res = h.GetAll() - assert.Equal(t, len(res), 2) - assert.Equal(t, res[0], rec1) - assert.Equal(t, res[0].ID, uint64(1)) - assert.Equal(t, res[1], rec2) - assert.Equal(t, res[1].ID, uint64(2)) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 2) + assert.Equal(t, 2, len(res)) + assert.Equal(t, rec1, res[0]) + assert.Equal(t, uint64(1), res[0].ID) + assert.Equal(t, rec2, res[1]) + assert.Equal(t, uint64(2), res[1].ID) + assert.Equal(t, 0, h.head) + assert.Equal(t, 2, h.size) rec3 := &DeadlockRecord{ OccurTime: time.Now(), } h.Push(rec3) res = h.GetAll() - assert.Equal(t, len(res), 3) - assert.Equal(t, res[0], rec1) - assert.Equal(t, res[0].ID, uint64(1)) - assert.Equal(t, res[1], rec2) - assert.Equal(t, res[1].ID, uint64(2)) - assert.Equal(t, res[2], rec3) - assert.Equal(t, res[2].ID, uint64(3)) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 3) + assert.Equal(t, 3, len(res)) + assert.Equal(t, rec1, res[0]) + assert.Equal(t, uint64(1), res[0].ID) + assert.Equal(t, rec2, res[1]) + assert.Equal(t, uint64(2), res[1].ID) + assert.Equal(t, rec3, res[2]) + assert.Equal(t, uint64(3), res[2].ID) + assert.Equal(t, 0, h.head) + assert.Equal(t, 3, h.size) // Continuously pushing items to check the correctness of the deque expectedItems := []*DeadlockRecord{rec1, rec2, rec3} @@ -136,17 +136,17 @@ func TestDeadlockHistoryCollection(t *testing.T) { expectedDequeHead = (expectedDequeHead + 1) % 3 res = h.GetAll() - assert.Equal(t, len(res), 3) + assert.Equal(t, 3, len(res)) for idx, item := range res { - assert.Equal(t, item, expectedItems[idx]) - assert.Equal(t, item.ID, expectedIDs[idx]) + assert.Equal(t, expectedItems[idx], item) + assert.Equal(t, expectedIDs[idx], item.ID) } - assert.Equal(t, h.head, expectedDequeHead) - assert.Equal(t, h.size, 3) + assert.Equal(t, expectedDequeHead, h.head) + assert.Equal(t, 3, h.size) } h.Clear() - assert.Equal(t, len(h.GetAll()), 0) + assert.Equal(t, 0, len(h.GetAll())) } func TestGetDatum(t *testing.T) { @@ -208,9 +208,9 @@ func TestGetDatum(t *testing.T) { } res := getAllDatum(h, dummyColumnInfo) - assert.Equal(t, len(res), 4) + assert.Equal(t, 4, len(res)) for _, row := range res { - assert.Equal(t, len(row), 9) + assert.Equal(t, 9, len(row)) } toGoTime := func(d types.Datum) time.Time { @@ -221,35 +221,35 @@ func TestGetDatum(t *testing.T) { return tm } - assert.Equal(t, res[0][0].GetValue(), uint64(1)) // ID - assert.Equal(t, toGoTime(res[0][1]), time1) // OCCUR_TIME - assert.Equal(t, res[0][2].GetValue(), int64(0)) // RETRYABLE - assert.Equal(t, res[0][3].GetValue(), uint64(101)) // TRY_LOCK_TRX_ID - assert.Equal(t, res[0][4].GetValue(), "sql1") // SQL_DIGEST - assert.Equal(t, res[0][5].GetValue(), nil) // SQL_DIGEST_TEXT - assert.Equal(t, res[0][6].GetValue(), "6B31") // KEY - assert.Equal(t, res[0][8].GetValue(), uint64(102)) // TRX_HOLDING_LOCK - - assert.Equal(t, res[1][0].GetValue(), uint64(1)) // ID - assert.Equal(t, toGoTime(res[1][1]), time1) // OCCUR_TIME - assert.Equal(t, res[1][2].GetValue(), int64(0)) // RETRYABLE - assert.Equal(t, res[1][3].GetValue(), uint64(102)) // TRY_LOCK_TRX_ID - assert.Equal(t, res[1][4].GetValue(), nil) // SQL_DIGEST - assert.Equal(t, res[1][5].GetValue(), nil) // SQL_DIGEST_TEXT - assert.Equal(t, res[1][6].GetValue(), nil) // KEY - assert.Equal(t, res[1][8].GetValue(), uint64(101)) // TRX_HOLDING_LOCK - - assert.Equal(t, res[2][0].GetValue(), uint64(2)) // ID - assert.Equal(t, toGoTime(res[2][1]), time2) // OCCUR_TIME - assert.Equal(t, res[2][2].GetValue(), int64(1)) // RETRYABLE - assert.Equal(t, res[2][3].GetValue(), uint64(201)) // TRY_LOCK_TRX_ID - assert.Equal(t, res[2][8].GetValue(), uint64(202)) // TRX_HOLDING_LOCK - - assert.Equal(t, res[3][0].GetValue(), uint64(2)) // ID - assert.Equal(t, toGoTime(res[3][1]), time2) // OCCUR_TIME - assert.Equal(t, res[3][2].GetValue(), int64(1)) // RETRYABLE - assert.Equal(t, res[3][3].GetValue(), uint64(202)) // TRY_LOCK_TRX_ID - assert.Equal(t, res[3][8].GetValue(), uint64(201)) // TRX_HOLDING_LOCK + assert.Equal(t, uint64(1), res[0][0].GetValue()) // ID + assert.Equal(t, time1, toGoTime(res[0][1])) // OCCUR_TIME + assert.Equal(t, int64(0), res[0][2].GetValue()) // RETRYABLE + assert.Equal(t, uint64(101), res[0][3].GetValue()) // TRY_LOCK_TRX_ID + assert.Equal(t, "sql1", res[0][4].GetValue()) // SQL_DIGEST + assert.Equal(t, nil, res[0][5].GetValue()) // SQL_DIGEST_TEXT + assert.Equal(t, "6B31", res[0][6].GetValue()) // KEY + assert.Equal(t, uint64(102), res[0][8].GetValue()) // TRX_HOLDING_LOCK + + assert.Equal(t, uint64(1), res[1][0].GetValue()) // ID + assert.Equal(t, time1, toGoTime(res[1][1])) // OCCUR_TIME + assert.Equal(t, int64(0), res[1][2].GetValue()) // RETRYABLE + assert.Equal(t, uint64(102), res[1][3].GetValue()) // TRY_LOCK_TRX_ID + assert.Equal(t, nil, res[1][4].GetValue()) // SQL_DIGEST + assert.Equal(t, nil, res[1][5].GetValue()) // SQL_DIGEST_TEXT + assert.Equal(t, nil, res[1][6].GetValue()) // KEY + assert.Equal(t, uint64(101), res[1][8].GetValue()) // TRX_HOLDING_LOCK + + assert.Equal(t, uint64(2), res[2][0].GetValue()) // ID + assert.Equal(t, time2, toGoTime(res[2][1])) // OCCUR_TIME + assert.Equal(t, int64(1), res[2][2].GetValue()) // RETRYABLE + assert.Equal(t, uint64(201), res[2][3].GetValue()) // TRY_LOCK_TRX_ID + assert.Equal(t, uint64(202), res[2][8].GetValue()) // TRX_HOLDING_LOCK + + assert.Equal(t, uint64(2), res[3][0].GetValue()) // ID + assert.Equal(t, time2, toGoTime(res[3][1])) // OCCUR_TIME + assert.Equal(t, int64(1), res[3][2].GetValue()) // RETRYABLE + assert.Equal(t, uint64(202), res[3][3].GetValue()) // TRY_LOCK_TRX_ID + assert.Equal(t, uint64(201), res[3][8].GetValue()) // TRX_HOLDING_LOCK } func TestErrDeadlockToDeadlockRecord(t *testing.T) { @@ -303,7 +303,7 @@ func TestErrDeadlockToDeadlockRecord(t *testing.T) { // The OccurTime is set to time.Now assert.Less(t, time.Since(record.OccurTime), time.Millisecond*5) expectedRecord.OccurTime = record.OccurTime - assert.Equal(t, record, expectedRecord) + assert.Equal(t, expectedRecord, record) } func dummyRecord() *DeadlockRecord { @@ -315,39 +315,39 @@ func TestResize(t *testing.T) { h.Push(dummyRecord()) // id=1 inserted h.Push(dummyRecord()) // id=2 inserted, h.Push(dummyRecord()) // id=3 inserted, id=1 is removed - assert.Equal(t, h.head, 1) - assert.Equal(t, h.size, 2) - assert.Equal(t, len(h.GetAll()), 2) - assert.Equal(t, h.GetAll()[0].ID, uint64(2)) - assert.Equal(t, h.GetAll()[1].ID, uint64(3)) + assert.Equal(t, 1, h.head) + assert.Equal(t, 2, h.size) + assert.Equal(t, 2, len(h.GetAll())) + assert.Equal(t, uint64(2), h.GetAll()[0].ID) + assert.Equal(t, uint64(3), h.GetAll()[1].ID) h.Resize(3) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 2) + assert.Equal(t, 0, h.head) + assert.Equal(t, 2, h.size) h.Push(dummyRecord()) // id=4 inserted - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 3) - assert.Equal(t, len(h.GetAll()), 3) - assert.Equal(t, h.GetAll()[0].ID, uint64(2)) - assert.Equal(t, h.GetAll()[1].ID, uint64(3)) - assert.Equal(t, h.GetAll()[2].ID, uint64(4)) + assert.Equal(t, 0, h.head) + assert.Equal(t, 3, h.size) + assert.Equal(t, 3, len(h.GetAll())) + assert.Equal(t, uint64(2), h.GetAll()[0].ID) + assert.Equal(t, uint64(3), h.GetAll()[1].ID) + assert.Equal(t, uint64(4), h.GetAll()[2].ID) h.Resize(2) // id=2 removed - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 2) - assert.Equal(t, len(h.GetAll()), 2) - assert.Equal(t, h.GetAll()[0].ID, uint64(3)) - assert.Equal(t, h.GetAll()[1].ID, uint64(4)) + assert.Equal(t, 0, h.head) + assert.Equal(t, 2, h.size) + assert.Equal(t, 2, len(h.GetAll())) + assert.Equal(t, uint64(3), h.GetAll()[0].ID) + assert.Equal(t, uint64(4), h.GetAll()[1].ID) h.Resize(0) // all removed - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 0) - assert.Equal(t, len(h.GetAll()), 0) + assert.Equal(t, 0, h.head) + assert.Equal(t, 0, h.size) + assert.Equal(t, 0, len(h.GetAll())) h.Resize(2) - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 0) + assert.Equal(t, 0, h.head) + assert.Equal(t, 0, h.size) h.Push(dummyRecord()) // id=5 inserted - assert.Equal(t, h.head, 0) - assert.Equal(t, h.size, 1) + assert.Equal(t, 0, h.head) + assert.Equal(t, 1, h.size) } diff --git a/util/keydecoder/keydecoder_test.go b/util/keydecoder/keydecoder_test.go index 8fa64049a383c..691f084bbe3b9 100644 --- a/util/keydecoder/keydecoder_test.go +++ b/util/keydecoder/keydecoder_test.go @@ -71,18 +71,18 @@ func TestDecodeKey(t *testing.T) { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }, stubInfoschema) assert.Nil(t, err) - assert.Equal(t, decodedKey.DbID, int64(0)) - assert.Equal(t, decodedKey.DbName, "test") - assert.Equal(t, decodedKey.TableID, int64(1)) - assert.Equal(t, decodedKey.TableName, "table1") - assert.Equal(t, decodedKey.PartitionID, int64(0)) - assert.Equal(t, decodedKey.PartitionName, "") - assert.Equal(t, decodedKey.HandleType, IntHandle) - assert.Equal(t, decodedKey.IsPartitionHandle, false) - assert.Equal(t, decodedKey.HandleValue, "1") + assert.Equal(t, int64(0), decodedKey.DbID) + assert.Equal(t, "test", decodedKey.DbName) + assert.Equal(t, int64(1), decodedKey.TableID) + assert.Equal(t, "table1", decodedKey.TableName) + assert.Equal(t, int64(0), decodedKey.PartitionID) + assert.Equal(t, "", decodedKey.PartitionName) + assert.Equal(t, IntHandle, decodedKey.HandleType) + assert.False(t, decodedKey.IsPartitionHandle) + assert.Equal(t, "1", decodedKey.HandleValue) // These are default values, ie. will be omitted when got marshaled into json - assert.Equal(t, decodedKey.IndexID, int64(0)) - assert.Equal(t, decodedKey.IndexName, "") + assert.Equal(t, int64(0), decodedKey.IndexID) + assert.Equal(t, "", decodedKey.IndexName) assert.Nil(t, decodedKey.IndexValues) ch := testkit.MustNewCommonHandle(t, 100, "abc") @@ -98,18 +98,18 @@ func TestDecodeKey(t *testing.T) { decodedKey, err = DecodeKey(key, stubInfoschema) assert.Nil(t, err) - assert.Equal(t, decodedKey.DbID, int64(0)) - assert.Equal(t, decodedKey.DbName, "test") - assert.Equal(t, decodedKey.TableID, int64(2)) - assert.Equal(t, decodedKey.TableName, "table2") - assert.Equal(t, decodedKey.PartitionID, int64(0)) - assert.Equal(t, decodedKey.PartitionName, "") - assert.Equal(t, decodedKey.HandleType, CommonHandle) - assert.Equal(t, decodedKey.IsPartitionHandle, false) - assert.Equal(t, decodedKey.HandleValue, "{100, abc}") + assert.Equal(t, int64(0), decodedKey.DbID) + assert.Equal(t, "test", decodedKey.DbName) + assert.Equal(t, int64(2), decodedKey.TableID) + assert.Equal(t, "table2", decodedKey.TableName) + assert.Equal(t, int64(0), decodedKey.PartitionID) + assert.Equal(t, "", decodedKey.PartitionName) + assert.Equal(t, CommonHandle, decodedKey.HandleType) + assert.False(t, decodedKey.IsPartitionHandle) + assert.Equal(t, "{100, abc}", decodedKey.HandleValue) // These are default values, ie. will be omitted when got marshaled into json - assert.Equal(t, decodedKey.IndexID, int64(0)) - assert.Equal(t, decodedKey.IndexName, "") + assert.Equal(t, int64(0), decodedKey.IndexID) + assert.Equal(t, "", decodedKey.IndexName) assert.Nil(t, decodedKey.IndexValues) values := types.MakeDatums("abc", 1) @@ -129,37 +129,37 @@ func TestDecodeKey(t *testing.T) { decodedKey, err = DecodeKey(key, stubInfoschema) assert.Nil(t, err) - assert.Equal(t, decodedKey.DbID, int64(0)) - assert.Equal(t, decodedKey.DbName, "test") - assert.Equal(t, decodedKey.TableID, int64(1)) - assert.Equal(t, decodedKey.TableName, "table1") - assert.Equal(t, decodedKey.PartitionID, int64(0)) - assert.Equal(t, decodedKey.PartitionName, "") - assert.Equal(t, decodedKey.IndexID, int64(1)) - assert.Equal(t, decodedKey.IndexName, "index1") - assert.Equal(t, decodedKey.IndexValues, []string{"abc", "1"}) + assert.Equal(t, int64(0), decodedKey.DbID) + assert.Equal(t, "test", decodedKey.DbName) + assert.Equal(t, int64(1), decodedKey.TableID) + assert.Equal(t, "table1", decodedKey.TableName) + assert.Equal(t, int64(0), decodedKey.PartitionID) + assert.Equal(t, "", decodedKey.PartitionName) + assert.Equal(t, int64(1), decodedKey.IndexID) + assert.Equal(t, "index1", decodedKey.IndexName) + assert.Equal(t, []string{"abc", "1"}, decodedKey.IndexValues) // These are default values, ie. will be omitted when got marshaled into json - assert.Equal(t, decodedKey.HandleType, HandleType("")) - assert.Equal(t, decodedKey.HandleValue, "") - assert.Equal(t, decodedKey.IsPartitionHandle, false) + assert.Equal(t, HandleType(""), decodedKey.HandleType) + assert.Equal(t, "", decodedKey.HandleValue) + assert.False(t, decodedKey.IsPartitionHandle) // Row key in a partitioned table. key = []byte("t\x80\x00\x00\x00\x00\x00\x00\x05_r\x80\x00\x00\x00\x00\x00\x00\x0a") decodedKey, err = DecodeKey(key, stubInfoschema) assert.Nil(t, err) - assert.Equal(t, decodedKey.DbID, int64(0)) - assert.Equal(t, decodedKey.DbName, "test") - assert.Equal(t, decodedKey.TableID, int64(3)) - assert.Equal(t, decodedKey.TableName, "table3") - assert.Equal(t, decodedKey.PartitionID, int64(5)) - assert.Equal(t, decodedKey.PartitionName, "p0") - assert.Equal(t, decodedKey.HandleType, IntHandle) - assert.Equal(t, decodedKey.HandleValue, "10") + assert.Equal(t, int64(0), decodedKey.DbID) + assert.Equal(t, "test", decodedKey.DbName) + assert.Equal(t, int64(3), decodedKey.TableID) + assert.Equal(t, "table3", decodedKey.TableName) + assert.Equal(t, int64(5), decodedKey.PartitionID) + assert.Equal(t, "p0", decodedKey.PartitionName) + assert.Equal(t, IntHandle, decodedKey.HandleType) + assert.Equal(t, "10", decodedKey.HandleValue) // These are default values, ie. will be omitted when got marshaled into json - assert.Equal(t, decodedKey.IndexID, int64(0)) - assert.Equal(t, decodedKey.IndexName, "") + assert.Equal(t, int64(0), decodedKey.IndexID) + assert.Equal(t, "", decodedKey.IndexName) assert.Nil(t, decodedKey.IndexValues) - assert.Equal(t, decodedKey.IsPartitionHandle, false) + assert.False(t, decodedKey.IsPartitionHandle) // Index key in a partitioned table. values = types.MakeDatums("abcde", 2) @@ -170,19 +170,19 @@ func TestDecodeKey(t *testing.T) { decodedKey, err = DecodeKey(key, stubInfoschema) assert.Nil(t, err) - assert.Equal(t, decodedKey.DbID, int64(0)) - assert.Equal(t, decodedKey.DbName, "test") - assert.Equal(t, decodedKey.TableID, int64(3)) - assert.Equal(t, decodedKey.TableName, "table3") - assert.Equal(t, decodedKey.PartitionID, int64(6)) - assert.Equal(t, decodedKey.PartitionName, "p1") - assert.Equal(t, decodedKey.IndexID, int64(4)) - assert.Equal(t, decodedKey.IndexName, "index4") - assert.Equal(t, decodedKey.IndexValues, []string{"abcde", "2"}) + assert.Equal(t, int64(0), decodedKey.DbID) + assert.Equal(t, "test", decodedKey.DbName) + assert.Equal(t, int64(3), decodedKey.TableID) + assert.Equal(t, "table3", decodedKey.TableName) + assert.Equal(t, int64(6), decodedKey.PartitionID) + assert.Equal(t, "p1", decodedKey.PartitionName) + assert.Equal(t, int64(4), decodedKey.IndexID) + assert.Equal(t, "index4", decodedKey.IndexName) + assert.Equal(t, []string{"abcde", "2"}, decodedKey.IndexValues) // These are default values, ie. will be omitted when got marshaled into json - assert.Equal(t, decodedKey.HandleType, HandleType("")) - assert.Equal(t, decodedKey.HandleValue, "") - assert.Equal(t, decodedKey.IsPartitionHandle, false) + assert.Equal(t, HandleType(""), decodedKey.HandleType) + assert.Equal(t, "", decodedKey.HandleValue) + assert.False(t, decodedKey.IsPartitionHandle) // Totally invalid key key = []byte("this-is-a-totally-invalidkey") @@ -211,18 +211,18 @@ func TestDecodeKey(t *testing.T) { }, stubInfoschema) // We should get as much information as we can assert.Nil(t, err) - assert.Equal(t, decodedKey.TableID, int64(4)) - assert.Equal(t, decodedKey.HandleType, IntHandle) - assert.Equal(t, decodedKey.HandleValue, "1") + assert.Equal(t, int64(4), decodedKey.TableID) + assert.Equal(t, IntHandle, decodedKey.HandleType) + assert.Equal(t, "1", decodedKey.HandleValue) // Rest information are all default value, ie. omitted when got marshaled into json - assert.Equal(t, decodedKey.DbID, int64(0)) - assert.Equal(t, decodedKey.DbName, "") - assert.Equal(t, decodedKey.TableName, "") - assert.Equal(t, decodedKey.PartitionID, int64(0)) - assert.Equal(t, decodedKey.PartitionName, "") - assert.Equal(t, decodedKey.IndexID, int64(0)) - assert.Equal(t, decodedKey.IndexName, "") - assert.Equal(t, decodedKey.IsPartitionHandle, false) + assert.Equal(t, int64(0), decodedKey.DbID) + assert.Equal(t, "", decodedKey.DbName) + assert.Equal(t, "", decodedKey.TableName) + assert.Equal(t, int64(0), decodedKey.PartitionID) + assert.Equal(t, "", decodedKey.PartitionName) + assert.Equal(t, int64(0), decodedKey.IndexID) + assert.Equal(t, "", decodedKey.IndexName) + assert.False(t, decodedKey.IsPartitionHandle) assert.Nil(t, decodedKey.IndexValues) } From 5de5fa4afc38343e8b11397e28c4f44787c59161 Mon Sep 17 00:00:00 2001 From: tison Date: Sat, 14 Aug 2021 14:33:58 +0800 Subject: [PATCH 02/27] tidb-server: migrate test-infra to testify (#27144) --- tidb-server/main_test.go | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/tidb-server/main_test.go b/tidb-server/main_test.go index f504e9bd47656..0ca87addaabb0 100644 --- a/tidb-server/main_test.go +++ b/tidb-server/main_test.go @@ -16,12 +16,23 @@ package main import ( "testing" - . "github.com/pingcap/check" "github.com/pingcap/tidb/config" "github.com/pingcap/tidb/sessionctx/variable" + "github.com/pingcap/tidb/util/testbridge" + "github.com/stretchr/testify/require" + "go.uber.org/goleak" ) -var isCoverageServer = "0" +var isCoverageServer string + +func TestMain(m *testing.M) { + testbridge.WorkaroundGoCheckFlags() + opts := []goleak.Option{ + goleak.IgnoreTopFunction("go.etcd.io/etcd/pkg/logutil.(*MergeLogger).outputLoop"), + goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), + } + goleak.VerifyTestMain(m, opts...) +} // TestRunMain is a dummy test case, which contains only the main function of tidb-server, // and it is used to generate coverage_server. @@ -31,23 +42,16 @@ func TestRunMain(t *testing.T) { } } -func TestT(t *testing.T) { - TestingT(t) -} - -var _ = Suite(&testMainSuite{}) - -type testMainSuite struct{} +func TestSetGlobalVars(t *testing.T) { + require.Equal(t, "tikv,tiflash,tidb", variable.GetSysVar(variable.TiDBIsolationReadEngines).Value) + require.Equal(t, "1073741824", variable.GetSysVar(variable.TiDBMemQuotaQuery).Value) -func (t *testMainSuite) TestSetGlobalVars(c *C) { - c.Assert(variable.GetSysVar(variable.TiDBIsolationReadEngines).Value, Equals, "tikv,tiflash,tidb") - c.Assert(variable.GetSysVar(variable.TiDBMemQuotaQuery).Value, Equals, "1073741824") config.UpdateGlobal(func(conf *config.Config) { conf.IsolationRead.Engines = []string{"tikv", "tidb"} conf.MemQuotaQuery = 9999999 }) setGlobalVars() - c.Assert(variable.GetSysVar(variable.TiDBIsolationReadEngines).Value, Equals, "tikv,tidb") - c.Assert(variable.GetSysVar(variable.TiDBMemQuotaQuery).Value, Equals, "9999999") + require.Equal(t, "tikv,tidb", variable.GetSysVar(variable.TiDBIsolationReadEngines).Value) + require.Equal(t, "9999999", variable.GetSysVar(variable.TiDBMemQuotaQuery).Value) } From 4104fccad028e1a37e694782e0b4cb64098008a3 Mon Sep 17 00:00:00 2001 From: tison Date: Sat, 14 Aug 2021 14:43:58 +0800 Subject: [PATCH 03/27] planner/memo: migrate test-infra to testify (#27158) --- planner/memo/expr_iterator_test.go | 334 ++++++++++++++--------------- planner/memo/group_expr_test.go | 17 +- planner/memo/group_test.go | 297 ++++++++++++------------- planner/memo/main_test.go | 26 +++ planner/memo/pattern_test.go | 107 ++++----- 5 files changed, 407 insertions(+), 374 deletions(-) create mode 100644 planner/memo/main_test.go diff --git a/planner/memo/expr_iterator_test.go b/planner/memo/expr_iterator_test.go index 5825f8f17d5ee..58dad9a4b566d 100644 --- a/planner/memo/expr_iterator_test.go +++ b/planner/memo/expr_iterator_test.go @@ -14,141 +14,138 @@ package memo import ( - . "github.com/pingcap/check" + "testing" + "github.com/pingcap/tidb/expression" plannercore "github.com/pingcap/tidb/planner/core" + "github.com/stretchr/testify/require" ) -func (s *testMemoSuite) TestNewExprIterFromGroupElem(c *C) { - g0 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{}.Init(s.sctx, 0)), s.schema) - g0.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr(plannercore.LogicalProjection{}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0))) +func TestNewExprIterFromGroupElem(t *testing.T) { + t.Parallel() + + ctx := plannercore.MockContext() + schema := expression.NewSchema() + + g0 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{}.Init(ctx, 0)), schema) + g0.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalProjection{}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0))) - g1 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{}.Init(s.sctx, 0)), s.schema) - g1.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr(plannercore.LogicalProjection{}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0))) + g1 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{}.Init(ctx, 0)), schema) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalProjection{}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0))) - expr := NewGroupExpr(plannercore.LogicalJoin{}.Init(s.sctx, 0)) + expr := NewGroupExpr(plannercore.LogicalJoin{}.Init(ctx, 0)) expr.Children = append(expr.Children, g0) expr.Children = append(expr.Children, g1) - g2 := NewGroupWithSchema(expr, s.schema) + g2 := NewGroupWithSchema(expr, schema) pattern := BuildPattern(OperandJoin, EngineAll, BuildPattern(OperandProjection, EngineAll), BuildPattern(OperandSelection, EngineAll)) iter := NewExprIterFromGroupElem(g2.Equivalents.Front(), pattern) - c.Assert(iter, NotNil) - c.Assert(iter.Group, IsNil) - c.Assert(iter.Element, Equals, g2.Equivalents.Front()) - c.Assert(iter.matched, Equals, true) - c.Assert(iter.Operand, Equals, OperandJoin) - c.Assert(len(iter.Children), Equals, 2) - - c.Assert(iter.Children[0].Group, Equals, g0) - c.Assert(iter.Children[0].Element, Equals, g0.GetFirstElem(OperandProjection)) - c.Assert(iter.Children[0].matched, Equals, true) - c.Assert(iter.Children[0].Operand, Equals, OperandProjection) - c.Assert(len(iter.Children[0].Children), Equals, 0) - - c.Assert(iter.Children[1].Group, Equals, g1) - c.Assert(iter.Children[1].Element, Equals, g1.GetFirstElem(OperandSelection)) - c.Assert(iter.Children[1].matched, Equals, true) - c.Assert(iter.Children[1].Operand, Equals, OperandSelection) - c.Assert(len(iter.Children[0].Children), Equals, 0) + require.NotNil(t, iter) + require.Nil(t, iter.Group) + require.Equal(t, g2.Equivalents.Front(), iter.Element) + require.True(t, iter.matched) + require.Equal(t, OperandJoin, iter.Operand) + require.Len(t, iter.Children, 2) + + require.Equal(t, g0, iter.Children[0].Group) + require.Equal(t, g0.GetFirstElem(OperandProjection), iter.Children[0].Element) + require.True(t, iter.Children[0].matched) + require.Equal(t, OperandProjection, iter.Children[0].Operand) + require.Len(t, iter.Children[0].Children, 0) + + require.Equal(t, g1, iter.Children[1].Group) + require.Equal(t, g1.GetFirstElem(OperandSelection), iter.Children[1].Element) + require.True(t, iter.Children[1].matched) + require.Equal(t, OperandSelection, iter.Children[1].Operand) + require.Len(t, iter.Children[0].Children, 0) } -func (s *testMemoSuite) TestExprIterNext(c *C) { - g0 := NewGroupWithSchema(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewZero()}}.Init(s.sctx, 0)), s.schema) - g0.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 1}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 2}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewNull()}}.Init(s.sctx, 0))) - - g1 := NewGroupWithSchema(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewNull()}}.Init(s.sctx, 0)), s.schema) - g1.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 3}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 4}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewZero()}}.Init(s.sctx, 0))) - - expr := NewGroupExpr(plannercore.LogicalJoin{}.Init(s.sctx, 0)) +func TestExprIterNext(t *testing.T) { + t.Parallel() + + ctx := plannercore.MockContext() + schema := expression.NewSchema() + + g0 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewZero()}}.Init(ctx, 0)), schema) + g0.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 1}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 2}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewNull()}}.Init(ctx, 0))) + + g1 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewNull()}}.Init(ctx, 0)), schema) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 3}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 4}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewZero()}}.Init(ctx, 0))) + + expr := NewGroupExpr(plannercore.LogicalJoin{}.Init(ctx, 0)) expr.Children = append(expr.Children, g0) expr.Children = append(expr.Children, g1) - g2 := NewGroupWithSchema(expr, s.schema) + g2 := NewGroupWithSchema(expr, schema) pattern := BuildPattern(OperandJoin, EngineAll, BuildPattern(OperandProjection, EngineAll), BuildPattern(OperandSelection, EngineAll)) iter := NewExprIterFromGroupElem(g2.Equivalents.Front(), pattern) - c.Assert(iter, NotNil) + require.NotNil(t, iter) count := 0 for ; iter.Matched(); iter.Next() { count++ - c.Assert(iter.Group, IsNil) - c.Assert(iter.matched, Equals, true) - c.Assert(iter.Operand, Equals, OperandJoin) - c.Assert(len(iter.Children), Equals, 2) - - c.Assert(iter.Children[0].Group, Equals, g0) - c.Assert(iter.Children[0].matched, Equals, true) - c.Assert(iter.Children[0].Operand, Equals, OperandProjection) - c.Assert(len(iter.Children[0].Children), Equals, 0) - - c.Assert(iter.Children[1].Group, Equals, g1) - c.Assert(iter.Children[1].matched, Equals, true) - c.Assert(iter.Children[1].Operand, Equals, OperandSelection) - c.Assert(len(iter.Children[1].Children), Equals, 0) + require.Nil(t, iter.Group) + require.True(t, iter.matched) + require.Equal(t, OperandJoin, iter.Operand) + require.Len(t, iter.Children, 2) + + require.Equal(t, g0, iter.Children[0].Group) + require.True(t, iter.Children[0].matched) + require.Equal(t, OperandProjection, iter.Children[0].Operand) + require.Len(t, iter.Children[0].Children, 0) + + require.Equal(t, g1, iter.Children[1].Group) + require.True(t, iter.Children[1].matched) + require.Equal(t, OperandSelection, iter.Children[1].Operand) + require.Len(t, iter.Children[1].Children, 0) } - c.Assert(count, Equals, 9) + require.Equal(t, 9, count) } -func (s *testMemoSuite) TestExprIterReset(c *C) { - g0 := NewGroupWithSchema(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewZero()}}.Init(s.sctx, 0)), s.schema) - g0.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 1}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 2}.Init(s.sctx, 0))) - g0.Insert(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewNull()}}.Init(s.sctx, 0))) - - sel1 := NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewNull()}}.Init(s.sctx, 0)) - sel2 := NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0)) - sel3 := NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewZero()}}.Init(s.sctx, 0)) - g1 := NewGroupWithSchema(sel1, s.schema) - g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 3}.Init(s.sctx, 0))) +func TestExprIterReset(t *testing.T) { + t.Parallel() + + ctx := plannercore.MockContext() + schema := expression.NewSchema() + + g0 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewZero()}}.Init(ctx, 0)), schema) + g0.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 1}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 2}.Init(ctx, 0))) + g0.Insert(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewNull()}}.Init(ctx, 0))) + + sel1 := NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewNull()}}.Init(ctx, 0)) + sel2 := NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(ctx, 0)) + sel3 := NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewZero()}}.Init(ctx, 0)) + g1 := NewGroupWithSchema(sel1, schema) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 3}.Init(ctx, 0))) g1.Insert(sel2) - g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 4}.Init(s.sctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 4}.Init(ctx, 0))) g1.Insert(sel3) - g2 := NewGroupWithSchema(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewNull()}}.Init(s.sctx, 0)), s.schema) - g2.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 3}.Init(s.sctx, 0))) - g2.Insert(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0))) - g2.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 4}.Init(s.sctx, 0))) - g2.Insert(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewZero()}}.Init(s.sctx, 0))) + g2 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewNull()}}.Init(ctx, 0)), schema) + g2.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 3}.Init(ctx, 0))) + g2.Insert(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(ctx, 0))) + g2.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 4}.Init(ctx, 0))) + g2.Insert(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewZero()}}.Init(ctx, 0))) // link join with Group 0 and 1 - expr := NewGroupExpr(plannercore.LogicalJoin{}.Init(s.sctx, 0)) + expr := NewGroupExpr(plannercore.LogicalJoin{}.Init(ctx, 0)) expr.Children = append(expr.Children, g0) expr.Children = append(expr.Children, g1) - g3 := NewGroupWithSchema(expr, s.schema) + g3 := NewGroupWithSchema(expr, schema) // link sel 1~3 with Group 2 sel1.Children = append(sel1.Children, g2) @@ -162,82 +159,62 @@ func (s *testMemoSuite) TestExprIterReset(c *C) { // create expression iterator for the pattern on join iter := NewExprIterFromGroupElem(g3.Equivalents.Front(), pattern) - c.Assert(iter, NotNil) + require.NotNil(t, iter) count := 0 for ; iter.Matched(); iter.Next() { count++ - c.Assert(iter.Group, IsNil) - c.Assert(iter.matched, Equals, true) - c.Assert(iter.Operand, Equals, OperandJoin) - c.Assert(len(iter.Children), Equals, 2) - - c.Assert(iter.Children[0].Group, Equals, g0) - c.Assert(iter.Children[0].matched, Equals, true) - c.Assert(iter.Children[0].Operand, Equals, OperandProjection) - c.Assert(len(iter.Children[0].Children), Equals, 0) - - c.Assert(iter.Children[1].Group, Equals, g1) - c.Assert(iter.Children[1].matched, Equals, true) - c.Assert(iter.Children[1].Operand, Equals, OperandSelection) - c.Assert(len(iter.Children[1].Children), Equals, 1) - - c.Assert(iter.Children[1].Children[0].Group, Equals, g2) - c.Assert(iter.Children[1].Children[0].matched, Equals, true) - c.Assert(iter.Children[1].Children[0].Operand, Equals, OperandLimit) - c.Assert(len(iter.Children[1].Children[0].Children), Equals, 0) + require.Nil(t, iter.Group) + require.True(t, iter.matched) + require.Equal(t, OperandJoin, iter.Operand) + require.Len(t, iter.Children, 2) + + require.Equal(t, g0, iter.Children[0].Group) + require.True(t, iter.Children[0].matched) + require.Equal(t, OperandProjection, iter.Children[0].Operand) + require.Len(t, iter.Children[0].Children, 0) + + require.Equal(t, g1, iter.Children[1].Group) + require.True(t, iter.Children[1].matched) + require.Equal(t, OperandSelection, iter.Children[1].Operand) + require.Len(t, iter.Children[1].Children, 1) + + require.Equal(t, g2, iter.Children[1].Children[0].Group) + require.True(t, iter.Children[1].Children[0].matched) + require.Equal(t, OperandLimit, iter.Children[1].Children[0].Operand) + require.Len(t, iter.Children[1].Children[0].Children, 0) } - c.Assert(count, Equals, 18) + require.Equal(t, 18, count) } -func countMatchedIter(group *Group, pattern *Pattern) int { - count := 0 - for elem := group.Equivalents.Front(); elem != nil; elem = elem.Next() { - iter := NewExprIterFromGroupElem(elem, pattern) - if iter == nil { - continue - } - for ; iter.Matched(); iter.Next() { - count++ - } - } - return count -} +func TestExprIterWithEngineType(t *testing.T) { + t.Parallel() + + ctx := plannercore.MockContext() + schema := expression.NewSchema() + + g1 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(ctx, 0)), schema).SetEngineType(EngineTiFlash) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 1}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(ctx, 0))) + g1.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 2}.Init(ctx, 0))) + + g2 := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(ctx, 0)), schema).SetEngineType(EngineTiKV) + g2.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 2}.Init(ctx, 0))) + g2.Insert(NewGroupExpr(plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(ctx, 0))) + g2.Insert(NewGroupExpr(plannercore.LogicalLimit{Count: 3}.Init(ctx, 0))) -func (s *testMemoSuite) TestExprIterWithEngineType(c *C) { - g1 := NewGroupWithSchema(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0)), s.schema).SetEngineType(EngineTiFlash) - g1.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 1}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0))) - g1.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 2}.Init(s.sctx, 0))) - - g2 := NewGroupWithSchema(NewGroupExpr( - plannercore.LogicalSelection{Conditions: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0)), s.schema).SetEngineType(EngineTiKV) - g2.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 2}.Init(s.sctx, 0))) - g2.Insert(NewGroupExpr( - plannercore.LogicalProjection{Exprs: []expression.Expression{expression.NewOne()}}.Init(s.sctx, 0))) - g2.Insert(NewGroupExpr( - plannercore.LogicalLimit{Count: 3}.Init(s.sctx, 0))) - - flashGather := NewGroupExpr( - plannercore.TiKVSingleGather{}.Init(s.sctx, 0)) + flashGather := NewGroupExpr(plannercore.TiKVSingleGather{}.Init(ctx, 0)) flashGather.Children = append(flashGather.Children, g1) - g3 := NewGroupWithSchema(flashGather, s.schema).SetEngineType(EngineTiDB) + g3 := NewGroupWithSchema(flashGather, schema).SetEngineType(EngineTiDB) - tikvGather := NewGroupExpr( - plannercore.TiKVSingleGather{}.Init(s.sctx, 0)) + tikvGather := NewGroupExpr(plannercore.TiKVSingleGather{}.Init(ctx, 0)) tikvGather.Children = append(tikvGather.Children, g2) g3.Insert(tikvGather) - join := NewGroupExpr( - plannercore.LogicalJoin{}.Init(s.sctx, 0)) + join := NewGroupExpr(plannercore.LogicalJoin{}.Init(ctx, 0)) join.Children = append(join.Children, g3, g3) - g4 := NewGroupWithSchema(join, s.schema).SetEngineType(EngineTiDB) + g4 := NewGroupWithSchema(join, schema).SetEngineType(EngineTiDB) // The Groups look like this: // Group 4 @@ -257,37 +234,36 @@ func (s *testMemoSuite) TestExprIterWithEngineType(c *C) { // Limit p0 := BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOnly)) - c.Assert(countMatchedIter(g3, p0), Equals, 2) + require.Equal(t, 2, countMatchedIter(g3, p0)) p1 := BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiFlashOnly)) - c.Assert(countMatchedIter(g3, p1), Equals, 2) + require.Equal(t, 2, countMatchedIter(g3, p1)) p2 := BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOrTiFlash)) - c.Assert(countMatchedIter(g3, p2), Equals, 4) + require.Equal(t, 4, countMatchedIter(g3, p2)) p3 := BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandSelection, EngineTiFlashOnly)) - c.Assert(countMatchedIter(g3, p3), Equals, 1) + require.Equal(t, 1, countMatchedIter(g3, p3)) p4 := BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandProjection, EngineTiKVOnly)) - c.Assert(countMatchedIter(g3, p4), Equals, 1) - + require.Equal(t, 1, countMatchedIter(g3, p4)) p5 := BuildPattern( OperandJoin, EngineTiDBOnly, BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOnly)), BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOnly)), ) - c.Assert(countMatchedIter(g4, p5), Equals, 4) + require.Equal(t, 4, countMatchedIter(g4, p5)) p6 := BuildPattern( OperandJoin, EngineTiDBOnly, BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiFlashOnly)), BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOnly)), ) - c.Assert(countMatchedIter(g4, p6), Equals, 4) + require.Equal(t, 4, countMatchedIter(g4, p6)) p7 := BuildPattern( OperandJoin, EngineTiDBOnly, BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOrTiFlash)), BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly, BuildPattern(OperandLimit, EngineTiKVOrTiFlash)), ) - c.Assert(countMatchedIter(g4, p7), Equals, 16) + require.Equal(t, 16, countMatchedIter(g4, p7)) // This is not a test case for EngineType. This case is to test // the Pattern without a leaf AnyOperand. It is more efficient to @@ -298,5 +274,19 @@ func (s *testMemoSuite) TestExprIterWithEngineType(c *C) { BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly), BuildPattern(OperandTiKVSingleGather, EngineTiDBOnly), ) - c.Assert(countMatchedIter(g4, p8), Equals, 4) + require.Equal(t, 4, countMatchedIter(g4, p8)) +} + +func countMatchedIter(group *Group, pattern *Pattern) int { + count := 0 + for elem := group.Equivalents.Front(); elem != nil; elem = elem.Next() { + iter := NewExprIterFromGroupElem(elem, pattern) + if iter == nil { + continue + } + for ; iter.Matched(); iter.Next() { + count++ + } + } + return count } diff --git a/planner/memo/group_expr_test.go b/planner/memo/group_expr_test.go index 082c8a0ce15f6..cb4cebce53c14 100644 --- a/planner/memo/group_expr_test.go +++ b/planner/memo/group_expr_test.go @@ -16,21 +16,24 @@ package memo import ( "encoding/binary" "reflect" + "testing" - . "github.com/pingcap/check" "github.com/pingcap/tidb/expression" plannercore "github.com/pingcap/tidb/planner/core" + "github.com/stretchr/testify/require" ) -func (s *testMemoSuite) TestNewGroupExpr(c *C) { +func TestNewGroupExpr(t *testing.T) { + t.Parallel() p := &plannercore.LogicalLimit{} expr := NewGroupExpr(p) - c.Assert(expr.ExprNode, Equals, p) - c.Assert(expr.Children, IsNil) - c.Assert(expr.Explored(0), IsFalse) + require.Equal(t, p, expr.ExprNode) + require.Nil(t, expr.Children) + require.False(t, expr.Explored(0)) } -func (s *testMemoSuite) TestGroupExprFingerprint(c *C) { +func TestGroupExprFingerprint(t *testing.T) { + t.Parallel() p := &plannercore.LogicalLimit{Count: 3} expr := NewGroupExpr(p) childGroup := NewGroupWithSchema(nil, expression.NewSchema()) @@ -41,5 +44,5 @@ func (s *testMemoSuite) TestGroupExprFingerprint(c *C) { binary.BigEndian.PutUint16(buffer, 1) binary.BigEndian.PutUint64(buffer[2:], uint64(reflect.ValueOf(childGroup).Pointer())) copy(buffer[10:], planHash) - c.Assert(expr.FingerPrint(), Equals, string(buffer)) + require.Equal(t, string(buffer), expr.FingerPrint()) } diff --git a/planner/memo/group_test.go b/planner/memo/group_test.go index a31f85ebbd122..9d45b3b091e60 100644 --- a/planner/memo/group_test.go +++ b/planner/memo/group_test.go @@ -17,113 +17,102 @@ import ( "context" "testing" - . "github.com/pingcap/check" "github.com/pingcap/parser" "github.com/pingcap/parser/model" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/infoschema" plannercore "github.com/pingcap/tidb/planner/core" "github.com/pingcap/tidb/planner/property" - "github.com/pingcap/tidb/sessionctx" - "github.com/pingcap/tidb/util/testleak" + "github.com/stretchr/testify/require" ) -func TestT(t *testing.T) { - CustomVerboseFlag = true - TestingT(t) -} - -var _ = Suite(&testMemoSuite{}) - -type testMemoSuite struct { - *parser.Parser - is infoschema.InfoSchema - schema *expression.Schema - sctx sessionctx.Context -} - -func (s *testMemoSuite) SetUpSuite(c *C) { - testleak.BeforeTest() - s.is = infoschema.MockInfoSchema([]*model.TableInfo{plannercore.MockSignedTable()}) - s.sctx = plannercore.MockContext() - s.Parser = parser.New() - s.schema = expression.NewSchema() -} - -func (s *testMemoSuite) TearDownSuite(c *C) { - testleak.AfterTest(c)() -} +func TestNewGroup(t *testing.T) { + t.Parallel() -func (s *testMemoSuite) TestNewGroup(c *C) { p := &plannercore.LogicalLimit{} expr := NewGroupExpr(p) - g := NewGroupWithSchema(expr, s.schema) + g := NewGroupWithSchema(expr, expression.NewSchema()) - c.Assert(g.Equivalents.Len(), Equals, 1) - c.Assert(g.Equivalents.Front().Value.(*GroupExpr), Equals, expr) - c.Assert(len(g.Fingerprints), Equals, 1) - c.Assert(g.Explored(0), IsFalse) + require.Equal(t, 1, g.Equivalents.Len()) + require.Equal(t, expr, g.Equivalents.Front().Value.(*GroupExpr)) + require.Len(t, g.Fingerprints, 1) + require.False(t, g.Explored(0)) } -func (s *testMemoSuite) TestGroupInsert(c *C) { +func TestGroupInsert(t *testing.T) { + t.Parallel() p := &plannercore.LogicalLimit{} expr := NewGroupExpr(p) - g := NewGroupWithSchema(expr, s.schema) - c.Assert(g.Insert(expr), IsFalse) + g := NewGroupWithSchema(expr, expression.NewSchema()) + require.False(t, g.Insert(expr)) expr.selfFingerprint = "1" - c.Assert(g.Insert(expr), IsTrue) + require.True(t, g.Insert(expr)) } -func (s *testMemoSuite) TestGroupDelete(c *C) { +func TestGroupDelete(t *testing.T) { + t.Parallel() + p := &plannercore.LogicalLimit{} expr := NewGroupExpr(p) - g := NewGroupWithSchema(expr, s.schema) - c.Assert(g.Equivalents.Len(), Equals, 1) + g := NewGroupWithSchema(expr, expression.NewSchema()) + require.Equal(t, 1, g.Equivalents.Len()) g.Delete(expr) - c.Assert(g.Equivalents.Len(), Equals, 0) + require.Equal(t, 0, g.Equivalents.Len()) g.Delete(expr) - c.Assert(g.Equivalents.Len(), Equals, 0) + require.Equal(t, 0, g.Equivalents.Len()) } -func (s *testMemoSuite) TestGroupDeleteAll(c *C) { - expr := NewGroupExpr(plannercore.LogicalSelection{}.Init(s.sctx, 0)) - g := NewGroupWithSchema(expr, s.schema) - c.Assert(g.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0))), IsTrue) - c.Assert(g.Insert(NewGroupExpr(plannercore.LogicalProjection{}.Init(s.sctx, 0))), IsTrue) - c.Assert(g.Equivalents.Len(), Equals, 3) - c.Assert(g.GetFirstElem(OperandProjection), NotNil) - c.Assert(g.Exists(expr), IsTrue) +func TestGroupDeleteAll(t *testing.T) { + t.Parallel() + + ctx := plannercore.MockContext() + expr := NewGroupExpr(plannercore.LogicalSelection{}.Init(ctx, 0)) + g := NewGroupWithSchema(expr, expression.NewSchema()) + require.True(t, g.Insert(NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0)))) + require.True(t, g.Insert(NewGroupExpr(plannercore.LogicalProjection{}.Init(ctx, 0)))) + require.Equal(t, 3, g.Equivalents.Len()) + require.NotNil(t, g.GetFirstElem(OperandProjection)) + require.True(t, g.Exists(expr)) g.DeleteAll() - c.Assert(g.Equivalents.Len(), Equals, 0) - c.Assert(g.GetFirstElem(OperandProjection), IsNil) - c.Assert(g.Exists(expr), IsFalse) + require.Equal(t, 0, g.Equivalents.Len()) + require.Nil(t, g.GetFirstElem(OperandProjection)) + require.False(t, g.Exists(expr)) } -func (s *testMemoSuite) TestGroupExists(c *C) { +func TestGroupExists(t *testing.T) { + t.Parallel() + p := &plannercore.LogicalLimit{} expr := NewGroupExpr(p) - g := NewGroupWithSchema(expr, s.schema) - c.Assert(g.Exists(expr), IsTrue) + g := NewGroupWithSchema(expr, expression.NewSchema()) + require.True(t, g.Exists(expr)) g.Delete(expr) - c.Assert(g.Exists(expr), IsFalse) + require.False(t, g.Exists(expr)) } -func (s *testMemoSuite) TestGroupFingerPrint(c *C) { - stmt1, err := s.ParseOneStmt("select * from t where a > 1 and a < 100", "", "") - c.Assert(err, IsNil) - p1, _, err := plannercore.BuildLogicalPlan(context.Background(), s.sctx, stmt1, s.is) - c.Assert(err, IsNil) - logic1, ok := p1.(plannercore.LogicalPlan) - c.Assert(ok, IsTrue) +func TestGroupFingerPrint(t *testing.T) { + t.Parallel() + + p := parser.New() + stmt1, err := p.ParseOneStmt("select * from t where a > 1 and a < 100", "", "") + require.NoError(t, err) + + is := infoschema.MockInfoSchema([]*model.TableInfo{plannercore.MockSignedTable()}) + ctx := plannercore.MockContext() + plan, _, err := plannercore.BuildLogicalPlan(context.Background(), ctx, stmt1, is) + require.NoError(t, err) + logic1, ok := plan.(plannercore.LogicalPlan) + require.True(t, ok) + // Plan tree should be: DataSource -> Selection -> Projection proj, ok := logic1.(*plannercore.LogicalProjection) - c.Assert(ok, IsTrue) + require.True(t, ok) sel, ok := logic1.Children()[0].(*plannercore.LogicalSelection) - c.Assert(ok, IsTrue) + require.True(t, ok) group1 := Convert2Group(logic1) oldGroupExpr := group1.Equivalents.Front().Value.(*GroupExpr) @@ -131,24 +120,24 @@ func (s *testMemoSuite) TestGroupFingerPrint(c *C) { newGroupExpr := NewGroupExpr(proj) newGroupExpr.SetChildren(oldGroupExpr.Children[0]) group1.Insert(newGroupExpr) - c.Assert(group1.Equivalents.Len(), Equals, 1) + require.Equal(t, 1, group1.Equivalents.Len()) // Insert a GroupExpr with different children。 newGroupExpr2 := NewGroupExpr(proj) newGroup := NewGroupWithSchema(oldGroupExpr, group1.Prop.Schema) newGroupExpr2.SetChildren(newGroup) group1.Insert(newGroupExpr2) - c.Assert(group1.Equivalents.Len(), Equals, 2) + require.Equal(t, 2, group1.Equivalents.Len()) // Insert a GroupExpr with different ExprNode. limit := plannercore.LogicalLimit{}.Init(proj.SCtx(), 0) newGroupExpr3 := NewGroupExpr(limit) newGroupExpr3.SetChildren(oldGroupExpr.Children[0]) group1.Insert(newGroupExpr3) - c.Assert(group1.Equivalents.Len(), Equals, 3) + require.Equal(t, 3, group1.Equivalents.Len()) // Insert two LogicalSelections with same conditions but different order. - c.Assert(len(sel.Conditions), Equals, 2) + require.Len(t, sel.Conditions, 2) newSelection := plannercore.LogicalSelection{ Conditions: make([]expression.Expression, 2)}.Init(sel.SCtx(), sel.SelectBlockOffset()) newSelection.Conditions[0], newSelection.Conditions[1] = sel.Conditions[1], sel.Conditions[0] @@ -157,27 +146,30 @@ func (s *testMemoSuite) TestGroupFingerPrint(c *C) { newGroupExpr4.SetChildren(oldGroupExpr.Children[0]) newGroupExpr5.SetChildren(oldGroupExpr.Children[0]) group1.Insert(newGroupExpr4) - c.Assert(group1.Equivalents.Len(), Equals, 4) + require.Equal(t, 4, group1.Equivalents.Len()) group1.Insert(newGroupExpr5) - c.Assert(group1.Equivalents.Len(), Equals, 4) + require.Equal(t, 4, group1.Equivalents.Len()) } -func (s *testMemoSuite) TestGroupGetFirstElem(c *C) { - expr0 := NewGroupExpr(plannercore.LogicalProjection{}.Init(s.sctx, 0)) - expr1 := NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0)) - expr2 := NewGroupExpr(plannercore.LogicalProjection{}.Init(s.sctx, 0)) - expr3 := NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0)) - expr4 := NewGroupExpr(plannercore.LogicalProjection{}.Init(s.sctx, 0)) +func TestGroupGetFirstElem(t *testing.T) { + t.Parallel() - g := NewGroupWithSchema(expr0, s.schema) + ctx := plannercore.MockContext() + expr0 := NewGroupExpr(plannercore.LogicalProjection{}.Init(ctx, 0)) + expr1 := NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0)) + expr2 := NewGroupExpr(plannercore.LogicalProjection{}.Init(ctx, 0)) + expr3 := NewGroupExpr(plannercore.LogicalLimit{}.Init(ctx, 0)) + expr4 := NewGroupExpr(plannercore.LogicalProjection{}.Init(ctx, 0)) + + g := NewGroupWithSchema(expr0, expression.NewSchema()) g.Insert(expr1) g.Insert(expr2) g.Insert(expr3) g.Insert(expr4) - c.Assert(g.GetFirstElem(OperandProjection).Value.(*GroupExpr), Equals, expr0) - c.Assert(g.GetFirstElem(OperandLimit).Value.(*GroupExpr), Equals, expr1) - c.Assert(g.GetFirstElem(OperandAny).Value.(*GroupExpr), Equals, expr0) + require.Equal(t, expr0, g.GetFirstElem(OperandProjection).Value.(*GroupExpr)) + require.Equal(t, expr1, g.GetFirstElem(OperandLimit).Value.(*GroupExpr)) + require.Equal(t, expr0, g.GetFirstElem(OperandAny).Value.(*GroupExpr)) } type fakeImpl struct { @@ -190,111 +182,124 @@ func (impl *fakeImpl) GetCost() float64 { return func (impl *fakeImpl) GetPlan() plannercore.PhysicalPlan { return impl.plan } func (impl *fakeImpl) AttachChildren(...Implementation) Implementation { return nil } func (impl *fakeImpl) GetCostLimit(float64, ...Implementation) float64 { return 0 } -func (s *testMemoSuite) TestGetInsertGroupImpl(c *C) { - g := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalLimit{}.Init(s.sctx, 0)), s.schema) - emptyProp := &property.PhysicalProperty{} - orderProp := &property.PhysicalProperty{SortItems: []property.SortItem{{Col: &expression.Column{}}}} - impl := g.GetImpl(emptyProp) - c.Assert(impl, IsNil) +func TestGetInsertGroupImpl(t *testing.T) { + t.Parallel() - impl = &fakeImpl{plan: &plannercore.PhysicalLimit{}} - g.InsertImpl(emptyProp, impl) + g := NewGroupWithSchema(NewGroupExpr(plannercore.LogicalLimit{}.Init(plannercore.MockContext(), 0)), expression.NewSchema()) + emptyProp := &property.PhysicalProperty{} + require.Nil(t, g.GetImpl(emptyProp)) - newImpl := g.GetImpl(emptyProp) - c.Assert(newImpl, Equals, impl) + impl := &fakeImpl{plan: &plannercore.PhysicalLimit{}} + g.InsertImpl(emptyProp, impl) + require.Equal(t, impl, g.GetImpl(emptyProp)) - newImpl = g.GetImpl(orderProp) - c.Assert(newImpl, IsNil) + orderProp := &property.PhysicalProperty{SortItems: []property.SortItem{{Col: &expression.Column{}}}} + require.Nil(t, g.GetImpl(orderProp)) } -func (s *testMemoSuite) TestEngineTypeSet(c *C) { - c.Assert(EngineAll.Contains(EngineTiDB), IsTrue) - c.Assert(EngineAll.Contains(EngineTiKV), IsTrue) - c.Assert(EngineAll.Contains(EngineTiFlash), IsTrue) +func TestEngineTypeSet(t *testing.T) { + t.Parallel() - c.Assert(EngineTiDBOnly.Contains(EngineTiDB), IsTrue) - c.Assert(EngineTiDBOnly.Contains(EngineTiKV), IsFalse) - c.Assert(EngineTiDBOnly.Contains(EngineTiFlash), IsFalse) + require.True(t, EngineAll.Contains(EngineTiDB)) + require.True(t, EngineAll.Contains(EngineTiKV)) + require.True(t, EngineAll.Contains(EngineTiFlash)) - c.Assert(EngineTiKVOnly.Contains(EngineTiDB), IsFalse) - c.Assert(EngineTiKVOnly.Contains(EngineTiKV), IsTrue) - c.Assert(EngineTiKVOnly.Contains(EngineTiFlash), IsFalse) + require.True(t, EngineTiDBOnly.Contains(EngineTiDB)) + require.False(t, EngineTiDBOnly.Contains(EngineTiKV)) + require.False(t, EngineTiDBOnly.Contains(EngineTiFlash)) - c.Assert(EngineTiFlashOnly.Contains(EngineTiDB), IsFalse) - c.Assert(EngineTiFlashOnly.Contains(EngineTiKV), IsFalse) - c.Assert(EngineTiFlashOnly.Contains(EngineTiFlash), IsTrue) + require.False(t, EngineTiKVOnly.Contains(EngineTiDB)) + require.True(t, EngineTiKVOnly.Contains(EngineTiKV)) + require.False(t, EngineTiKVOnly.Contains(EngineTiFlash)) - c.Assert(EngineTiKVOrTiFlash.Contains(EngineTiDB), IsFalse) - c.Assert(EngineTiKVOrTiFlash.Contains(EngineTiKV), IsTrue) - c.Assert(EngineTiKVOrTiFlash.Contains(EngineTiFlash), IsTrue) + require.False(t, EngineTiFlashOnly.Contains(EngineTiDB)) + require.False(t, EngineTiFlashOnly.Contains(EngineTiKV)) + require.True(t, EngineTiFlashOnly.Contains(EngineTiFlash)) + + require.False(t, EngineTiKVOrTiFlash.Contains(EngineTiDB)) + require.True(t, EngineTiKVOrTiFlash.Contains(EngineTiKV)) + require.True(t, EngineTiKVOrTiFlash.Contains(EngineTiFlash)) } -func (s *testMemoSuite) TestFirstElemAfterDelete(c *C) { - oldExpr := NewGroupExpr(plannercore.LogicalLimit{Count: 10}.Init(s.sctx, 0)) - g := NewGroupWithSchema(oldExpr, s.schema) - newExpr := NewGroupExpr(plannercore.LogicalLimit{Count: 20}.Init(s.sctx, 0)) +func TestFirstElemAfterDelete(t *testing.T) { + t.Parallel() + + ctx := plannercore.MockContext() + oldExpr := NewGroupExpr(plannercore.LogicalLimit{Count: 10}.Init(ctx, 0)) + g := NewGroupWithSchema(oldExpr, expression.NewSchema()) + newExpr := NewGroupExpr(plannercore.LogicalLimit{Count: 20}.Init(ctx, 0)) g.Insert(newExpr) - c.Assert(g.GetFirstElem(OperandLimit), NotNil) - c.Assert(g.GetFirstElem(OperandLimit).Value, Equals, oldExpr) + require.NotNil(t, g.GetFirstElem(OperandLimit)) + require.Equal(t, oldExpr, g.GetFirstElem(OperandLimit).Value) g.Delete(oldExpr) - c.Assert(g.GetFirstElem(OperandLimit), NotNil) - c.Assert(g.GetFirstElem(OperandLimit).Value, Equals, newExpr) + require.NotNil(t, g.GetFirstElem(OperandLimit)) + require.Equal(t, newExpr, g.GetFirstElem(OperandLimit).Value) g.Delete(newExpr) - c.Assert(g.GetFirstElem(OperandLimit), IsNil) + require.Nil(t, g.GetFirstElem(OperandLimit)) } -func (s *testMemoSuite) TestBuildKeyInfo(c *C) { +func TestBuildKeyInfo(t *testing.T) { + t.Parallel() + + p := parser.New() + ctx := plannercore.MockContext() + is := infoschema.MockInfoSchema([]*model.TableInfo{plannercore.MockSignedTable()}) + // case 1: primary key has constant constraint - stmt1, err := s.ParseOneStmt("select a from t where a = 10", "", "") - c.Assert(err, IsNil) - p1, _, err := plannercore.BuildLogicalPlan(context.Background(), s.sctx, stmt1, s.is) - c.Assert(err, IsNil) + stmt1, err := p.ParseOneStmt("select a from t where a = 10", "", "") + require.NoError(t, err) + p1, _, err := plannercore.BuildLogicalPlan(context.Background(), ctx, stmt1, is) + require.NoError(t, err) logic1, ok := p1.(plannercore.LogicalPlan) - c.Assert(ok, IsTrue) + require.True(t, ok) group1 := Convert2Group(logic1) group1.BuildKeyInfo() - c.Assert(group1.Prop.MaxOneRow, IsTrue) - c.Assert(len(group1.Prop.Schema.Keys), Equals, 1) + require.True(t, group1.Prop.MaxOneRow) + require.Len(t, group1.Prop.Schema.Keys, 1) // case 2: group by column is key - stmt2, err := s.ParseOneStmt("select b, sum(a) from t group by b", "", "") - c.Assert(err, IsNil) - p2, _, err := plannercore.BuildLogicalPlan(context.Background(), s.sctx, stmt2, s.is) - c.Assert(err, IsNil) + stmt2, err := p.ParseOneStmt("select b, sum(a) from t group by b", "", "") + require.NoError(t, err) + p2, _, err := plannercore.BuildLogicalPlan(context.Background(), ctx, stmt2, is) + require.NoError(t, err) logic2, ok := p2.(plannercore.LogicalPlan) - c.Assert(ok, IsTrue) + require.True(t, ok) group2 := Convert2Group(logic2) group2.BuildKeyInfo() - c.Assert(group2.Prop.MaxOneRow, IsFalse) - c.Assert(len(group2.Prop.Schema.Keys), Equals, 1) + require.False(t, group2.Prop.MaxOneRow) + require.Len(t, group2.Prop.Schema.Keys, 1) // case 3: build key info for new Group - newSel := plannercore.LogicalSelection{}.Init(s.sctx, 0) + newSel := plannercore.LogicalSelection{}.Init(ctx, 0) newExpr1 := NewGroupExpr(newSel) newExpr1.SetChildren(group2) newGroup1 := NewGroupWithSchema(newExpr1, group2.Prop.Schema) newGroup1.BuildKeyInfo() - c.Assert(len(newGroup1.Prop.Schema.Keys), Equals, 1) + require.Len(t, newGroup1.Prop.Schema.Keys, 1) // case 4: build maxOneRow for new Group - newLimit := plannercore.LogicalLimit{Count: 1}.Init(s.sctx, 0) + newLimit := plannercore.LogicalLimit{Count: 1}.Init(ctx, 0) newExpr2 := NewGroupExpr(newLimit) newExpr2.SetChildren(group2) newGroup2 := NewGroupWithSchema(newExpr2, group2.Prop.Schema) newGroup2.BuildKeyInfo() - c.Assert(newGroup2.Prop.MaxOneRow, IsTrue) + require.True(t, newGroup2.Prop.MaxOneRow) } -func (s *testMemoSuite) TestExploreMark(c *C) { +func TestExploreMark(t *testing.T) { + t.Parallel() + mark := ExploreMark(0) - c.Assert(mark.Explored(0), IsFalse) - c.Assert(mark.Explored(1), IsFalse) + require.False(t, mark.Explored(0)) + require.False(t, mark.Explored(1)) + mark.SetExplored(0) mark.SetExplored(1) - c.Assert(mark.Explored(0), IsTrue) - c.Assert(mark.Explored(1), IsTrue) + require.True(t, mark.Explored(0)) + require.True(t, mark.Explored(1)) + mark.SetUnexplored(1) - c.Assert(mark.Explored(0), IsTrue) - c.Assert(mark.Explored(1), IsFalse) + require.True(t, mark.Explored(0)) + require.False(t, mark.Explored(1)) } diff --git a/planner/memo/main_test.go b/planner/memo/main_test.go new file mode 100644 index 0000000000000..1cba8d55c6153 --- /dev/null +++ b/planner/memo/main_test.go @@ -0,0 +1,26 @@ +// Copyright 2021 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// See the License for the specific language governing permissions and +// limitations under the License. + +package memo + +import ( + "testing" + + "github.com/pingcap/tidb/util/testbridge" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + testbridge.WorkaroundGoCheckFlags() + goleak.VerifyTestMain(m) +} diff --git a/planner/memo/pattern_test.go b/planner/memo/pattern_test.go index fb44a899fc0d9..cedbc35f76b22 100644 --- a/planner/memo/pattern_test.go +++ b/planner/memo/pattern_test.go @@ -14,73 +14,82 @@ package memo import ( - . "github.com/pingcap/check" + "testing" + plannercore "github.com/pingcap/tidb/planner/core" + "github.com/stretchr/testify/require" ) -func (s *testMemoSuite) TestGetOperand(c *C) { - c.Assert(GetOperand(&plannercore.LogicalJoin{}), Equals, OperandJoin) - c.Assert(GetOperand(&plannercore.LogicalAggregation{}), Equals, OperandAggregation) - c.Assert(GetOperand(&plannercore.LogicalProjection{}), Equals, OperandProjection) - c.Assert(GetOperand(&plannercore.LogicalSelection{}), Equals, OperandSelection) - c.Assert(GetOperand(&plannercore.LogicalApply{}), Equals, OperandApply) - c.Assert(GetOperand(&plannercore.LogicalMaxOneRow{}), Equals, OperandMaxOneRow) - c.Assert(GetOperand(&plannercore.LogicalTableDual{}), Equals, OperandTableDual) - c.Assert(GetOperand(&plannercore.DataSource{}), Equals, OperandDataSource) - c.Assert(GetOperand(&plannercore.LogicalUnionScan{}), Equals, OperandUnionScan) - c.Assert(GetOperand(&plannercore.LogicalUnionAll{}), Equals, OperandUnionAll) - c.Assert(GetOperand(&plannercore.LogicalSort{}), Equals, OperandSort) - c.Assert(GetOperand(&plannercore.LogicalTopN{}), Equals, OperandTopN) - c.Assert(GetOperand(&plannercore.LogicalLock{}), Equals, OperandLock) - c.Assert(GetOperand(&plannercore.LogicalLimit{}), Equals, OperandLimit) +func TestGetOperand(t *testing.T) { + t.Parallel() + require.Equal(t, OperandJoin, GetOperand(&plannercore.LogicalJoin{})) + require.Equal(t, OperandAggregation, GetOperand(&plannercore.LogicalAggregation{})) + require.Equal(t, OperandProjection, GetOperand(&plannercore.LogicalProjection{})) + require.Equal(t, OperandSelection, GetOperand(&plannercore.LogicalSelection{})) + require.Equal(t, OperandApply, GetOperand(&plannercore.LogicalApply{})) + require.Equal(t, OperandMaxOneRow, GetOperand(&plannercore.LogicalMaxOneRow{})) + require.Equal(t, OperandTableDual, GetOperand(&plannercore.LogicalTableDual{})) + require.Equal(t, OperandDataSource, GetOperand(&plannercore.DataSource{})) + require.Equal(t, OperandUnionScan, GetOperand(&plannercore.LogicalUnionScan{})) + require.Equal(t, OperandUnionAll, GetOperand(&plannercore.LogicalUnionAll{})) + require.Equal(t, OperandSort, GetOperand(&plannercore.LogicalSort{})) + require.Equal(t, OperandTopN, GetOperand(&plannercore.LogicalTopN{})) + require.Equal(t, OperandLock, GetOperand(&plannercore.LogicalLock{})) + require.Equal(t, OperandLimit, GetOperand(&plannercore.LogicalLimit{})) } -func (s *testMemoSuite) TestOperandMatch(c *C) { - c.Assert(OperandAny.Match(OperandLimit), IsTrue) - c.Assert(OperandAny.Match(OperandSelection), IsTrue) - c.Assert(OperandAny.Match(OperandJoin), IsTrue) - c.Assert(OperandAny.Match(OperandMaxOneRow), IsTrue) - c.Assert(OperandAny.Match(OperandAny), IsTrue) +func TestOperandMatch(t *testing.T) { + t.Parallel() + + require.True(t, OperandAny.Match(OperandLimit)) + require.True(t, OperandAny.Match(OperandSelection)) + require.True(t, OperandAny.Match(OperandJoin)) + require.True(t, OperandAny.Match(OperandMaxOneRow)) + require.True(t, OperandAny.Match(OperandAny)) - c.Assert(OperandLimit.Match(OperandAny), IsTrue) - c.Assert(OperandSelection.Match(OperandAny), IsTrue) - c.Assert(OperandJoin.Match(OperandAny), IsTrue) - c.Assert(OperandMaxOneRow.Match(OperandAny), IsTrue) - c.Assert(OperandAny.Match(OperandAny), IsTrue) + require.True(t, OperandLimit.Match(OperandAny)) + require.True(t, OperandSelection.Match(OperandAny)) + require.True(t, OperandJoin.Match(OperandAny)) + require.True(t, OperandMaxOneRow.Match(OperandAny)) + require.True(t, OperandAny.Match(OperandAny)) - c.Assert(OperandLimit.Match(OperandLimit), IsTrue) - c.Assert(OperandSelection.Match(OperandSelection), IsTrue) - c.Assert(OperandJoin.Match(OperandJoin), IsTrue) - c.Assert(OperandMaxOneRow.Match(OperandMaxOneRow), IsTrue) - c.Assert(OperandAny.Match(OperandAny), IsTrue) + require.True(t, OperandLimit.Match(OperandLimit)) + require.True(t, OperandSelection.Match(OperandSelection)) + require.True(t, OperandJoin.Match(OperandJoin)) + require.True(t, OperandMaxOneRow.Match(OperandMaxOneRow)) + require.True(t, OperandAny.Match(OperandAny)) - c.Assert(OperandLimit.Match(OperandSelection), IsFalse) - c.Assert(OperandLimit.Match(OperandJoin), IsFalse) - c.Assert(OperandLimit.Match(OperandMaxOneRow), IsFalse) + require.False(t, OperandLimit.Match(OperandSelection)) + require.False(t, OperandLimit.Match(OperandJoin)) + require.False(t, OperandLimit.Match(OperandMaxOneRow)) } -func (s *testMemoSuite) TestNewPattern(c *C) { +func TestNewPattern(t *testing.T) { + t.Parallel() + p := NewPattern(OperandAny, EngineAll) - c.Assert(p.Operand, Equals, OperandAny) - c.Assert(p.Children, IsNil) + require.Equal(t, OperandAny, p.Operand) + require.Nil(t, p.Children) p = NewPattern(OperandJoin, EngineAll) - c.Assert(p.Operand, Equals, OperandJoin) - c.Assert(p.Children, IsNil) + require.Equal(t, OperandJoin, p.Operand) + require.Nil(t, p.Children) } -func (s *testMemoSuite) TestPatternSetChildren(c *C) { +func TestPatternSetChildren(t *testing.T) { + t.Parallel() + p := NewPattern(OperandAny, EngineAll) p.SetChildren(NewPattern(OperandLimit, EngineAll)) - c.Assert(len(p.Children), Equals, 1) - c.Assert(p.Children[0].Operand, Equals, OperandLimit) - c.Assert(p.Children[0].Children, IsNil) + require.Len(t, p.Children, 1) + require.Equal(t, OperandLimit, p.Children[0].Operand) + require.Nil(t, p.Children[0].Children) p = NewPattern(OperandJoin, EngineAll) p.SetChildren(NewPattern(OperandProjection, EngineAll), NewPattern(OperandSelection, EngineAll)) - c.Assert(len(p.Children), Equals, 2) - c.Assert(p.Children[0].Operand, Equals, OperandProjection) - c.Assert(p.Children[0].Children, IsNil) - c.Assert(p.Children[1].Operand, Equals, OperandSelection) - c.Assert(p.Children[1].Children, IsNil) + require.Len(t, p.Children, 2) + require.Equal(t, OperandProjection, p.Children[0].Operand) + require.Nil(t, p.Children[0].Children) + require.Equal(t, OperandSelection, p.Children[1].Operand) + require.Nil(t, p.Children[1].Children) } From d92c49f359d7a419adce74eb43659e135dc64ecf Mon Sep 17 00:00:00 2001 From: glorv Date: Sat, 14 Aug 2021 14:53:58 +0800 Subject: [PATCH 04/27] br: add region range check for batch scan regions (#27192) --- br/pkg/errors/errors.go | 1 + br/pkg/lightning/backend/local/duplicate.go | 6 +-- br/pkg/lightning/backend/local/local.go | 2 +- br/pkg/lightning/backend/local/localhelper.go | 42 +------------------ .../backend/local/localhelper_test.go | 8 ++-- br/pkg/restore/split.go | 35 +++++++++++++--- br/pkg/restore/util_test.go | 10 ++++- errors.toml | 5 +++ 8 files changed, 53 insertions(+), 56 deletions(-) diff --git a/br/pkg/errors/errors.go b/br/pkg/errors/errors.go index 61ff1119145e0..a7a53f8042261 100644 --- a/br/pkg/errors/errors.go +++ b/br/pkg/errors/errors.go @@ -27,6 +27,7 @@ var ( ErrPDUpdateFailed = errors.Normalize("failed to update PD", errors.RFCCodeText("BR:PD:ErrPDUpdateFailed")) ErrPDLeaderNotFound = errors.Normalize("PD leader not found", errors.RFCCodeText("BR:PD:ErrPDLeaderNotFound")) ErrPDInvalidResponse = errors.Normalize("PD invalid response", errors.RFCCodeText("BR:PD:ErrPDInvalidResponse")) + ErrPDBatchScanRegion = errors.Normalize("batch scan region", errors.RFCCodeText("BR:PD:ErrPDBatchScanRegion")) ErrBackupChecksumMismatch = errors.Normalize("backup checksum mismatch", errors.RFCCodeText("BR:Backup:ErrBackupChecksumMismatch")) ErrBackupInvalidRange = errors.Normalize("backup range invalid", errors.RFCCodeText("BR:Backup:ErrBackupInvalidRange")) diff --git a/br/pkg/lightning/backend/local/duplicate.go b/br/pkg/lightning/backend/local/duplicate.go index 5967f885a1ab7..81911a34ccb30 100644 --- a/br/pkg/lightning/backend/local/duplicate.go +++ b/br/pkg/lightning/backend/local/duplicate.go @@ -121,7 +121,7 @@ func (manager *DuplicateManager) sendRequestToTiKV(ctx context.Context, startKey := codec.EncodeBytes([]byte{}, req.start) endKey := codec.EncodeBytes([]byte{}, req.end) - regions, err := paginateScanRegion(ctx, manager.splitCli, startKey, endKey, scanRegionLimit) + regions, err := restore.PaginateScanRegion(ctx, manager.splitCli, startKey, endKey, scanRegionLimit) if err != nil { return err } @@ -212,7 +212,7 @@ func (manager *DuplicateManager) sendRequestToTiKV(ctx context.Context, logutil.Region(region.Region), logutil.Leader(region.Leader), zap.String("RegionError", resp.GetRegionError().GetMessage())) - r, err := paginateScanRegion(ctx, manager.splitCli, watingRegions[idx].Region.GetStartKey(), watingRegions[idx].Region.GetEndKey(), scanRegionLimit) + r, err := restore.PaginateScanRegion(ctx, manager.splitCli, watingRegions[idx].Region.GetStartKey(), watingRegions[idx].Region.GetEndKey(), scanRegionLimit) if err != nil { unfinishedRegions = append(unfinishedRegions, watingRegions[idx]) } else { @@ -393,7 +393,7 @@ func (manager *DuplicateManager) getValues( l := len(handles) startKey := codec.EncodeBytes([]byte{}, handles[0]) endKey := codec.EncodeBytes([]byte{}, nextKey(handles[l-1])) - regions, err := paginateScanRegion(ctx, manager.splitCli, startKey, endKey, scanRegionLimit) + regions, err := restore.PaginateScanRegion(ctx, manager.splitCli, startKey, endKey, scanRegionLimit) if err != nil { log.L().Error("scan regions errors", zap.Error(err)) return handles diff --git a/br/pkg/lightning/backend/local/local.go b/br/pkg/lightning/backend/local/local.go index 74696277310b2..36b4362cfe6af 100644 --- a/br/pkg/lightning/backend/local/local.go +++ b/br/pkg/lightning/backend/local/local.go @@ -1720,7 +1720,7 @@ WriteAndIngest: } startKey := codec.EncodeBytes([]byte{}, pairStart) endKey := codec.EncodeBytes([]byte{}, nextKey(pairEnd)) - regions, err = paginateScanRegion(ctx, local.splitCli, startKey, endKey, scanRegionLimit) + regions, err = split.PaginateScanRegion(ctx, local.splitCli, startKey, endKey, scanRegionLimit) if err != nil || len(regions) == 0 { log.L().Warn("scan region failed", log.ShortError(err), zap.Int("region_len", len(regions)), logutil.Key("startKey", startKey), logutil.Key("endKey", endKey), zap.Int("retry", retry)) diff --git a/br/pkg/lightning/backend/local/localhelper.go b/br/pkg/lightning/backend/local/localhelper.go index c27ef0b7985fe..34fa23a60321b 100644 --- a/br/pkg/lightning/backend/local/localhelper.go +++ b/br/pkg/lightning/backend/local/localhelper.go @@ -102,7 +102,7 @@ func (local *local) SplitAndScatterRegionByRanges( } } var regions []*split.RegionInfo - regions, err = paginateScanRegion(ctx, local.splitCli, minKey, maxKey, 128) + regions, err = split.PaginateScanRegion(ctx, local.splitCli, minKey, maxKey, 128) log.L().Info("paginate scan regions", zap.Int("count", len(regions)), logutil.Key("start", minKey), logutil.Key("end", maxKey)) if err != nil { @@ -111,12 +111,6 @@ func (local *local) SplitAndScatterRegionByRanges( continue } - if len(regions) == 0 { - log.L().Warn("paginate scan region returns empty result", logutil.Key("minKey", minKey), logutil.Key("maxKey", maxKey), - zap.Int("retry", i)) - return errors.New("paginate scan region returns empty result") - } - log.L().Info("paginate scan region finished", logutil.Key("minKey", minKey), logutil.Key("maxKey", maxKey), zap.Int("regions", len(regions))) @@ -362,40 +356,6 @@ func fetchTableRegionSizeStats(ctx context.Context, db *sql.DB, tableID int64) ( return stats, errors.Trace(err) } -func paginateScanRegion( - ctx context.Context, client split.SplitClient, startKey, endKey []byte, limit int, -) ([]*split.RegionInfo, error) { - if len(endKey) != 0 && bytes.Compare(startKey, endKey) >= 0 { - log.L().Error("startKey >= endKey when paginating scan region", - logutil.Key("startKey", startKey), - logutil.Key("endKey", endKey)) - return nil, errors.Errorf("startKey >= endKey when paginating scan region") - } - - var regions []*split.RegionInfo - for { - batch, err := client.ScanRegions(ctx, startKey, endKey, limit) - if err != nil { - return nil, errors.Trace(err) - } - regions = append(regions, batch...) - if len(batch) < limit { - // No more region - break - } - startKey = batch[len(batch)-1].Region.GetEndKey() - if len(startKey) == 0 || - (len(endKey) > 0 && bytes.Compare(startKey, endKey) >= 0) { - // All key space have scanned - break - } - } - sort.Slice(regions, func(i, j int) bool { - return bytes.Compare(regions[i].Region.StartKey, regions[j].Region.StartKey) < 0 - }) - return regions, nil -} - func (local *local) BatchSplitRegions(ctx context.Context, region *split.RegionInfo, keys [][]byte) (*split.RegionInfo, []*split.RegionInfo, error) { region, newRegions, err := local.splitCli.BatchSplitRegionsWithOrigin(ctx, region, keys) if err != nil { diff --git a/br/pkg/lightning/backend/local/localhelper_test.go b/br/pkg/lightning/backend/local/localhelper_test.go index c6820d7078107..be6c5f013ddfc 100644 --- a/br/pkg/lightning/backend/local/localhelper_test.go +++ b/br/pkg/lightning/backend/local/localhelper_test.go @@ -409,7 +409,7 @@ func (s *localSuite) doTestBatchSplitRegionByRanges(ctx context.Context, c *C, h // current region ranges: [, aay), [aay, bba), [bba, bbh), [bbh, cca), [cca, ) rangeStart := codec.EncodeBytes([]byte{}, []byte("b")) rangeEnd := codec.EncodeBytes([]byte{}, []byte("c")) - regions, err := paginateScanRegion(ctx, client, rangeStart, rangeEnd, 5) + regions, err := restore.PaginateScanRegion(ctx, client, rangeStart, rangeEnd, 5) c.Assert(err, IsNil) // regions is: [aay, bba), [bba, bbh), [bbh, cca) checkRegionRanges(c, regions, [][]byte{[]byte("aay"), []byte("bba"), []byte("bbh"), []byte("cca")}) @@ -434,7 +434,7 @@ func (s *localSuite) doTestBatchSplitRegionByRanges(ctx context.Context, c *C, h splitHook.check(c, client) // check split ranges - regions, err = paginateScanRegion(ctx, client, rangeStart, rangeEnd, 5) + regions, err = restore.PaginateScanRegion(ctx, client, rangeStart, rangeEnd, 5) c.Assert(err, IsNil) result := [][]byte{ []byte("b"), []byte("ba"), []byte("bb"), []byte("bba"), []byte("bbh"), []byte("bc"), @@ -498,7 +498,7 @@ func (h *scanRegionEmptyHook) AfterScanRegions(res []*restore.RegionInfo, err er } func (s *localSuite) TestBatchSplitRegionByRangesScanFailed(c *C) { - s.doTestBatchSplitRegionByRanges(context.Background(), c, &scanRegionEmptyHook{}, "paginate scan region returns empty result", defaultHook{}) + s.doTestBatchSplitRegionByRanges(context.Background(), c, &scanRegionEmptyHook{}, ".*scan region return empty result.*", defaultHook{}) } type splitRegionEpochNotMatchHook struct { @@ -648,7 +648,7 @@ func (s *localSuite) doTestBatchSplitByRangesWithClusteredIndex(c *C, hook clien startKey := codec.EncodeBytes([]byte{}, rangeKeys[0]) endKey := codec.EncodeBytes([]byte{}, rangeKeys[len(rangeKeys)-1]) // check split ranges - regions, err := paginateScanRegion(ctx, client, startKey, endKey, 5) + regions, err := restore.PaginateScanRegion(ctx, client, startKey, endKey, 5) c.Assert(err, IsNil) c.Assert(len(regions), Equals, len(ranges)+1) diff --git a/br/pkg/restore/split.go b/br/pkg/restore/split.go index 913d64e2a5637..35244b9b1bd60 100644 --- a/br/pkg/restore/split.go +++ b/br/pkg/restore/split.go @@ -301,13 +301,14 @@ func PaginateScanRegion( ctx context.Context, client SplitClient, startKey, endKey []byte, limit int, ) ([]*RegionInfo, error) { if len(endKey) != 0 && bytes.Compare(startKey, endKey) >= 0 { - return nil, errors.Annotatef(berrors.ErrRestoreInvalidRange, "startKey >= endKey, startKey %s, endkey %s", + return nil, errors.Annotatef(berrors.ErrRestoreInvalidRange, "startKey >= endKey, startKey: %s, endkey: %s", hex.EncodeToString(startKey), hex.EncodeToString(endKey)) } regions := []*RegionInfo{} + scanStartKey := startKey for { - batch, err := client.ScanRegions(ctx, startKey, endKey, limit) + batch, err := client.ScanRegions(ctx, scanStartKey, endKey, limit) if err != nil { return nil, errors.Trace(err) } @@ -316,13 +317,37 @@ func PaginateScanRegion( // No more region break } - startKey = batch[len(batch)-1].Region.GetEndKey() - if len(startKey) == 0 || - (len(endKey) > 0 && bytes.Compare(startKey, endKey) >= 0) { + scanStartKey = batch[len(batch)-1].Region.GetEndKey() + if len(scanStartKey) == 0 || + (len(endKey) > 0 && bytes.Compare(scanStartKey, endKey) >= 0) { // All key space have scanned break } } + + // current pd can't guarantee the consistency of returned regions + if len(regions) == 0 { + return nil, errors.Annotatef(berrors.ErrPDBatchScanRegion, "scan region return empty result, startKey: %s, endkey: %s", + hex.EncodeToString(startKey), hex.EncodeToString(endKey)) + } + + if bytes.Compare(regions[0].Region.StartKey, startKey) > 0 { + return nil, errors.Annotatef(berrors.ErrPDBatchScanRegion, "first region's startKey > startKey, startKey: %s, regionStartKey: %s", + hex.EncodeToString(startKey), hex.EncodeToString(regions[0].Region.StartKey)) + } else if len(regions[len(regions)-1].Region.EndKey) != 0 && bytes.Compare(regions[len(regions)-1].Region.EndKey, endKey) < 0 { + return nil, errors.Annotatef(berrors.ErrPDBatchScanRegion, "last region's endKey < startKey, startKey: %s, regionStartKey: %s", + hex.EncodeToString(endKey), hex.EncodeToString(regions[len(regions)-1].Region.EndKey)) + } + + cur := regions[0] + for _, r := range regions[1:] { + if !bytes.Equal(cur.Region.EndKey, r.Region.StartKey) { + return nil, errors.Annotatef(berrors.ErrPDBatchScanRegion, "region endKey not equal to next region startKey, endKey: %s, startKey: %s", + hex.EncodeToString(cur.Region.EndKey), hex.EncodeToString(r.Region.StartKey)) + } + cur = r + } + return regions, nil } diff --git a/br/pkg/restore/util_test.go b/br/pkg/restore/util_test.go index 52c035be78919..4b16a19fee093 100644 --- a/br/pkg/restore/util_test.go +++ b/br/pkg/restore/util_test.go @@ -225,8 +225,7 @@ func (s *testRestoreUtilSuite) TestPaginateScanRegion(c *C) { regionMap := make(map[uint64]*restore.RegionInfo) regions := []*restore.RegionInfo{} batch, err := restore.PaginateScanRegion(ctx, NewTestClient(stores, regionMap, 0), []byte{}, []byte{}, 3) - c.Assert(err, IsNil) - c.Assert(batch, DeepEquals, regions) + c.Assert(err, ErrorMatches, ".*scan region return empty result.*") regionMap, regions = makeRegions(1) batch, err = restore.PaginateScanRegion(ctx, NewTestClient(stores, regionMap, 0), []byte{}, []byte{}, 3) @@ -266,4 +265,11 @@ func (s *testRestoreUtilSuite) TestPaginateScanRegion(c *C) { _, err = restore.PaginateScanRegion(ctx, NewTestClient(stores, regionMap, 0), []byte{2}, []byte{1}, 3) c.Assert(err, ErrorMatches, ".*startKey >= endKey.*") + + // make the regionMap losing some region, this will cause scan region check fails + delete(regionMap, uint64(3)) + _, err = restore.PaginateScanRegion( + ctx, NewTestClient(stores, regionMap, 0), regions[1].Region.EndKey, regions[5].Region.EndKey, 3) + c.Assert(err, ErrorMatches, ".*region endKey not equal to next region startKey.*") + } diff --git a/errors.toml b/errors.toml index 852dda7a7bac3..cd2bdd0b89abc 100644 --- a/errors.toml +++ b/errors.toml @@ -121,6 +121,11 @@ error = ''' storage is not tikv ''' +["BR:PD:ErrPDBatchScanRegion"] +error = ''' +batch scan region +''' + ["BR:PD:ErrPDInvalidResponse"] error = ''' PD invalid response From da8bb5ea8c00bcbbb10afd0ae41a42fa7780d7f6 Mon Sep 17 00:00:00 2001 From: Manjusaka Date: Mon, 16 Aug 2021 09:55:58 +0800 Subject: [PATCH 05/27] server: replace `ioutil.TempDir` by `os.MkdirTemp` (#27226) --- server/tidb_test.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/server/tidb_test.go b/server/tidb_test.go index 1ac8924fb82d4..b6da1ace593f5 100644 --- a/server/tidb_test.go +++ b/server/tidb_test.go @@ -25,7 +25,6 @@ import ( "database/sql" "encoding/pem" "fmt" - "io/ioutil" "math/big" "net/http" "os" @@ -461,7 +460,7 @@ func (ts *tidbTestSuite) TestSocket(c *C) { func (ts *tidbTestSuite) TestSocketAndIp(c *C) { osTempDir := os.TempDir() - tempDir, err := ioutil.TempDir(osTempDir, "tidb-test.*.socket") + tempDir, err := os.MkdirTemp(osTempDir, "tidb-test.*.socket") c.Assert(err, IsNil) socketFile := tempDir + "/tidbtest.sock" // Unix Socket does not work on Windows, so '/' should be OK defer os.RemoveAll(tempDir) @@ -619,7 +618,7 @@ func (ts *tidbTestSuite) TestSocketAndIp(c *C) { // TestOnlySocket for server configuration without network interface for mysql clients func (ts *tidbTestSuite) TestOnlySocket(c *C) { osTempDir := os.TempDir() - tempDir, err := ioutil.TempDir(osTempDir, "tidb-test.*.socket") + tempDir, err := os.MkdirTemp(osTempDir, "tidb-test.*.socket") c.Assert(err, IsNil) socketFile := tempDir + "/tidbtest.sock" // Unix Socket does not work on Windows, so '/' should be OK defer os.RemoveAll(tempDir) From 155ead5370ca95cd6d547309a6034b721bb5d939 Mon Sep 17 00:00:00 2001 From: Song Gao Date: Mon, 16 Aug 2021 11:51:59 +0800 Subject: [PATCH 06/27] executor: fix unstable TestSelectAsOf (#27163) --- executor/adapter.go | 10 ------ executor/stale_txn_test.go | 69 +++++++++++++++++++++----------------- expression/builtin_time.go | 4 +++ 3 files changed, 43 insertions(+), 40 deletions(-) diff --git a/executor/adapter.go b/executor/adapter.go index 7dd83d2de71b1..f31e77e8b0003 100644 --- a/executor/adapter.go +++ b/executor/adapter.go @@ -345,16 +345,6 @@ func (a *ExecStmt) Exec(ctx context.Context) (_ sqlexec.RecordSet, err error) { failpoint.Return() } }) - failpoint.Inject("assertStaleTSOWithTolerance", func(val failpoint.Value) { - if n, ok := val.(int); ok { - // Convert to seconds - startTS := oracle.ExtractPhysical(a.SnapshotTS) / 1000 - if int(startTS) <= n-1 || n+1 <= int(startTS) { - panic(fmt.Sprintf("different tso %d != %d", n, startTS)) - } - failpoint.Return() - } - }) sctx := a.Ctx ctx = util.SetSessionID(ctx, sctx.GetSessionVars().ConnectionID) if _, ok := a.Plan.(*plannercore.Analyze); ok && sctx.GetSessionVars().InRestrictedSQL { diff --git a/executor/stale_txn_test.go b/executor/stale_txn_test.go index 0b021c39ab1ef..6ac9b075ced56 100644 --- a/executor/stale_txn_test.go +++ b/executor/stale_txn_test.go @@ -108,16 +108,15 @@ func (s *testStaleTxnSerialSuite) TestSelectAsOf(c *C) { tk.MustExec(`drop table if exists b`) tk.MustExec(`drop table if exists t`) }() - time.Sleep(2 * time.Second) + time.Sleep(3 * time.Second) now := time.Now() - time.Sleep(2 * time.Second) - testcases := []struct { + // test setSQL with extract timestamp + testcases1 := []struct { setTxnSQL string name string sql string expectPhysicalTS int64 - preSec int64 // IsStaleness is auto cleanup in select stmt. errorStr string }{ @@ -138,16 +137,41 @@ func (s *testStaleTxnSerialSuite) TestSelectAsOf(c *C) { sql: fmt.Sprintf("select * from t as of timestamp '%s';", now.Format("2006-1-2 15:04:05")), expectPhysicalTS: now.Unix(), }, - { - name: "NormalRead", - sql: `select * from b;`, - preSec: 0, - }, { name: "TimestampExactRead2", sql: fmt.Sprintf("select * from t as of timestamp TIMESTAMP('%s');", now.Format("2006-1-2 15:04:05")), expectPhysicalTS: now.Unix(), }, + } + + for _, testcase := range testcases1 { + c.Log(testcase.name) + if len(testcase.setTxnSQL) > 0 { + tk.MustExec(testcase.setTxnSQL) + } + c.Assert(failpoint.Enable("github.com/pingcap/tidb/executor/assertStaleTSO", fmt.Sprintf(`return(%d)`, testcase.expectPhysicalTS)), IsNil) + rs, err := tk.Exec(testcase.sql) + if len(testcase.errorStr) != 0 { + c.Assert(err, ErrorMatches, testcase.errorStr) + continue + } + c.Assert(err, IsNil, Commentf("sql:%s, error stack %v", testcase.sql, errors.ErrorStack(err))) + if rs != nil { + rs.Close() + } + c.Assert(failpoint.Disable("github.com/pingcap/tidb/executor/assertStaleTSO"), IsNil) + if len(testcase.setTxnSQL) > 0 { + c.Assert(tk.Se.GetSessionVars().TxnReadTS.PeakTxnReadTS(), Equals, uint64(0)) + } + } + + // test stale sql by calculating with NOW() function + testcases2 := []struct { + name string + sql string + preSec int64 + errorStr string + }{ { name: "TimestampExactRead3", sql: `select * from t as of timestamp NOW() - INTERVAL 2 SECOND;`, @@ -178,11 +202,6 @@ func (s *testStaleTxnSerialSuite) TestSelectAsOf(c *C) { sql: `select * from t, b as of timestamp TIMESTAMP(NOW() - INTERVAL 1 SECOND);`, errorStr: ".*can not set different time in the as of.*", }, - { - name: "NomalRead", - sql: `select * from t, b;`, - preSec: 0, - }, { name: "TimestampExactRead9", sql: `select * from (select * from t as of timestamp TIMESTAMP(NOW() - INTERVAL 1 SECOND), b as of timestamp TIMESTAMP(NOW() - INTERVAL 1 SECOND)) as c, b;`, @@ -201,15 +220,11 @@ func (s *testStaleTxnSerialSuite) TestSelectAsOf(c *C) { }, } - for _, testcase := range testcases { + for _, testcase := range testcases2 { c.Log(testcase.name) - if len(testcase.setTxnSQL) > 0 { - tk.MustExec(testcase.setTxnSQL) - } - if testcase.expectPhysicalTS > 0 { - c.Assert(failpoint.Enable("github.com/pingcap/tidb/executor/assertStaleTSO", fmt.Sprintf(`return(%d)`, testcase.expectPhysicalTS)), IsNil) - } else if testcase.preSec > 0 { - c.Assert(failpoint.Enable("github.com/pingcap/tidb/executor/assertStaleTSOWithTolerance", fmt.Sprintf(`return(%d)`, time.Now().Unix()-testcase.preSec)), IsNil) + if testcase.preSec > 0 { + c.Assert(failpoint.Enable("github.com/pingcap/tidb/expression/injectNow", fmt.Sprintf(`return(%d)`, now.Unix())), IsNil) + c.Assert(failpoint.Enable("github.com/pingcap/tidb/executor/assertStaleTSO", fmt.Sprintf(`return(%d)`, now.Unix()-testcase.preSec)), IsNil) } rs, err := tk.Exec(testcase.sql) if len(testcase.errorStr) != 0 { @@ -220,17 +235,11 @@ func (s *testStaleTxnSerialSuite) TestSelectAsOf(c *C) { if rs != nil { rs.Close() } - if testcase.expectPhysicalTS > 0 { + if testcase.preSec > 0 { + c.Assert(failpoint.Disable("github.com/pingcap/tidb/expression/injectNow"), IsNil) c.Assert(failpoint.Disable("github.com/pingcap/tidb/executor/assertStaleTSO"), IsNil) - } else if testcase.preSec > 0 { - c.Assert(failpoint.Disable("github.com/pingcap/tidb/executor/assertStaleTSOWithTolerance"), IsNil) - } - if len(testcase.setTxnSQL) > 0 { - c.Assert(tk.Se.GetSessionVars().TxnReadTS.PeakTxnReadTS(), Equals, uint64(0)) } } - failpoint.Disable("github.com/pingcap/tidb/executor/assertStaleTSO") - failpoint.Disable("github.com/pingcap/tidb/executor/assertStaleTSOWithTolerance") } func (s *testStaleTxnSerialSuite) TestStaleReadKVRequest(c *C) { diff --git a/expression/builtin_time.go b/expression/builtin_time.go index ee36fc7d6a8e6..445d623f17579 100644 --- a/expression/builtin_time.go +++ b/expression/builtin_time.go @@ -2534,6 +2534,10 @@ func evalNowWithFsp(ctx sessionctx.Context, fsp int8) (types.Time, bool, error) return types.ZeroTime, true, err } + failpoint.Inject("injectNow", func(val failpoint.Value) { + nowTs = time.Unix(int64(val.(int)), 0) + }) + // In MySQL's implementation, now() will truncate the result instead of rounding it. // Results below are from MySQL 5.7, which can prove it. // mysql> select now(6), now(3), now(); From 36ed0936a6a793259698ec8512f31df69aed4bf9 Mon Sep 17 00:00:00 2001 From: JaySon Date: Mon, 16 Aug 2021 12:59:59 +0800 Subject: [PATCH 07/27] expression: Improve the performance of `str_to_date` (#25389) --- types/format_test.go | 6 ++ types/time.go | 173 ++++++++++++++++--------------------------- types/time_test.go | 16 ++++ 3 files changed, 85 insertions(+), 110 deletions(-) diff --git a/types/format_test.go b/types/format_test.go index c7d328a07805a..269b1741d2028 100644 --- a/types/format_test.go +++ b/types/format_test.go @@ -85,6 +85,7 @@ func (s *testTimeSuite) TestStrToDate(c *C) { expect types.CoreTime }{ {`01,05,2013`, `%d,%m,%Y`, types.FromDate(2013, 5, 1, 0, 0, 0, 0)}, + {`5 12 2021`, `%m%d%Y`, types.FromDate(2021, 5, 12, 0, 0, 0, 0)}, {`May 01, 2013`, `%M %d,%Y`, types.FromDate(2013, 5, 1, 0, 0, 0, 0)}, {`a09:30:17`, `a%h:%i:%s`, types.FromDate(0, 0, 0, 9, 30, 17, 0)}, {`09:30:17a`, `%h:%i:%s`, types.FromDate(0, 0, 0, 9, 30, 17, 0)}, @@ -118,6 +119,9 @@ func (s *testTimeSuite) TestStrToDate(c *C) { {`70/10/22`, `%Y/%m/%d`, types.FromDate(1970, 10, 22, 0, 0, 0, 0)}, {`18/10/22`, `%Y/%m/%d`, types.FromDate(2018, 10, 22, 0, 0, 0, 0)}, {`100/10/22`, `%Y/%m/%d`, types.FromDate(100, 10, 22, 0, 0, 0, 0)}, + {`09/10/1021`, `%d/%m/%y`, types.FromDate(2010, 10, 9, 0, 0, 0, 0)}, // '%y' only accept up to 2 digits for year + {`09/10/1021`, `%d/%m/%Y`, types.FromDate(1021, 10, 9, 0, 0, 0, 0)}, // '%Y' accept up to 4 digits for year + {`09/10/10`, `%d/%m/%Y`, types.FromDate(2010, 10, 9, 0, 0, 0, 0)}, // '%Y' will fix the year for only 2 digits //'%b'/'%M' should be case insensitive {"31/may/2016 12:34:56.1234", "%d/%b/%Y %H:%i:%S.%f", types.FromDate(2016, 5, 31, 12, 34, 56, 123400)}, {"30/april/2016 12:34:56.", "%d/%M/%Y %H:%i:%s.%f", types.FromDate(2016, 4, 30, 12, 34, 56, 0)}, @@ -165,6 +169,8 @@ func (s *testTimeSuite) TestStrToDate(c *C) { {`04/31/2004`, `%m/%d/%Y`}, // not exists in the real world {"29/Feb/2021 12:34:56.", "%d/%b/%Y %H:%i:%s.%f"}, // Feb 29 in non-leap-year + {`512 2021`, `%m%d %Y`}, // MySQL will try to parse '51' for '%m', fail + {`a09:30:17`, `%h:%i:%s`}, // format mismatch {`12:43:24 a`, `%r`}, // followed by incomplete 'AM'/'PM' {`23:60:12`, `%T`}, // invalid minute diff --git a/types/time.go b/types/time.go index 93195bf8d1bdb..ba6a52b52e42f 100644 --- a/types/time.go +++ b/types/time.go @@ -2890,7 +2890,7 @@ var dateFormatParserTable = map[string]dateFormatParser{ "%H": hour24Numeric, // Hour (00..23) "%I": hour12Numeric, // Hour (01..12) "%i": minutesNumeric, // Minutes, numeric (00..59) - "%j": dayOfYearThreeDigits, // Day of year (001..366) + "%j": dayOfYearNumeric, // Day of year (001..366) "%k": hour24Numeric, // Hour (0..23) "%l": hour12Numeric, // Hour (1..12) "%M": fullNameMonth, // Month name (January..December) @@ -2959,40 +2959,38 @@ func matchDateWithToken(t *CoreTime, date string, token string, ctx map[string]i return date, false } -func parseDigits(input string, count int) (int, bool) { - if count <= 0 || len(input) < count { - return 0, false +// Try to parse digits with number of `limit` starting from `input` +// Return if success. +// Return <_, 0> if fail. +func parseNDigits(input string, limit int) (int, int) { + if limit <= 0 { + return 0, 0 } - v, err := strconv.ParseUint(input[:count], 10, 64) - if err != nil { - return int(v), false + var num uint64 = 0 + var step = 0 + for ; step < len(input) && step < limit && '0' <= input[step] && input[step] <= '9'; step++ { + num = num*10 + uint64(input[step]-'0') } - return int(v), true + return int(num), step } func secondsNumeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneOrTwoDigitRegex.FindString(input) - length := len(result) - - v, succ := parseDigits(input, length) - if !succ || v >= 60 { + v, step := parseNDigits(input, 2) + if step <= 0 || v >= 60 { return input, false } t.setSecond(uint8(v)) - return input[length:], true + return input[step:], true } func minutesNumeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneOrTwoDigitRegex.FindString(input) - length := len(result) - - v, succ := parseDigits(input, length) - if !succ || v >= 60 { + v, step := parseNDigits(input, 2) + if step <= 0 || v >= 60 { return input, false } t.setMinute(uint8(v)) - return input[length:], true + return input[step:], true } type parseState int32 @@ -3023,10 +3021,8 @@ func time12Hour(t *CoreTime, input string, ctx map[string]int) (string, bool) { /// Note that we should update `t` as soon as possible, or we /// can not get correct result for incomplete input like "12:13" /// that is shorter than "hh:mm:ss" - result := oneOrTwoDigitRegex.FindString(input) // 1..12 - length := len(result) - hour, succ := parseDigits(input, length) - if !succ || hour > 12 || hour == 0 { + hour, step := parseNDigits(input, 2) // 1..12 + if step <= 0 || hour > 12 || hour == 0 { return input, parseStateFail } // Handle special case: 12:34:56 AM -> 00:34:56 @@ -3038,32 +3034,28 @@ func time12Hour(t *CoreTime, input string, ctx map[string]int) (string, bool) { // ':' var state parseState - if input, state = parseSep(input[length:]); state != parseStateNormal { + if input, state = parseSep(input[step:]); state != parseStateNormal { return input, state } - result = oneOrTwoDigitRegex.FindString(input) // 0..59 - length = len(result) - minute, succ := parseDigits(input, length) - if !succ || minute > 59 { + minute, step := parseNDigits(input, 2) // 0..59 + if step <= 0 || minute > 59 { return input, parseStateFail } t.setMinute(uint8(minute)) // ':' - if input, state = parseSep(input[length:]); state != parseStateNormal { + if input, state = parseSep(input[step:]); state != parseStateNormal { return input, state } - result = oneOrTwoDigitRegex.FindString(input) // 0..59 - length = len(result) - second, succ := parseDigits(input, length) - if !succ || second > 59 { + second, step := parseNDigits(input, 2) // 0..59 + if step <= 0 || second > 59 { return input, parseStateFail } t.setSecond(uint8(second)) - input = skipWhiteSpace(input[length:]) + input = skipWhiteSpace(input[step:]) if len(input) == 0 { // No "AM"/"PM" suffix, it is ok return input, parseStateEndOfLine @@ -3097,41 +3089,35 @@ func time24Hour(t *CoreTime, input string, ctx map[string]int) (string, bool) { /// Note that we should update `t` as soon as possible, or we /// can not get correct result for incomplete input like "12:13" /// that is shorter than "hh:mm:ss" - result := oneOrTwoDigitRegex.FindString(input) // 0..23 - length := len(result) - hour, succ := parseDigits(input, length) - if !succ || hour > 23 { + hour, step := parseNDigits(input, 2) // 0..23 + if step <= 0 || hour > 23 { return input, parseStateFail } t.setHour(uint8(hour)) // ':' var state parseState - if input, state = parseSep(input[length:]); state != parseStateNormal { + if input, state = parseSep(input[step:]); state != parseStateNormal { return input, state } - result = oneOrTwoDigitRegex.FindString(input) // 0..59 - length = len(result) - minute, succ := parseDigits(input, length) - if !succ || minute > 59 { + minute, step := parseNDigits(input, 2) // 0..59 + if step <= 0 || minute > 59 { return input, parseStateFail } t.setMinute(uint8(minute)) // ':' - if input, state = parseSep(input[length:]); state != parseStateNormal { + if input, state = parseSep(input[step:]); state != parseStateNormal { return input, state } - result = oneOrTwoDigitRegex.FindString(input) // 0..59 - length = len(result) - second, succ := parseDigits(input, length) - if !succ || second > 59 { + second, step := parseNDigits(input, 2) // 0..59 + if step <= 0 || second > 59 { return input, parseStateFail } t.setSecond(uint8(second)) - return input[length:], parseStateNormal + return input[step:], parseStateNormal } remain, state := tryParse(input) @@ -3163,9 +3149,6 @@ func isAMOrPM(t *CoreTime, input string, ctx map[string]int) (string, bool) { return input[2:], true } -// digitRegex: it was used to scan a variable-length monthly day or month in the string. Ex: "01" or "1" or "30" -var oneOrTwoDigitRegex = regexp.MustCompile("^[0-9]{1,2}") - // oneToSixDigitRegex: it was just for [0, 999999] var oneToSixDigitRegex = regexp.MustCompile("^[0-9]{0,6}") @@ -3173,64 +3156,45 @@ var oneToSixDigitRegex = regexp.MustCompile("^[0-9]{0,6}") var numericRegex = regexp.MustCompile("[0-9]+") func dayOfMonthNumeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneOrTwoDigitRegex.FindString(input) // 0..31 - length := len(result) - - v, ok := parseDigits(input, length) - - if !ok || v > 31 { + v, step := parseNDigits(input, 2) // 0..31 + if step <= 0 || v > 31 { return input, false } t.setDay(uint8(v)) - return input[length:], true + return input[step:], true } func hour24Numeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneOrTwoDigitRegex.FindString(input) // 0..23 - length := len(result) - - v, ok := parseDigits(input, length) - - if !ok || v > 23 { + v, step := parseNDigits(input, 2) // 0..23 + if step <= 0 || v > 23 { return input, false } t.setHour(uint8(v)) ctx["%H"] = v - return input[length:], true + return input[step:], true } func hour12Numeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneOrTwoDigitRegex.FindString(input) // 1..12 - length := len(result) - - v, ok := parseDigits(input, length) - - if !ok || v > 12 || v == 0 { + v, step := parseNDigits(input, 2) // 1..12 + if step <= 0 || v > 12 || v == 0 { return input, false } t.setHour(uint8(v)) ctx["%h"] = v - return input[length:], true + return input[step:], true } func microSeconds(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneToSixDigitRegex.FindString(input) - length := len(result) - if length == 0 { + v, step := parseNDigits(input, 6) + if step <= 0 { t.setMicrosecond(0) return input, true } - - v, ok := parseDigits(input, length) - - if !ok { - return input, false - } for v > 0 && v*10 < 1000000 { v *= 10 } t.setMicrosecond(uint32(v)) - return input[length:], true + return input[step:], true } func yearNumericFourDigits(t *CoreTime, input string, ctx map[string]int) (string, bool) { @@ -3242,32 +3206,25 @@ func yearNumericTwoDigits(t *CoreTime, input string, ctx map[string]int) (string } func yearNumericNDigits(t *CoreTime, input string, ctx map[string]int, n int) (string, bool) { - effectiveCount, effectiveValue := 0, 0 - for effectiveCount+1 <= n { - value, succeed := parseDigits(input, effectiveCount+1) - if !succeed { - break - } - effectiveCount++ - effectiveValue = value - } - if effectiveCount == 0 { + year, step := parseNDigits(input, n) + if step <= 0 { return input, false + } else if step <= 2 { + year = adjustYear(year) } - if effectiveCount <= 2 { - effectiveValue = adjustYear(effectiveValue) - } - t.setYear(uint16(effectiveValue)) - return input[effectiveCount:], true + t.setYear(uint16(year)) + return input[step:], true } -func dayOfYearThreeDigits(t *CoreTime, input string, ctx map[string]int) (string, bool) { - v, succ := parseDigits(input, 3) - if !succ || v == 0 || v > 366 { +func dayOfYearNumeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { + // MySQL declares that "%j" should be "Day of year (001..366)". But actually, + // it accepts a number that is up to three digits, which range is [1, 999]. + v, step := parseNDigits(input, 3) + if step <= 0 || v == 0 { return input, false } ctx["%j"] = v - return input[3:], true + return input[step:], true } func abbreviatedMonth(t *CoreTime, input string, ctx map[string]int) (string, bool) { @@ -3299,16 +3256,12 @@ func fullNameMonth(t *CoreTime, input string, ctx map[string]int) (string, bool) } func monthNumeric(t *CoreTime, input string, ctx map[string]int) (string, bool) { - result := oneOrTwoDigitRegex.FindString(input) // 1..12 - length := len(result) - - v, ok := parseDigits(input, length) - - if !ok || v > 12 { + v, step := parseNDigits(input, 2) // 1..12 + if step <= 0 || v > 12 { return input, false } t.setMonth(uint8(v)) - return input[length:], true + return input[step:], true } // DateFSP gets fsp from date string. diff --git a/types/time_test.go b/types/time_test.go index ee2ceda3a3630..10dddd672866b 100644 --- a/types/time_test.go +++ b/types/time_test.go @@ -2116,3 +2116,19 @@ func BenchmarkParseDatetimeFormat(b *testing.B) { benchmarkDatetimeFormat(b, "datetime without timezone", sc, "2020-10-10T10:10:10") benchmarkDatetimeFormat(b, "datetime with timezone", sc, "2020-10-10T10:10:10Z+08:00") } + +func benchmarkStrToDate(b *testing.B, name string, sc *stmtctx.StatementContext, str, format string) { + b.Run(name, func(b *testing.B) { + for i := 0; i < b.N; i++ { + var t types.Time + t.StrToDate(sc, str, format) + } + }) +} + +func BenchmarkStrToDate(b *testing.B) { + sc := &stmtctx.StatementContext{TimeZone: time.UTC} + benchmarkStrToDate(b, "strToDate yyyyMMdd hhmmss ffff", sc, "31/05/2016 12:34:56.1234", "%d/%m/%Y %H:%i:%S.%f") + benchmarkStrToDate(b, "strToDate %r ddMMyyyy", sc, "04:13:56 AM 13/05/2019", "%r %d/%c/%Y") + benchmarkStrToDate(b, "strToDate %T ddMMyyyy", sc, " 4:13:56 13/05/2019", "%T %d/%c/%Y") +} From ed88b54fc8a90c9f88c87076f02da38af347ef1e Mon Sep 17 00:00:00 2001 From: Yifan Xu Date: Mon, 16 Aug 2021 13:09:59 +0800 Subject: [PATCH 08/27] util/logutil: Remove useless grpc log in production (#25454) --- util/logutil/log.go | 36 ++++++++++++++++++++++++------- util/logutil/log_test.go | 25 +++++++++++++++++++++ util/logutil/slow_query_logger.go | 16 ++++++++------ 3 files changed, 62 insertions(+), 15 deletions(-) diff --git a/util/logutil/log.go b/util/logutil/log.go index 582ef36f46cf5..66bee73e69fb3 100644 --- a/util/logutil/log.go +++ b/util/logutil/log.go @@ -42,8 +42,6 @@ const ( DefaultRecordPlanInSlowLog = 1 // DefaultTiDBEnableSlowLog enables TiDB to log slow queries. DefaultTiDBEnableSlowLog = true - // GRPCLogDebugVerbosity enables max verbosity when debugging grpc code. - GRPCLogDebugVerbosity = 99 ) // EmptyFileLogConfig is an empty FileLogConfig. @@ -106,20 +104,42 @@ func InitLogger(cfg *LogConfig) error { log.ReplaceGlobals(gl, props) // init dedicated logger for slow query log - SlowQueryLogger, err = newSlowQueryLogger(cfg) + SlowQueryLogger, _, err = newSlowQueryLogger(cfg) if err != nil { return errors.Trace(err) } - // init logger for grpc debugging + _, _, err = initGRPCLogger(cfg) + if err != nil { + return errors.Trace(err) + } + + return nil +} + +func initGRPCLogger(cfg *LogConfig) (*zap.Logger, *log.ZapProperties, error) { + // Copy Config struct by assignment. + config := cfg.Config + var l *zap.Logger + var err error + var prop *log.ZapProperties if len(os.Getenv("GRPC_DEBUG")) > 0 { - // more information for verbosity: https://github.com/google/glog#verbose-logging - gzap.ReplaceGrpcLoggerV2WithVerbosity(gl, GRPCLogDebugVerbosity) + config.Level = "debug" + l, prop, err = log.InitLogger(&config, zap.AddStacktrace(zapcore.FatalLevel)) + if err != nil { + return nil, nil, errors.Trace(err) + } + gzap.ReplaceGrpcLoggerV2WithVerbosity(l, 999) } else { - gzap.ReplaceGrpcLoggerV2(gl) + config.Level = "error" + l, prop, err = log.InitLogger(&config, zap.AddStacktrace(zapcore.FatalLevel)) + if err != nil { + return nil, nil, errors.Trace(err) + } + gzap.ReplaceGrpcLoggerV2(l) } - return nil + return l, prop, nil } // SetLevel sets the zap logger's level. diff --git a/util/logutil/log_test.go b/util/logutil/log_test.go index a78efa657f247..4c5232c50cd1f 100644 --- a/util/logutil/log_test.go +++ b/util/logutil/log_test.go @@ -97,3 +97,28 @@ func TestSetLevel(t *testing.T) { require.NoError(t, err) require.Equal(t, zap.DebugLevel, log.GetLevel()) } + +func TestGrpcLoggerCreation(t *testing.T) { + level := "info" + conf := NewLogConfig(level, DefaultLogFormat, "", EmptyFileLogConfig, false) + _, p, err := initGRPCLogger(conf) + // assert after init grpc logger, the original conf is not changed + require.Equal(t, conf.Level, level) + require.Nil(t, err) + require.Equal(t, p.Level.Level(), zap.ErrorLevel) + os.Setenv("GRPC_DEBUG", "1") + defer os.Unsetenv("GRPC_DEBUG") + _, newP, err := initGRPCLogger(conf) + require.Nil(t, err) + require.Equal(t, newP.Level.Level(), zap.DebugLevel) +} + +func TestSlowQueryLoggerCreation(t *testing.T) { + level := "warn" + conf := NewLogConfig(level, DefaultLogFormat, "", EmptyFileLogConfig, false) + _, prop, err := newSlowQueryLogger(conf) + // assert after init slow query logger, the original conf is not changed + require.Equal(t, conf.Level, level) + require.Nil(t, err) + require.Equal(t, prop.Level.String(), conf.Level) +} diff --git a/util/logutil/slow_query_logger.go b/util/logutil/slow_query_logger.go index 3910b6ecd1192..433fd5746eca7 100644 --- a/util/logutil/slow_query_logger.go +++ b/util/logutil/slow_query_logger.go @@ -13,11 +13,11 @@ import ( var _pool = buffer.NewPool() -func newSlowQueryLogger(cfg *LogConfig) (*zap.Logger, error) { +func newSlowQueryLogger(cfg *LogConfig) (*zap.Logger, *log.ZapProperties, error) { - // reuse global config and override slow query log file + // copy global config and override slow query log file // if slow query log filename is empty, slow query log will behave the same as global log - sqConfig := &cfg.Config + sqConfig := cfg.Config if len(cfg.SlowQueryFile) != 0 { sqConfig.File = log.FileLogConfig{ MaxSize: cfg.File.MaxSize, @@ -26,17 +26,19 @@ func newSlowQueryLogger(cfg *LogConfig) (*zap.Logger, error) { } // create the slow query logger - sqLogger, prop, err := log.InitLogger(sqConfig) + sqLogger, prop, err := log.InitLogger(&sqConfig) if err != nil { - return nil, errors.Trace(err) + return nil, nil, errors.Trace(err) } // replace 2018-12-19-unified-log-format text encoder with slow log encoder + newCore := log.NewTextCore(&slowLogEncoder{}, prop.Syncer, prop.Level) sqLogger = sqLogger.WithOptions(zap.WrapCore(func(core zapcore.Core) zapcore.Core { - return log.NewTextCore(&slowLogEncoder{}, prop.Syncer, prop.Level) + return newCore })) + prop.Core = newCore - return sqLogger, nil + return sqLogger, prop, nil } type slowLogEncoder struct{} From 5ae87cae85edeedfd47dae48cd03fd9f45cb312b Mon Sep 17 00:00:00 2001 From: wjHuang Date: Mon, 16 Aug 2021 14:25:59 +0800 Subject: [PATCH 09/27] types: fix fsp for datetime, time and timestamp (#27170) --- .../explain_generate_column_substitute.result | 30 +++++++++++++++++++ .../t/explain_generate_column_substitute.test | 20 +++++++++++++ ddl/ddl_api.go | 5 ++++ 3 files changed, 55 insertions(+) diff --git a/cmd/explaintest/r/explain_generate_column_substitute.result b/cmd/explaintest/r/explain_generate_column_substitute.result index a2f3059c06625..5efbd22acfbbd 100644 --- a/cmd/explaintest/r/explain_generate_column_substitute.result +++ b/cmd/explaintest/r/explain_generate_column_substitute.result @@ -456,3 +456,33 @@ HashAgg 6.00 root group by:Column#9, funcs:max(Column#8)->Column#7 └─Projection 6.00 root upper(test.t.b)->Column#8, upper(test.t.b)->Column#9 └─TableReader 6.00 root data:TableFullScan └─TableFullScan 6.00 cop[tikv] table:t keep order:false +drop table if exists t; +CREATE TABLE t ( +`a` date DEFAULT NULL, +`b` datetime DEFAULT NULL, +`c` time DEFAULT NULL, +`d` timestamp NULL DEFAULT NULL, +`e` year(4) DEFAULT NULL, +KEY `expression_index` ((adddate(`a`, interval 10 microsecond))), +KEY `expression_index2` ((timediff(`b`, '2021-03-30 08:10:00.000001'))), +KEY `expression_index3` ((`d`+ timestamp'0000-00-00 00:00:00.00001')) +); +insert into t values ('2021-01-02', '2021-03-30 08:10:00', '12:01:03', '2021-08-13 04:10:44', 2021); +select * from t use index(expression_index) where ADDDATE(a, interval 10 MICROSECOND) = ADDDATE('2021-01-02', interval 10 MICROSECOND); +a b c d e +2021-01-02 2021-03-30 08:10:00 12:01:03 2021-08-13 04:10:44 2021 +select * from t ignore index(expression_index) where ADDDATE(a, interval 10 MICROSECOND) = ADDDATE('2021-01-02', interval 10 MICROSECOND); +a b c d e +2021-01-02 2021-03-30 08:10:00 12:01:03 2021-08-13 04:10:44 2021 +select * from t use index(expression_index2) where timediff(`b`, '2021-03-30 08:10:00.000001') = timediff('2021-03-30 08:10:00', '2021-03-30 08:10:00.000001'); +a b c d e +2021-01-02 2021-03-30 08:10:00 12:01:03 2021-08-13 04:10:44 2021 +select * from t ignore index(expression_index2) where timediff(`b`, '2021-03-30 08:10:00.000001') = timediff('2021-03-30 08:10:00', '2021-03-30 08:10:00.000001'); +a b c d e +2021-01-02 2021-03-30 08:10:00 12:01:03 2021-08-13 04:10:44 2021 +select * from t use index(expression_index3) where d+ timestamp'0000-00-00 00:00:00.00001' = timestamp'2021-08-13 04:10:44'+ timestamp'0000-00-00 00:00:00.00001'; +a b c d e +2021-01-02 2021-03-30 08:10:00 12:01:03 2021-08-13 04:10:44 2021 +select * from t ignore index(expression_index3) where d+ timestamp'0000-00-00 00:00:00.00001' = timestamp'2021-08-13 04:10:44'+ timestamp'0000-00-00 00:00:00.00001'; +a b c d e +2021-01-02 2021-03-30 08:10:00 12:01:03 2021-08-13 04:10:44 2021 diff --git a/cmd/explaintest/t/explain_generate_column_substitute.test b/cmd/explaintest/t/explain_generate_column_substitute.test index 1ebb37a1dd2df..eb83f8a5a1bf7 100644 --- a/cmd/explaintest/t/explain_generate_column_substitute.test +++ b/cmd/explaintest/t/explain_generate_column_substitute.test @@ -192,3 +192,23 @@ desc format = 'brief' select count(upper(b)) from t group by upper(b); desc format = 'brief' select max(upper(b)) from t group by upper(b); desc format = 'brief' select count(upper(b)) from t use index() group by upper(b); desc format = 'brief' select max(upper(b)) from t use index() group by upper(b); + +drop table if exists t; +CREATE TABLE t ( + `a` date DEFAULT NULL, + `b` datetime DEFAULT NULL, + `c` time DEFAULT NULL, + `d` timestamp NULL DEFAULT NULL, + `e` year(4) DEFAULT NULL, + KEY `expression_index` ((adddate(`a`, interval 10 microsecond))), + KEY `expression_index2` ((timediff(`b`, '2021-03-30 08:10:00.000001'))), + KEY `expression_index3` ((`d`+ timestamp'0000-00-00 00:00:00.00001')) +); + +insert into t values ('2021-01-02', '2021-03-30 08:10:00', '12:01:03', '2021-08-13 04:10:44', 2021); +select * from t use index(expression_index) where ADDDATE(a, interval 10 MICROSECOND) = ADDDATE('2021-01-02', interval 10 MICROSECOND); +select * from t ignore index(expression_index) where ADDDATE(a, interval 10 MICROSECOND) = ADDDATE('2021-01-02', interval 10 MICROSECOND); +select * from t use index(expression_index2) where timediff(`b`, '2021-03-30 08:10:00.000001') = timediff('2021-03-30 08:10:00', '2021-03-30 08:10:00.000001'); +select * from t ignore index(expression_index2) where timediff(`b`, '2021-03-30 08:10:00.000001') = timediff('2021-03-30 08:10:00', '2021-03-30 08:10:00.000001'); +select * from t use index(expression_index3) where d+ timestamp'0000-00-00 00:00:00.00001' = timestamp'2021-08-13 04:10:44'+ timestamp'0000-00-00 00:00:00.00001'; +select * from t ignore index(expression_index3) where d+ timestamp'0000-00-00 00:00:00.00001' = timestamp'2021-08-13 04:10:44'+ timestamp'0000-00-00 00:00:00.00001'; diff --git a/ddl/ddl_api.go b/ddl/ddl_api.go index a735720242c51..036ca26925c21 100644 --- a/ddl/ddl_api.go +++ b/ddl/ddl_api.go @@ -5110,6 +5110,11 @@ func buildHiddenColumnInfo(ctx sessionctx.Context, indexPartSpecifications []*as Hidden: true, FieldType: *expr.GetType(), } + if colInfo.Tp == mysql.TypeDatetime || colInfo.Tp == mysql.TypeDate || colInfo.Tp == mysql.TypeTimestamp || colInfo.Tp == mysql.TypeDuration { + if colInfo.FieldType.Decimal == types.UnspecifiedLength { + colInfo.FieldType.Decimal = int(types.MaxFsp) + } + } checkDependencies := make(map[string]struct{}) for _, colName := range findColumnNamesInExpr(idxPart.Expr) { colInfo.Dependences[colName.Name.L] = struct{}{} From 940ea4406f978749233acd1c8c5b37c2649d924d Mon Sep 17 00:00:00 2001 From: Zak Zhao <57036248+joccau@users.noreply.github.com> Date: Mon, 16 Aug 2021 15:51:59 +0800 Subject: [PATCH 10/27] br: fix-bug: Flush backupMeta to disk for multiple times (#27104) --- br/pkg/backup/schema_test.go | 9 +++++++++ br/pkg/metautil/metafile.go | 29 ++++++++++++++------------- br/pkg/restore/client.go | 7 ++++++- br/pkg/restore/db_test.go | 5 +++++ br/pkg/task/backup.go | 38 ++++++++++++++++-------------------- br/pkg/task/backup_raw.go | 6 ++++++ 6 files changed, 58 insertions(+), 36 deletions(-) diff --git a/br/pkg/backup/schema_test.go b/br/pkg/backup/schema_test.go index 2bdd8b1c1dff2..62555cb343f9a 100644 --- a/br/pkg/backup/schema_test.go +++ b/br/pkg/backup/schema_test.go @@ -132,6 +132,8 @@ func (s *testBackupSchemaSuite) TestBuildBackupRangeAndSchema(c *C) { ctx, metaWriter, s.mock.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) c.Assert(updateCh.get(), Equals, int64(1)) c.Assert(err, IsNil) + err = metaWriter.FlushBackupMeta(ctx) + c.Assert(err, IsNil) schemas := s.GetSchemasFromMeta(c, es) c.Assert(len(schemas), Equals, 1) @@ -157,6 +159,8 @@ func (s *testBackupSchemaSuite) TestBuildBackupRangeAndSchema(c *C) { ctx, metaWriter2, s.mock.Storage, nil, math.MaxUint64, 2, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) c.Assert(updateCh.get(), Equals, int64(2)) c.Assert(err, IsNil) + err = metaWriter2.FlushBackupMeta(ctx) + c.Assert(err, IsNil) schemas = s.GetSchemasFromMeta(c, es2) @@ -201,6 +205,9 @@ func (s *testBackupSchemaSuite) TestBuildBackupRangeAndSchemaWithBrokenStats(c * ctx := context.Background() err = backupSchemas.BackupSchemas( ctx, metaWriter, s.mock.Storage, nil, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) + c.Assert(err, IsNil) + err = metaWriter.FlushBackupMeta(ctx) + c.Assert(err, IsNil) schemas := s.GetSchemasFromMeta(c, es) c.Assert(err, IsNil) @@ -227,6 +234,8 @@ func (s *testBackupSchemaSuite) TestBuildBackupRangeAndSchemaWithBrokenStats(c * err = backupSchemas.BackupSchemas( ctx, metaWriter2, s.mock.Storage, statsHandle, math.MaxUint64, 1, variable.DefChecksumTableConcurrency, skipChecksum, updateCh) c.Assert(err, IsNil) + err = metaWriter2.FlushBackupMeta(ctx) + c.Assert(err, IsNil) schemas2 := s.GetSchemasFromMeta(c, es2) c.Assert(schemas2, HasLen, 1) diff --git a/br/pkg/metautil/metafile.go b/br/pkg/metautil/metafile.go index a65cc4b5ee3cf..b1601d4be2a80 100644 --- a/br/pkg/metautil/metafile.go +++ b/br/pkg/metautil/metafile.go @@ -528,22 +528,14 @@ func (writer *MetaWriter) FinishWriteMetas(ctx context.Context, op AppendOp) err var err error // flush the buffered meta if !writer.useV2Meta { - // Set schema version - writer.backupMeta.Version = MetaV1 - err = writer.flushMetasV1(ctx, op) + writer.fillMetasV1(ctx, op) } else { err = writer.flushMetasV2(ctx, op) if err != nil { return errors.Trace(err) } - // Set schema version - writer.backupMeta.Version = MetaV2 - // flush the final backupmeta - err = writer.flushBackupMeta(ctx) - } - if err != nil { - return errors.Trace(err) } + costs := time.Since(writer.start) if op == AppendDataFile { summary.CollectSuccessUnit("backup ranges", writer.flushedItemNum, costs) @@ -553,7 +545,16 @@ func (writer *MetaWriter) FinishWriteMetas(ctx context.Context, op AppendOp) err return nil } -func (writer *MetaWriter) flushBackupMeta(ctx context.Context) error { +// FlushBackupMeta flush the `backupMeta` to `ExternalStorage` +func (writer *MetaWriter) FlushBackupMeta(ctx context.Context) error { + // Set schema version + if writer.useV2Meta { + writer.backupMeta.Version = MetaV2 + } else { + writer.backupMeta.Version = MetaV1 + } + + // Flush the writer.backupMeta to storage backupMetaData, err := proto.Marshal(writer.backupMeta) if err != nil { return errors.Trace(err) @@ -563,8 +564,9 @@ func (writer *MetaWriter) flushBackupMeta(ctx context.Context) error { return writer.storage.WriteFile(ctx, MetaFile, backupMetaData) } -// flushMetasV1 keep the compatibility for old version. -func (writer *MetaWriter) flushMetasV1(ctx context.Context, op AppendOp) error { +// fillMetasV1 keep the compatibility for old version. +// for MetaV1, just put in backupMeta +func (writer *MetaWriter) fillMetasV1(ctx context.Context, op AppendOp) { switch op { case AppendDataFile: writer.backupMeta.Files = writer.metafiles.root.DataFiles @@ -576,7 +578,6 @@ func (writer *MetaWriter) flushMetasV1(ctx context.Context, op AppendOp) error { log.Panic("unsupport op type", zap.Any("op", op)) } writer.flushedItemNum += writer.metafiles.itemNum - return writer.flushBackupMeta(ctx) } func (writer *MetaWriter) flushMetasV2(ctx context.Context, op AppendOp) error { diff --git a/br/pkg/restore/client.go b/br/pkg/restore/client.go index c0322ddd71455..f4bf9c7fe5721 100644 --- a/br/pkg/restore/client.go +++ b/br/pkg/restore/client.go @@ -169,7 +169,12 @@ func (rc *Client) Close() { } // InitBackupMeta loads schemas from BackupMeta to initialize RestoreClient. -func (rc *Client) InitBackupMeta(c context.Context, backupMeta *backuppb.BackupMeta, backend *backuppb.StorageBackend, externalStorage storage.ExternalStorage, reader *metautil.MetaReader) error { +func (rc *Client) InitBackupMeta( + c context.Context, + backupMeta *backuppb.BackupMeta, + backend *backuppb.StorageBackend, + externalStorage storage.ExternalStorage, + reader *metautil.MetaReader) error { if !backupMeta.IsRawKv { databases, err := utils.LoadBackupTables(c, reader) if err != nil { diff --git a/br/pkg/restore/db_test.go b/br/pkg/restore/db_test.go index 19bb921468fb8..6add4e85cd09f 100644 --- a/br/pkg/restore/db_test.go +++ b/br/pkg/restore/db_test.go @@ -131,6 +131,8 @@ func (s *testRestoreSchemaSuite) TestFilterDDLJobs(c *C) { c.Assert(err, IsNil, Commentf("Error get ddl jobs: %s", err)) err = metaWriter.FinishWriteMetas(ctx, metautil.AppendDDL) c.Assert(err, IsNil, Commentf("Flush failed", err)) + err = metaWriter.FlushBackupMeta(ctx) + c.Assert(err, IsNil, Commentf("Finially flush backupmeta failed", err)) infoSchema, err := s.mock.Domain.GetSnapshotInfoSchema(ts) c.Assert(err, IsNil, Commentf("Error get snapshot info schema: %s", err)) dbInfo, ok := infoSchema.SchemaByName(model.NewCIStr("test_db")) @@ -187,6 +189,9 @@ func (s *testRestoreSchemaSuite) TestFilterDDLJobsV2(c *C) { c.Assert(err, IsNil, Commentf("Error get ddl jobs: %s", err)) err = metaWriter.FinishWriteMetas(ctx, metautil.AppendDDL) c.Assert(err, IsNil, Commentf("Flush failed", err)) + err = metaWriter.FlushBackupMeta(ctx) + c.Assert(err, IsNil, Commentf("Flush BackupMeta failed", err)) + infoSchema, err := s.mock.Domain.GetSnapshotInfoSchema(ts) c.Assert(err, IsNil, Commentf("Error get snapshot info schema: %s", err)) dbInfo, ok := infoSchema.SchemaByName(model.NewCIStr("test_db")) diff --git a/br/pkg/task/backup.go b/br/pkg/task/backup.go index f6aaa5fc0f4e2..270859f027f4e 100644 --- a/br/pkg/task/backup.go +++ b/br/pkg/task/backup.go @@ -160,7 +160,7 @@ func (cfg *BackupConfig) ParseFromFlags(flags *pflag.FlagSet) error { return errors.Trace(err) } -// ParseFromFlags parses the backup-related flags from the flag set. +// parseCompressionFlags parses the backup-related flags from the flag set. func parseCompressionFlags(flags *pflag.FlagSet) (*CompressionConfig, error) { compressionStr, err := flags.GetString(flagCompressionType) if err != nil { @@ -330,23 +330,22 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig // Metafile size should be less than 64MB. metawriter := metautil.NewMetaWriter(client.GetStorage(), metautil.MetaFileSize, cfg.UseBackupMetaV2) + // Hack way to update backupmeta. + metawriter.Update(func(m *backuppb.BackupMeta) { + m.StartVersion = req.StartVersion + m.EndVersion = req.EndVersion + m.IsRawKv = req.IsRawKv + m.ClusterId = req.ClusterId + m.ClusterVersion = clusterVersion + m.BrVersion = brVersion + }) // nothing to backup if ranges == nil { - // Hack way to update backupmeta. - metawriter.StartWriteMetasAsync(ctx, metautil.AppendSchema) - metawriter.Update(func(m *backuppb.BackupMeta) { - m.StartVersion = req.StartVersion - m.EndVersion = req.EndVersion - m.IsRawKv = req.IsRawKv - m.ClusterId = req.ClusterId - m.ClusterVersion = clusterVersion - m.BrVersion = brVersion - }) pdAddress := strings.Join(cfg.PD, ",") log.Warn("Nothing to backup, maybe connected to cluster for restoring", zap.String("PD address", pdAddress)) - return metawriter.FinishWriteMetas(ctx, metautil.AppendSchema) + return metawriter.FlushBackupMeta(ctx) } if isIncrementalBackup { @@ -431,15 +430,6 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig return errors.Trace(err) } - metawriter.Update(func(m *backuppb.BackupMeta) { - m.StartVersion = req.StartVersion - m.EndVersion = req.EndVersion - m.IsRawKv = req.IsRawKv - m.ClusterId = req.ClusterId - m.ClusterVersion = clusterVersion - m.BrVersion = brVersion - }) - skipChecksum := !cfg.Checksum || isIncrementalBackup checksumProgress := int64(schemas.Len()) if skipChecksum { @@ -460,6 +450,12 @@ func RunBackup(c context.Context, g glue.Glue, cmdName string, cfg *BackupConfig if err != nil { return errors.Trace(err) } + + err = metawriter.FlushBackupMeta(ctx) + if err != nil { + return errors.Trace(err) + } + // Checksum has finished, close checksum progress. updateCh.Close() diff --git a/br/pkg/task/backup_raw.go b/br/pkg/task/backup_raw.go index 6810a40308dc8..56b6512d856b5 100644 --- a/br/pkg/task/backup_raw.go +++ b/br/pkg/task/backup_raw.go @@ -233,6 +233,12 @@ func RunBackupRaw(c context.Context, g glue.Glue, cmdName string, cfg *RawKvConf if err != nil { return errors.Trace(err) } + + err = metaWriter.FlushBackupMeta(ctx) + if err != nil { + return errors.Trace(err) + } + g.Record(summary.BackupDataSize, metaWriter.ArchiveSize()) // Set task summary to success status. From 6b9e25bafa89a07f18744c8ee77f007244e119e1 Mon Sep 17 00:00:00 2001 From: Kenan Yao Date: Mon, 16 Aug 2021 16:03:59 +0800 Subject: [PATCH 11/27] domain: call the cancel function of bind owner only once (#27109) --- domain/domain.go | 1 - 1 file changed, 1 deletion(-) diff --git a/domain/domain.go b/domain/domain.go index 70204a3e5ff8d..f958c3347eacf 100644 --- a/domain/domain.go +++ b/domain/domain.go @@ -1013,7 +1013,6 @@ func (do *Domain) globalBindHandleWorkerLoop(owner owner.Manager) { for { select { case <-do.exit: - owner.Cancel() return case <-bindWorkerTicker.C: err := do.bindHandle.Update(false) From 583d2d39e5913001a7a0f52993f9bd00eadae504 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E8=B6=85?= Date: Mon, 16 Aug 2021 16:54:00 +0800 Subject: [PATCH 12/27] executor: Add test for check retry DML on local temporary tables (#27183) --- session/session_test.go | 44 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/session/session_test.go b/session/session_test.go index 52743e98f52aa..0b1a35aa3aa86 100644 --- a/session/session_test.go +++ b/session/session_test.go @@ -842,6 +842,50 @@ func (s *testSessionSuite) TestRetryGlobalTempTable(c *C) { tk.MustQuery("select a, b from normal_table order by a").Check(testkit.Rows("1 2", "100 104")) } +func (s *testSessionSuite) TestRetryLocalTempTable(c *C) { + tk := testkit.NewTestKitWithInit(c, s.store) + tk.MustExec("set tidb_enable_noop_functions=true") + tk.MustExec("drop table if exists normal_table") + tk.MustExec("create table normal_table(a int primary key, b int)") + defer tk.MustExec("drop table if exists normal_table") + tk.MustExec("drop table if exists temp_table") + tk.MustExec("create temporary table l_temp_table(a int primary key, b int)") + defer tk.MustExec("drop table if exists l_temp_table") + + // insert select + tk.MustExec("set tidb_disable_txn_auto_retry = 0") + tk.MustExec("insert normal_table value(100, 100)") + tk.MustExec("set @@autocommit = 0") + // used to make conflicts + tk.MustExec("update normal_table set b=b+1 where a=100") + tk.MustExec("insert l_temp_table value(1, 2)") + tk.MustExec("insert normal_table select * from l_temp_table") + c.Assert(session.GetHistory(tk.Se).Count(), Equals, 3) + + // try to conflict with tk + tk1 := testkit.NewTestKitWithInit(c, s.store) + tk1.MustExec("update normal_table set b=b+1 where a=100") + + // It will retry internally. + tk.MustExec("commit") + tk.MustQuery("select a, b from normal_table order by a").Check(testkit.Rows("1 2", "100 102")) + tk.MustQuery("select a, b from l_temp_table order by a").Check(testkit.Rows("1 2")) + + // update multi-tables + tk.MustExec("update normal_table set b=b+1 where a=100") + tk.MustExec("insert l_temp_table value(3, 4)") + // before update: normal_table=(1 1) (100 102), temp_table=(1 2) + tk.MustExec("update normal_table, l_temp_table set normal_table.b=l_temp_table.b where normal_table.a=l_temp_table.a") + c.Assert(session.GetHistory(tk.Se).Count(), Equals, 3) + + // try to conflict with tk + tk1.MustExec("update normal_table set b=b+1 where a=100") + + // It will retry internally. + tk.MustExec("commit") + tk.MustQuery("select a, b from normal_table order by a").Check(testkit.Rows("1 2", "100 104")) +} + func (s *testSessionSuite) TestRetryShow(c *C) { tk := testkit.NewTestKitWithInit(c, s.store) tk.MustExec("set @@autocommit = 0") From d128bc1099201b08c1e00c1dbff22d68ed92b1e2 Mon Sep 17 00:00:00 2001 From: guo-shaoge Date: Mon, 16 Aug 2021 17:22:00 +0800 Subject: [PATCH 13/27] planner: fix error when window function is used in view definition (#25930) --- planner/core/integration_test.go | 12 +++++++ planner/core/logical_plan_builder.go | 51 +++++++++++++++++++--------- 2 files changed, 47 insertions(+), 16 deletions(-) diff --git a/planner/core/integration_test.go b/planner/core/integration_test.go index 929a5c5aca5f8..b18f1649bdef2 100644 --- a/planner/core/integration_test.go +++ b/planner/core/integration_test.go @@ -4111,6 +4111,18 @@ func (s *testIntegrationSerialSuite) TestIssue26214(c *C) { c.Assert(core.ErrUnknownColumn.Equal(err), IsTrue) } +func (s *testIntegrationSuite) TestCreateViewWithWindowFunc(c *C) { + tk := testkit.NewTestKit(c, s.store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t6;") + tk.MustExec("CREATE TABLE t6(t TIME, ts TIMESTAMP);") + tk.MustExec("INSERT INTO t6 VALUES ('12:30', '2016-07-05 08:30:42');") + tk.MustExec("drop view if exists v;") + tk.MustExec("CREATE definer='root'@'localhost' VIEW v AS SELECT COUNT(*) OVER w0, COUNT(*) OVER w from t6 WINDOW w0 AS (), w AS (w0 ORDER BY t);") + rows := tk.MustQuery("select * from v;") + rows.Check(testkit.Rows("1 1")) +} + func (s *testIntegrationSerialSuite) TestLimitPushDown(c *C) { tk := testkit.NewTestKit(c, s.store) tk.MustExec("use test") diff --git a/planner/core/logical_plan_builder.go b/planner/core/logical_plan_builder.go index a9a3978329c2b..8b68ee47018b5 100644 --- a/planner/core/logical_plan_builder.go +++ b/planner/core/logical_plan_builder.go @@ -1133,6 +1133,9 @@ func (b *PlanBuilder) buildProjectionField(ctx context.Context, p LogicalPlan, f if isCol { return col, name, nil } + if expr == nil { + return nil, name, nil + } newCol := &expression.Column{ UniqueID: b.ctx.GetSessionVars().AllocPlanColumnID(), RetType: expr.GetType(), @@ -3175,15 +3178,37 @@ func unfoldWildStar(field *ast.SelectField, outputName types.NameSlice, column [ return resultList } -func (b *PlanBuilder) addAliasName(selectFields []*ast.SelectField, p LogicalPlan) (resultList []*ast.SelectField, err error) { - if len(selectFields) != len(p.OutputNames()) { - return nil, errors.Errorf("lengths of selectFields and OutputNames are not equal(%d, %d)", - len(selectFields), len(p.OutputNames())) +func (b *PlanBuilder) addAliasName(ctx context.Context, selectFields []*ast.SelectField, p LogicalPlan) (resultList []*ast.SelectField, err error) { + projOutNames := make([]*types.FieldName, 0, len(selectFields)) + for _, field := range selectFields { + colNameField, isColumnNameExpr := field.Expr.(*ast.ColumnNameExpr) + if isColumnNameExpr { + colName := colNameField.Name.Name + if field.AsName.L != "" { + colName = field.AsName + } + projOutNames = append(projOutNames, &types.FieldName{ + TblName: colNameField.Name.Table, + OrigTblName: colNameField.Name.Table, + ColName: colName, + OrigColName: colNameField.Name.Name, + DBName: colNameField.Name.Schema, + }) + } else { + // create view v as select name_const('col', 100); + // The column in v should be 'col', so we call `buildProjectionField` to handle this. + _, name, err := b.buildProjectionField(ctx, p, field, nil) + if err != nil { + return nil, err + } + projOutNames = append(projOutNames, name) + } } + for i, field := range selectFields { newField := *field if newField.AsName.L == "" { - newField.AsName = p.OutputNames()[i].ColName + newField.AsName = projOutNames[i].ColName } resultList = append(resultList, &newField) } @@ -3475,6 +3500,11 @@ func (b *PlanBuilder) buildSelect(ctx context.Context, sel *ast.SelectStmt) (p L return nil, err } if b.capFlag&canExpandAST != 0 { + // To be compabitle with MySQL, we add alias name for each select field when creating view. + sel.Fields.Fields, err = b.addAliasName(ctx, sel.Fields.Fields, p) + if err != nil { + return nil, err + } originalFields = sel.Fields.Fields } @@ -3585,17 +3615,6 @@ func (b *PlanBuilder) buildSelect(ctx context.Context, sel *ast.SelectStmt) (p L return nil, err } - if b.capFlag&canExpandAST != 0 { - // To be compabitle with MySQL, we add alias name for each select field when creating view. - // This function assumes one to one mapping between sel.Fields.Fields and p.OutputNames(). - // So we do this step right after Projection is built. - sel.Fields.Fields, err = b.addAliasName(sel.Fields.Fields, p) - if err != nil { - return nil, err - } - originalFields = sel.Fields.Fields - } - if sel.Having != nil { b.curClause = havingClause p, err = b.buildSelection(ctx, p, sel.Having.Expr, havingMap) From 0709307edb45ce73316ac154308fe189ebf140c0 Mon Sep 17 00:00:00 2001 From: feitian124 Date: Mon, 16 Aug 2021 18:23:59 +0800 Subject: [PATCH 14/27] table: migrate test-infra to testify (#27086) --- table/column_test.go | 144 +++++++++++++++++++++++-------------------- table/main_test.go | 26 ++++++++ table/table_test.go | 45 +++++++------- 3 files changed, 124 insertions(+), 91 deletions(-) create mode 100644 table/main_test.go diff --git a/table/column_test.go b/table/column_test.go index 5f1646c807f6d..30736ad13c016 100644 --- a/table/column_test.go +++ b/table/column_test.go @@ -14,9 +14,9 @@ package table import ( + "fmt" "testing" - . "github.com/pingcap/check" "github.com/pingcap/parser/ast" "github.com/pingcap/parser/charset" "github.com/pingcap/parser/model" @@ -27,16 +27,11 @@ import ( "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/types/json" "github.com/pingcap/tidb/util/mock" - "github.com/pingcap/tidb/util/testleak" + "github.com/stretchr/testify/require" ) -func TestT(t *testing.T) { - CustomVerboseFlag = true - TestingT(t) -} - -func (t *testTableSuite) TestString(c *C) { - defer testleak.AfterTest(c)() +func TestString(t *testing.T) { + t.Parallel() col := ToColumn(&model.ColumnInfo{ FieldType: *types.NewFieldType(mysql.TypeTiny), State: model.StatePublic, @@ -47,96 +42,104 @@ func (t *testTableSuite) TestString(c *C) { col.Collate = mysql.DefaultCollationName col.Flag |= mysql.ZerofillFlag | mysql.UnsignedFlag | mysql.BinaryFlag | mysql.AutoIncrementFlag | mysql.NotNullFlag - c.Assert(col.GetTypeDesc(), Equals, "tinyint(2) unsigned zerofill") + require.Equal(t, "tinyint(2) unsigned zerofill", col.GetTypeDesc()) col.ToInfo() tbInfo := &model.TableInfo{} - c.Assert(col.IsPKHandleColumn(tbInfo), Equals, false) + require.False(t, col.IsPKHandleColumn(tbInfo)) tbInfo.PKIsHandle = true col.Flag |= mysql.PriKeyFlag - c.Assert(col.IsPKHandleColumn(tbInfo), Equals, true) + require.True(t, col.IsPKHandleColumn(tbInfo)) cs := col.String() - c.Assert(len(cs), Greater, 0) + require.Greater(t, len(cs), 0) col.Tp = mysql.TypeEnum col.Flag = 0 col.Elems = []string{"a", "b"} - c.Assert(col.GetTypeDesc(), Equals, "enum('a','b')") + require.Equal(t, "enum('a','b')", col.GetTypeDesc()) col.Elems = []string{"'a'", "b"} - c.Assert(col.GetTypeDesc(), Equals, "enum('''a''','b')") + require.Equal(t, "enum('''a''','b')", col.GetTypeDesc()) col.Tp = mysql.TypeFloat col.Flen = 8 col.Decimal = -1 - c.Assert(col.GetTypeDesc(), Equals, "float") + require.Equal(t, "float", col.GetTypeDesc()) col.Decimal = 1 - c.Assert(col.GetTypeDesc(), Equals, "float(8,1)") + require.Equal(t, "float(8,1)", col.GetTypeDesc()) col.Tp = mysql.TypeDatetime col.Decimal = 6 - c.Assert(col.GetTypeDesc(), Equals, "datetime(6)") + require.Equal(t, "datetime(6)", col.GetTypeDesc()) col.Decimal = 0 - c.Assert(col.GetTypeDesc(), Equals, "datetime") + require.Equal(t, "datetime", col.GetTypeDesc()) col.Decimal = -1 - c.Assert(col.GetTypeDesc(), Equals, "datetime") + require.Equal(t, "datetime", col.GetTypeDesc()) } -func (t *testTableSuite) TestFind(c *C) { - defer testleak.AfterTest(c)() +func TestFind(t *testing.T) { + t.Parallel() cols := []*Column{ newCol("a"), newCol("b"), newCol("c"), } - FindCols(cols, []string{"a"}, true) - FindCols(cols, []string{"d"}, true) + c, s := FindCols(cols, []string{"a"}, true) + require.Equal(t, cols[:1], c) + require.Equal(t, "", s) + + c1, s1 := FindCols(cols, []string{"d"}, true) + require.Nil(t, c1) + require.Equal(t, "d", s1) + cols[0].Flag |= mysql.OnUpdateNowFlag - FindOnUpdateCols(cols) + c2 := FindOnUpdateCols(cols) + require.Equal(t, cols[:1], c2) } -func (t *testTableSuite) TestCheck(c *C) { - defer testleak.AfterTest(c)() +func TestCheck(t *testing.T) { + t.Parallel() col := newCol("a") col.Flag = mysql.AutoIncrementFlag cols := []*Column{col, col} err := CheckOnce(cols) - c.Assert(err, NotNil) + require.Error(t, err) cols = cols[:1] err = CheckNotNull(cols, types.MakeDatums(nil)) - c.Assert(err, IsNil) + require.NoError(t, err) cols[0].Flag |= mysql.NotNullFlag err = CheckNotNull(cols, types.MakeDatums(nil)) - c.Assert(err, NotNil) + require.Error(t, err) err = CheckOnce([]*Column{}) - c.Assert(err, IsNil) + require.NoError(t, err) } -func (t *testTableSuite) TestHandleBadNull(c *C) { +func TestHandleBadNull(t *testing.T) { + t.Parallel() col := newCol("a") sc := new(stmtctx.StatementContext) d := types.Datum{} err := col.HandleBadNull(&d, sc) - c.Assert(err, IsNil) + require.NoError(t, err) cmp, err := d.CompareDatum(sc, &types.Datum{}) - c.Assert(err, IsNil) - c.Assert(cmp, Equals, 0) + require.NoError(t, err) + require.Equal(t, 0, cmp) col.Flag |= mysql.NotNullFlag err = col.HandleBadNull(&types.Datum{}, sc) - c.Assert(err, NotNil) + require.Error(t, err) sc.BadNullAsWarning = true err = col.HandleBadNull(&types.Datum{}, sc) - c.Assert(err, IsNil) + require.NoError(t, err) } -func (t *testTableSuite) TestDesc(c *C) { - defer testleak.AfterTest(c)() +func TestDesc(t *testing.T) { + t.Parallel() col := newCol("a") col.Flag = mysql.AutoIncrementFlag | mysql.NotNullFlag | mysql.PriKeyFlag NewColDesc(col) @@ -144,20 +147,20 @@ func (t *testTableSuite) TestDesc(c *C) { NewColDesc(col) col.Flag = mysql.UniqueKeyFlag | mysql.OnUpdateNowFlag desc := NewColDesc(col) - c.Assert(desc.Extra, Equals, "DEFAULT_GENERATED on update CURRENT_TIMESTAMP") + require.Equal(t, "DEFAULT_GENERATED on update CURRENT_TIMESTAMP", desc.Extra) col.Flag = 0 col.GeneratedExprString = "test" col.GeneratedStored = true desc = NewColDesc(col) - c.Assert(desc.Extra, Equals, "STORED GENERATED") + require.Equal(t, "STORED GENERATED", desc.Extra) col.GeneratedStored = false desc = NewColDesc(col) - c.Assert(desc.Extra, Equals, "VIRTUAL GENERATED") + require.Equal(t, "VIRTUAL GENERATED", desc.Extra) ColDescFieldNames(false) ColDescFieldNames(true) } -func (t *testTableSuite) TestGetZeroValue(c *C) { +func TestGetZeroValue(t *testing.T) { tests := []struct { ft *types.FieldType value types.Datum @@ -246,16 +249,20 @@ func (t *testTableSuite) TestGetZeroValue(c *C) { } sc := new(stmtctx.StatementContext) for _, tt := range tests { - colInfo := &model.ColumnInfo{FieldType: *tt.ft} - zv := GetZeroValue(colInfo) - c.Assert(zv.Kind(), Equals, tt.value.Kind()) - cmp, err := zv.CompareDatum(sc, &tt.value) - c.Assert(err, IsNil) - c.Assert(cmp, Equals, 0) + t.Run(fmt.Sprintf("%+v", tt.ft), func(t *testing.T) { + t.Parallel() + colInfo := &model.ColumnInfo{FieldType: *tt.ft} + zv := GetZeroValue(colInfo) + require.Equal(t, tt.value.Kind(), zv.Kind()) + cmp, err := zv.CompareDatum(sc, &tt.value) + require.NoError(t, err) + require.Equal(t, 0, cmp) + }) } } -func (t *testTableSuite) TestCastValue(c *C) { +func TestCastValue(t *testing.T) { + t.Parallel() ctx := mock.NewContext() colInfo := model.ColumnInfo{ FieldType: *types.NewFieldType(mysql.TypeLong), @@ -263,47 +270,48 @@ func (t *testTableSuite) TestCastValue(c *C) { } colInfo.Charset = mysql.UTF8Charset val, err := CastValue(ctx, types.Datum{}, &colInfo, false, false) - c.Assert(err, Equals, nil) - c.Assert(val.GetInt64(), Equals, int64(0)) + require.NoError(t, err) + require.Equal(t, int64(0), val.GetInt64()) val, err = CastValue(ctx, types.NewDatum("test"), &colInfo, false, false) - c.Assert(err, Not(Equals), nil) - c.Assert(val.GetInt64(), Equals, int64(0)) + require.Error(t, err) + require.Equal(t, int64(0), val.GetInt64()) colInfoS := model.ColumnInfo{ FieldType: *types.NewFieldType(mysql.TypeString), State: model.StatePublic, } val, err = CastValue(ctx, types.NewDatum("test"), &colInfoS, false, false) - c.Assert(err, IsNil) - c.Assert(val, NotNil) + require.NoError(t, err) + require.NotNil(t, val) colInfoS.Charset = mysql.UTF8Charset _, err = CastValue(ctx, types.NewDatum([]byte{0xf0, 0x9f, 0x8c, 0x80}), &colInfoS, false, false) - c.Assert(err, NotNil) + require.Error(t, err) colInfoS.Charset = mysql.UTF8Charset _, err = CastValue(ctx, types.NewDatum([]byte{0xf0, 0x9f, 0x8c, 0x80}), &colInfoS, false, true) - c.Assert(err, IsNil) + require.NoError(t, err) colInfoS.Charset = mysql.UTF8MB4Charset _, err = CastValue(ctx, types.NewDatum([]byte{0xf0, 0x9f, 0x80}), &colInfoS, false, false) - c.Assert(err, NotNil) + require.Error(t, err) colInfoS.Charset = mysql.UTF8MB4Charset _, err = CastValue(ctx, types.NewDatum([]byte{0xf0, 0x9f, 0x80}), &colInfoS, false, true) - c.Assert(err, IsNil) + require.NoError(t, err) colInfoS.Charset = charset.CharsetASCII _, err = CastValue(ctx, types.NewDatum([]byte{0x32, 0xf0}), &colInfoS, false, false) - c.Assert(err, NotNil) + require.Error(t, err) colInfoS.Charset = charset.CharsetASCII _, err = CastValue(ctx, types.NewDatum([]byte{0x32, 0xf0}), &colInfoS, false, true) - c.Assert(err, IsNil) + require.NoError(t, err) } -func (t *testTableSuite) TestGetDefaultValue(c *C) { +func TestGetDefaultValue(t *testing.T) { + t.Parallel() var nilDt types.Datum nilDt.SetNull() ctx := mock.NewContext() @@ -450,13 +458,13 @@ func (t *testTableSuite) TestGetDefaultValue(c *C) { ctx.GetSessionVars().StmtCtx.BadNullAsWarning = !tt.strict val, err := GetColDefaultValue(ctx, tt.colInfo) if err != nil { - c.Assert(tt.err, NotNil, Commentf("%v", err)) + require.Errorf(t, tt.err, "%v", err) continue } if tt.colInfo.DefaultIsExpr { - c.Assert(val, DeepEquals, types.NewIntDatum(1)) + require.Equal(t, types.NewIntDatum(1), val) } else { - c.Assert(val, DeepEquals, tt.val) + require.Equal(t, tt.val, val) } } @@ -464,11 +472,11 @@ func (t *testTableSuite) TestGetDefaultValue(c *C) { ctx.GetSessionVars().StmtCtx.BadNullAsWarning = !tt.strict val, err := GetColOriginDefaultValue(ctx, tt.colInfo) if err != nil { - c.Assert(tt.err, NotNil, Commentf("%v", err)) + require.Errorf(t, tt.err, "%v", err) continue } if !tt.colInfo.DefaultIsExpr { - c.Assert(val, DeepEquals, tt.val) + require.Equal(t, tt.val, val) } } } diff --git a/table/main_test.go b/table/main_test.go new file mode 100644 index 0000000000000..71a934ad637fe --- /dev/null +++ b/table/main_test.go @@ -0,0 +1,26 @@ +// Copyright 2021 PingCAP, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// See the License for the specific language governing permissions and +// limitations under the License. + +package table + +import ( + "testing" + + "github.com/pingcap/tidb/util/testbridge" + "go.uber.org/goleak" +) + +func TestMain(m *testing.M) { + testbridge.WorkaroundGoCheckFlags() + goleak.VerifyTestMain(m) +} diff --git a/table/table_test.go b/table/table_test.go index 05d2834a1dcaa..abb6dbc5ea922 100644 --- a/table/table_test.go +++ b/table/table_test.go @@ -14,31 +14,30 @@ package table import ( - . "github.com/pingcap/check" + "testing" + "github.com/pingcap/parser/terror" mysql "github.com/pingcap/tidb/errno" + "github.com/stretchr/testify/require" ) -var _ = Suite(&testTableSuite{}) - -type testTableSuite struct{} - -func (t *testTableSuite) TestErrorCode(c *C) { - c.Assert(int(terror.ToSQLError(ErrColumnCantNull).Code), Equals, mysql.ErrBadNull) - c.Assert(int(terror.ToSQLError(ErrUnknownColumn).Code), Equals, mysql.ErrBadField) - c.Assert(int(terror.ToSQLError(errDuplicateColumn).Code), Equals, mysql.ErrFieldSpecifiedTwice) - c.Assert(int(terror.ToSQLError(errGetDefaultFailed).Code), Equals, mysql.ErrFieldGetDefaultFailed) - c.Assert(int(terror.ToSQLError(ErrNoDefaultValue).Code), Equals, mysql.ErrNoDefaultForField) - c.Assert(int(terror.ToSQLError(ErrIndexOutBound).Code), Equals, mysql.ErrIndexOutBound) - c.Assert(int(terror.ToSQLError(ErrUnsupportedOp).Code), Equals, mysql.ErrUnsupportedOp) - c.Assert(int(terror.ToSQLError(ErrRowNotFound).Code), Equals, mysql.ErrRowNotFound) - c.Assert(int(terror.ToSQLError(ErrTableStateCantNone).Code), Equals, mysql.ErrTableStateCantNone) - c.Assert(int(terror.ToSQLError(ErrColumnStateCantNone).Code), Equals, mysql.ErrColumnStateCantNone) - c.Assert(int(terror.ToSQLError(ErrColumnStateNonPublic).Code), Equals, mysql.ErrColumnStateNonPublic) - c.Assert(int(terror.ToSQLError(ErrIndexStateCantNone).Code), Equals, mysql.ErrIndexStateCantNone) - c.Assert(int(terror.ToSQLError(ErrInvalidRecordKey).Code), Equals, mysql.ErrInvalidRecordKey) - c.Assert(int(terror.ToSQLError(ErrTruncatedWrongValueForField).Code), Equals, mysql.ErrTruncatedWrongValueForField) - c.Assert(int(terror.ToSQLError(ErrUnknownPartition).Code), Equals, mysql.ErrUnknownPartition) - c.Assert(int(terror.ToSQLError(ErrNoPartitionForGivenValue).Code), Equals, mysql.ErrNoPartitionForGivenValue) - c.Assert(int(terror.ToSQLError(ErrLockOrActiveTransaction).Code), Equals, mysql.ErrLockOrActiveTransaction) +func TestErrorCode(t *testing.T) { + t.Parallel() + require.Equal(t, mysql.ErrBadNull, int(terror.ToSQLError(ErrColumnCantNull).Code)) + require.Equal(t, mysql.ErrBadField, int(terror.ToSQLError(ErrUnknownColumn).Code)) + require.Equal(t, mysql.ErrFieldSpecifiedTwice, int(terror.ToSQLError(errDuplicateColumn).Code)) + require.Equal(t, mysql.ErrFieldGetDefaultFailed, int(terror.ToSQLError(errGetDefaultFailed).Code)) + require.Equal(t, mysql.ErrNoDefaultForField, int(terror.ToSQLError(ErrNoDefaultValue).Code)) + require.Equal(t, mysql.ErrIndexOutBound, int(terror.ToSQLError(ErrIndexOutBound).Code)) + require.Equal(t, mysql.ErrUnsupportedOp, int(terror.ToSQLError(ErrUnsupportedOp).Code)) + require.Equal(t, mysql.ErrRowNotFound, int(terror.ToSQLError(ErrRowNotFound).Code)) + require.Equal(t, mysql.ErrTableStateCantNone, int(terror.ToSQLError(ErrTableStateCantNone).Code)) + require.Equal(t, mysql.ErrColumnStateCantNone, int(terror.ToSQLError(ErrColumnStateCantNone).Code)) + require.Equal(t, mysql.ErrColumnStateNonPublic, int(terror.ToSQLError(ErrColumnStateNonPublic).Code)) + require.Equal(t, mysql.ErrIndexStateCantNone, int(terror.ToSQLError(ErrIndexStateCantNone).Code)) + require.Equal(t, mysql.ErrInvalidRecordKey, int(terror.ToSQLError(ErrInvalidRecordKey).Code)) + require.Equal(t, mysql.ErrTruncatedWrongValueForField, int(terror.ToSQLError(ErrTruncatedWrongValueForField).Code)) + require.Equal(t, mysql.ErrUnknownPartition, int(terror.ToSQLError(ErrUnknownPartition).Code)) + require.Equal(t, mysql.ErrNoPartitionForGivenValue, int(terror.ToSQLError(ErrNoPartitionForGivenValue).Code)) + require.Equal(t, mysql.ErrLockOrActiveTransaction, int(terror.ToSQLError(ErrLockOrActiveTransaction).Code)) } From 7755d25aba5120dafde98fff11ab3b98ca4d192f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hoshea=C2=A0Jiang?= Date: Mon, 16 Aug 2021 18:52:00 +0800 Subject: [PATCH 15/27] *: Integrate SkyWalking-eyes to check license headers in CI and fix licenses headers (#27198) --- .build.ps1 | 1 + .github/.licenserc.yaml | 100 ++++++++++++++++++ .github/workflows/license-checker.yml | 23 ++++ Dockerfile | 1 + Makefile | 1 + Makefile.common | 1 + bindinfo/bind_test.go | 1 + bindinfo/cache.go | 1 + bindinfo/handle.go | 1 + bindinfo/session_handle.go | 1 + bindinfo/stat.go | 1 + br/cmd/br/main_test.go | 1 + br/cmd/tidb-lightning-ctl/main.go | 1 + br/cmd/tidb-lightning-ctl/main_test.go | 1 + br/cmd/tidb-lightning/main.go | 1 + br/cmd/tidb-lightning/main_test.go | 1 + br/compatibility/prepare_backup.sh | 1 + br/pkg/cdclog/buffer.go | 1 + br/pkg/cdclog/decoder.go | 1 + br/pkg/cdclog/decoder_test.go | 1 + br/pkg/cdclog/puller.go | 1 + br/pkg/kv/checksum.go | 1 + br/pkg/kv/checksum_test.go | 1 + br/pkg/kv/kv.go | 1 + br/pkg/kv/kv_test.go | 1 + br/pkg/kv/session.go | 1 + br/pkg/kv/session_test.go | 1 + br/pkg/lightning/backend/backend.go | 1 + br/pkg/lightning/backend/importer/importer.go | 1 + .../backend/importer/importer_test.go | 1 + br/pkg/lightning/backend/kv/allocator.go | 1 + br/pkg/lightning/backend/kv/kv2sql.go | 1 + br/pkg/lightning/backend/kv/session.go | 1 + br/pkg/lightning/backend/kv/session_test.go | 1 + br/pkg/lightning/backend/kv/sql2kv.go | 1 + br/pkg/lightning/backend/kv/sql2kv_test.go | 1 + br/pkg/lightning/backend/local/duplicate.go | 1 + br/pkg/lightning/backend/local/iterator.go | 1 + .../lightning/backend/local/iterator_test.go | 1 + br/pkg/lightning/backend/local/key_adapter.go | 1 + .../backend/local/key_adapter_test.go | 1 + br/pkg/lightning/backend/local/local.go | 1 + .../lightning/backend/local/local_freebsd.go | 1 + br/pkg/lightning/backend/local/local_test.go | 1 + br/pkg/lightning/backend/local/local_unix.go | 1 + .../backend/local/local_unix_generic.go | 1 + .../lightning/backend/local/local_windows.go | 1 + br/pkg/lightning/backend/local/localhelper.go | 1 + .../backend/local/localhelper_test.go | 1 + br/pkg/lightning/backend/noop/noop.go | 1 + br/pkg/lightning/backend/tidb/tidb.go | 1 + br/pkg/lightning/backend/tidb/tidb_test.go | 1 + br/pkg/lightning/checkpoints/checkpoints.go | 1 + .../checkpointspb/file_checkpoints.proto | 1 + .../lightning/checkpoints/glue_checkpoint.go | 1 + br/pkg/lightning/checkpoints/tidb.go | 1 + br/pkg/lightning/common/conn.go | 1 + br/pkg/lightning/common/once_error.go | 1 + br/pkg/lightning/common/once_error_test.go | 1 + br/pkg/lightning/common/pause.go | 1 + br/pkg/lightning/common/pause_test.go | 1 + br/pkg/lightning/common/security.go | 1 + br/pkg/lightning/common/security_test.go | 1 + br/pkg/lightning/common/storage.go | 1 + br/pkg/lightning/common/storage_test.go | 1 + br/pkg/lightning/common/storage_unix.go | 1 + br/pkg/lightning/common/storage_windows.go | 1 + br/pkg/lightning/common/util.go | 1 + br/pkg/lightning/common/util_test.go | 1 + br/pkg/lightning/config/bytesize.go | 1 + br/pkg/lightning/config/bytesize_test.go | 1 + br/pkg/lightning/config/config.go | 1 + br/pkg/lightning/config/config_test.go | 1 + br/pkg/lightning/config/configlist.go | 1 + br/pkg/lightning/config/configlist_test.go | 1 + br/pkg/lightning/config/const.go | 1 + br/pkg/lightning/config/global.go | 1 + br/pkg/lightning/glue/glue.go | 1 + br/pkg/lightning/lightning.go | 1 + br/pkg/lightning/lightning_test.go | 1 + br/pkg/lightning/log/log.go | 1 + br/pkg/lightning/log/log_test.go | 1 + br/pkg/lightning/log/testlogger.go | 1 + br/pkg/lightning/manual/allocator.go | 1 + br/pkg/lightning/metric/metric.go | 1 + br/pkg/lightning/metric/metric_test.go | 1 + br/pkg/lightning/mydump/csv_parser.go | 1 + br/pkg/lightning/mydump/loader.go | 1 + br/pkg/lightning/mydump/loader_test.go | 1 + br/pkg/lightning/mydump/parser.go | 1 + br/pkg/lightning/mydump/parser.rl | 1 + br/pkg/lightning/mydump/parser_generated.go | 1 + br/pkg/lightning/mydump/parser_test.go | 1 + br/pkg/lightning/mydump/reader.go | 1 + br/pkg/lightning/mydump/reader_test.go | 1 + br/pkg/lightning/mydump/region.go | 1 + br/pkg/lightning/mydump/region_test.go | 1 + br/pkg/lightning/restore/check_info.go | 1 + br/pkg/lightning/restore/check_template.go | 1 + br/pkg/lightning/restore/checksum.go | 1 + br/pkg/lightning/restore/restore.go | 1 + br/pkg/lightning/restore/restore_test.go | 1 + br/pkg/lightning/restore/table_restore.go | 1 + br/pkg/lightning/restore/tidb.go | 1 + br/pkg/lightning/restore/tidb_test.go | 1 + br/pkg/lightning/sigusr1_other.go | 1 + br/pkg/lightning/sigusr1_unix.go | 1 + br/pkg/lightning/tikv/tikv.go | 1 + br/pkg/lightning/verification/checksum.go | 1 + .../lightning/verification/checksum_test.go | 1 + br/pkg/lightning/web/res.go | 1 + br/pkg/lightning/worker/worker.go | 1 + br/pkg/lightning/worker/worker_test.go | 1 + br/pkg/membuf/buffer.go | 1 + br/pkg/membuf/buffer_test.go | 1 + br/pkg/mock/mockid/mockid.go | 1 + br/pkg/restore/ingester.go | 1 + br/tests/_utils/check_cluster_version | 1 + br/tests/_utils/check_contains | 1 + br/tests/_utils/check_not_contains | 1 + br/tests/_utils/generate_certs | 1 + br/tests/_utils/read_result | 1 + br/tests/_utils/run_br | 1 + br/tests/_utils/run_cdc | 1 + br/tests/_utils/run_curl | 1 + br/tests/_utils/run_lightning | 1 + br/tests/_utils/run_lightning_ctl | 1 + br/tests/_utils/run_pd_ctl | 1 + br/tests/_utils/run_services | 1 + br/tests/_utils/run_sql | 1 + br/tests/_utils/run_sql_in_container | 1 + br/tests/br_300_small_tables/run.sh | 1 + br/tests/br_backup_empty/run.sh | 1 + br/tests/br_backup_version/run.sh | 1 + br/tests/br_case_sensitive/run.sh | 1 + br/tests/br_clustered_index/run.sh | 1 + br/tests/br_db/run.sh | 1 + br/tests/br_db_online/run.sh | 1 + br/tests/br_db_online_newkv/run.sh | 1 + br/tests/br_db_skip/run.sh | 1 + br/tests/br_debug_meta/run.sh | 1 + br/tests/br_full/run.sh | 1 + br/tests/br_full_ddl/run.sh | 1 + br/tests/br_full_index/run.sh | 1 + br/tests/br_gcs/oauth.go | 1 + br/tests/br_gcs/run.sh | 1 + br/tests/br_history/run.sh | 1 + br/tests/br_incompatible_tidb_config/run.sh | 1 + br/tests/br_incremental/run.sh | 1 + br/tests/br_incremental_ddl/run.sh | 1 + br/tests/br_incremental_index/run.sh | 1 + br/tests/br_incremental_only_ddl/run.sh | 1 + br/tests/br_incremental_same_table/run.sh | 1 + br/tests/br_insert_after_restore/run.sh | 1 + br/tests/br_key_locked/codec.go | 1 + br/tests/br_key_locked/locker.go | 1 + br/tests/br_key_locked/run.sh | 1 + br/tests/br_log_restore/run.sh | 1 + br/tests/br_log_test/run.sh | 1 + br/tests/br_move_backup/run.sh | 1 + br/tests/br_other/run.sh | 1 + br/tests/br_range/run.sh | 3 +- br/tests/br_rawkv/run.sh | 1 + br/tests/br_restore_TDE_enable/run.sh | 3 +- br/tests/br_s3/run.sh | 1 + br/tests/br_shuffle_leader/run.sh | 1 + br/tests/br_shuffle_region/run.sh | 1 + br/tests/br_single_table/run.sh | 1 + br/tests/br_skip_checksum/run.sh | 1 + br/tests/br_small_batch_size/run.sh | 1 + br/tests/br_split_region_fail/run.sh | 1 + br/tests/br_table_filter/run.sh | 1 + br/tests/br_table_partition/prepare.sh | 1 + br/tests/br_table_partition/run.sh | 1 + br/tests/br_tiflash/run.sh | 1 + br/tests/br_views_and_sequences/run.sh | 1 + br/tests/br_z_gc_safepoint/gc.go | 1 + br/tests/br_z_gc_safepoint/run.sh | 1 + br/tests/docker_compatible_gcs/prepare.sh | 1 + br/tests/docker_compatible_gcs/run.sh | 1 + br/tests/docker_compatible_s3/prepare.sh | 1 + br/tests/docker_compatible_s3/run.sh | 1 + br/tests/download_tools.sh | 1 + br/tests/lightning_alter_random/run.sh | 1 + br/tests/lightning_auto_random_default/run.sh | 1 + br/tests/lightning_black-white-list/run.sh | 1 + br/tests/lightning_character_sets/run.sh | 1 + br/tests/lightning_checkpoint/run.sh | 1 + br/tests/lightning_checkpoint_chunks/run.sh | 1 + br/tests/lightning_checkpoint_columns/run.sh | 1 + .../lightning_checkpoint_dirty_tableid/run.sh | 1 + br/tests/lightning_checkpoint_engines/run.sh | 1 + .../lightning_checkpoint_error_destroy/run.sh | 1 + br/tests/lightning_checkpoint_parquet/run.sh | 1 + .../lightning_checkpoint_timestamp/run.sh | 1 + br/tests/lightning_common_handle/run.sh | 1 + br/tests/lightning_concurrent-restore/run.sh | 1 + br/tests/lightning_default-columns/run.sh | 1 + br/tests/lightning_disk_quota/run.sh | 1 + br/tests/lightning_duplicate_detection/run.sh | 1 + br/tests/lightning_error_summary/run.sh | 1 + br/tests/lightning_examples/run.sh | 1 + br/tests/lightning_exotic_filenames/run.sh | 1 + br/tests/lightning_fail_fast/run.sh | 1 + br/tests/lightning_file_routing/run.sh | 1 + br/tests/lightning_gcs/run.sh | 1 + br/tests/lightning_generated_columns/run.sh | 1 + br/tests/lightning_incremental/run.sh | 1 + br/tests/lightning_issue_282/run.sh | 1 + br/tests/lightning_issue_410/run.sh | 1 + br/tests/lightning_issue_519/run.sh | 1 + br/tests/lightning_local_backend/run.sh | 1 + br/tests/lightning_new_collation/run.sh | 1 + br/tests/lightning_no_schema/run.sh | 1 + br/tests/lightning_parquet/run.sh | 1 + br/tests/lightning_partitioned-table/run.sh | 1 + br/tests/lightning_restore/run.sh | 1 + br/tests/lightning_s3/run.sh | 1 + br/tests/lightning_shard_rowid/run.sh | 1 + br/tests/lightning_source_linkfile/run.sh | 1 + br/tests/lightning_sqlmode/run.sh | 1 + br/tests/lightning_tidb_duplicate_data/run.sh | 1 + br/tests/lightning_tidb_rowid/run.sh | 1 + br/tests/lightning_tiflash/run.sh | 1 + br/tests/lightning_too_many_columns/run.sh | 1 + br/tests/lightning_tool_135/run.sh | 1 + br/tests/lightning_tool_1420/run.sh | 1 + br/tests/lightning_tool_1472/run.sh | 1 + br/tests/lightning_tool_241/run.sh | 1 + br/tests/lightning_unused_config_keys/run.sh | 1 + br/tests/lightning_various_types/run.sh | 1 + br/tests/lightning_view/run.sh | 1 + br/tests/run.sh | 1 + br/tests/run_compatible.sh | 1 + br/tools/check-errdoc.sh | 1 + br/web/src/ChunksProgressPanel.tsx | 1 + br/web/src/DottedProgress.tsx | 1 + br/web/src/EnginesProgressPanel.tsx | 1 + br/web/src/ErrorButton.tsx | 1 + br/web/src/InfoButton.tsx | 1 + br/web/src/InfoPage.tsx | 1 + br/web/src/MoveTaskButton.tsx | 1 + br/web/src/PauseButton.tsx | 1 + br/web/src/ProgressPage.tsx | 1 + br/web/src/RefreshButton.tsx | 1 + br/web/src/TableProgressCard.tsx | 1 + br/web/src/TableProgressPage.tsx | 1 + br/web/src/TaskButton.tsx | 1 + br/web/src/TitleBar.tsx | 3 +- br/web/src/TitleLink.tsx | 1 + br/web/src/api.ts | 1 + br/web/src/index.tsx | 1 + br/web/src/json-bigint.d.ts | 1 + checkout-pr-branch.sh | 1 + cmd/benchdb/main.go | 1 + cmd/benchfilesort/main.go | 1 + cmd/benchkv/main.go | 1 + cmd/benchraw/main.go | 1 + cmd/ddltest/column_test.go | 1 + cmd/ddltest/ddl_test.go | 1 + cmd/ddltest/index_test.go | 1 + cmd/ddltest/random.go | 1 + cmd/explaintest/main.go | 1 + cmd/explaintest/main_test.go | 1 + cmd/explaintest/run-tests.sh | 1 + cmd/importer/config.go | 1 + cmd/importer/data.go | 1 + cmd/importer/db.go | 1 + cmd/importer/db_test.go | 1 + cmd/importer/job.go | 1 + cmd/importer/main.go | 1 + cmd/importer/parser.go | 1 + cmd/importer/rand.go | 1 + cmd/importer/stats.go | 1 + cmd/pluginpkg/pluginpkg.go | 1 + config/config.go | 1 + config/config_test.go | 1 + config/config_util.go | 1 + config/config_util_test.go | 1 + ddl/attributes_sql_test.go | 1 + ddl/backfilling.go | 1 + ddl/callback.go | 1 + ddl/callback_test.go | 1 + ddl/column.go | 1 + ddl/column_change_test.go | 1 + ddl/column_test.go | 1 + ddl/column_type_change_test.go | 1 + ddl/db_change_test.go | 1 + ddl/db_integration_test.go | 1 + ddl/db_partition_test.go | 1 + ddl/db_test.go | 1 + ddl/ddl.go | 1 + ddl/ddl_algorithm.go | 1 + ddl/ddl_algorithm_test.go | 1 + ddl/ddl_api.go | 1 + ddl/ddl_test.go | 1 + ddl/ddl_worker.go | 1 + ddl/ddl_worker_test.go | 1 + ddl/delete_range.go | 1 + ddl/error.go | 1 + ddl/fail_test.go | 1 + ddl/failtest/fail_db_test.go | 1 + ddl/foreign_key.go | 1 + ddl/foreign_key_test.go | 1 + ddl/generated_column.go | 1 + ddl/index.go | 1 + ddl/index_change_test.go | 1 + ddl/label/attributes.go | 1 + ddl/label/attributes_test.go | 1 + ddl/label/rule.go | 1 + ddl/label/rule_test.go | 1 + ddl/mock.go | 1 + ddl/options.go | 1 + ddl/options_test.go | 1 + ddl/partition.go | 1 + ddl/partition_test.go | 1 + ddl/placement/bundle.go | 1 + ddl/placement/bundle_test.go | 1 + ddl/placement/common.go | 1 + ddl/placement/common_test.go | 1 + ddl/placement/constraint.go | 1 + ddl/placement/constraint_test.go | 1 + ddl/placement/constraints.go | 1 + ddl/placement/constraints_test.go | 1 + ddl/placement/errors.go | 1 + ddl/placement/rule.go | 1 + ddl/placement/rule_test.go | 1 + ddl/placement_sql_test.go | 1 + ddl/reorg.go | 1 + ddl/reorg_test.go | 1 + ddl/restart_test.go | 1 + ddl/rollingback.go | 1 + ddl/rollingback_test.go | 1 + ddl/schema.go | 1 + ddl/schema_test.go | 1 + ddl/sequence.go | 1 + ddl/sequence_test.go | 1 + ddl/serial_test.go | 1 + ddl/session_pool.go | 1 + ddl/split_region.go | 1 + ddl/stat.go | 1 + ddl/stat_test.go | 1 + ddl/table.go | 1 + ddl/table_lock.go | 1 + ddl/table_split_test.go | 1 + ddl/table_test.go | 1 + ddl/testutil/testutil.go | 1 + ddl/util/dead_table_lock_checker.go | 1 + ddl/util/event.go | 1 + ddl/util/syncer.go | 1 + ddl/util/syncer_test.go | 1 + ddl/util/util.go | 1 + distsql/distsql.go | 1 + distsql/distsql_test.go | 1 + distsql/main_test.go | 1 + distsql/request_builder.go | 1 + distsql/request_builder_test.go | 1 + distsql/select_result.go | 1 + distsql/select_result_test.go | 1 + distsql/stream.go | 1 + domain/db_test.go | 1 + domain/domain.go | 1 + domain/domain_test.go | 1 + domain/domain_utils_test.go | 1 + domain/domainctx.go | 1 + domain/domainctx_test.go | 1 + domain/infosync/info.go | 1 + domain/infosync/info_test.go | 1 + domain/main_test.go | 1 + domain/schema_checker.go | 1 + domain/schema_checker_test.go | 1 + domain/schema_validator.go | 1 + domain/schema_validator_test.go | 1 + domain/session_pool_test.go | 1 + domain/sysvar_cache.go | 1 + domain/topn_slow_query.go | 1 + domain/topn_slow_query_test.go | 1 + errno/errcode.go | 1 + errno/errname.go | 1 + errno/infoschema.go | 1 + errno/infoschema_test.go | 1 + errno/main_test.go | 1 + executor/adapter.go | 1 + executor/adapter_test.go | 1 + executor/admin.go | 1 + executor/admin_plugins.go | 1 + executor/admin_telemetry.go | 1 + executor/admin_test.go | 1 + executor/aggfuncs/aggfunc_test.go | 1 + executor/aggfuncs/aggfuncs.go | 1 + executor/aggfuncs/builder.go | 1 + executor/aggfuncs/export_test.go | 1 + executor/aggfuncs/func_avg.go | 1 + executor/aggfuncs/func_avg_test.go | 1 + executor/aggfuncs/func_bitfuncs.go | 1 + executor/aggfuncs/func_bitfuncs_test.go | 1 + executor/aggfuncs/func_count.go | 1 + executor/aggfuncs/func_count_distinct.go | 1 + executor/aggfuncs/func_count_test.go | 1 + executor/aggfuncs/func_cume_dist.go | 1 + executor/aggfuncs/func_cume_dist_test.go | 1 + executor/aggfuncs/func_first_row.go | 1 + executor/aggfuncs/func_first_row_test.go | 1 + executor/aggfuncs/func_group_concat.go | 1 + executor/aggfuncs/func_group_concat_test.go | 1 + executor/aggfuncs/func_json_arrayagg.go | 1 + executor/aggfuncs/func_json_arrayagg_test.go | 1 + executor/aggfuncs/func_json_objectagg.go | 1 + executor/aggfuncs/func_json_objectagg_test.go | 1 + executor/aggfuncs/func_lead_lag.go | 1 + executor/aggfuncs/func_lead_lag_test.go | 1 + executor/aggfuncs/func_max_min.go | 1 + executor/aggfuncs/func_max_min_test.go | 1 + executor/aggfuncs/func_ntile.go | 1 + executor/aggfuncs/func_ntile_test.go | 1 + executor/aggfuncs/func_percent_rank.go | 1 + executor/aggfuncs/func_percent_rank_test.go | 1 + executor/aggfuncs/func_percentile.go | 1 + executor/aggfuncs/func_percentile_test.go | 1 + executor/aggfuncs/func_rank.go | 1 + executor/aggfuncs/func_rank_test.go | 1 + executor/aggfuncs/func_stddevpop.go | 1 + executor/aggfuncs/func_stddevsamp.go | 1 + executor/aggfuncs/func_sum.go | 1 + executor/aggfuncs/func_sum_test.go | 1 + executor/aggfuncs/func_value.go | 1 + executor/aggfuncs/func_value_test.go | 1 + executor/aggfuncs/func_varpop.go | 1 + executor/aggfuncs/func_varsamp.go | 1 + executor/aggfuncs/row_number.go | 1 + executor/aggfuncs/row_number_test.go | 1 + executor/aggfuncs/window_func_test.go | 1 + executor/aggregate.go | 1 + executor/aggregate_test.go | 1 + executor/analyze.go | 1 + executor/analyze_test.go | 1 + executor/apply_cache.go | 1 + executor/apply_cache_test.go | 1 + executor/batch_checker.go | 1 + executor/batch_point_get.go | 1 + executor/batch_point_get_test.go | 1 + executor/benchmark_test.go | 1 + executor/bind.go | 1 + executor/brie.go | 1 + executor/brie_test.go | 1 + executor/builder.go | 1 + executor/change.go | 1 + executor/checksum.go | 1 + executor/chunk_size_control_test.go | 1 + executor/collation_test.go | 1 + executor/compiler.go | 1 + executor/concurrent_map.go | 1 + executor/concurrent_map_test.go | 1 + executor/coprocessor.go | 1 + executor/cte.go | 1 + executor/cte_table_reader.go | 1 + executor/cte_test.go | 1 + executor/ddl.go | 1 + executor/ddl_test.go | 1 + executor/delete.go | 1 + executor/delete_test.go | 1 + executor/distsql.go | 1 + executor/distsql_test.go | 1 + executor/errors.go | 1 + executor/executor.go | 1 + executor/executor_pkg_test.go | 1 + executor/executor_required_rows_test.go | 1 + executor/executor_test.go | 1 + executor/explain.go | 1 + executor/explain_test.go | 1 + executor/explain_unit_test.go | 1 + executor/explainfor_test.go | 1 + executor/grant.go | 1 + executor/grant_test.go | 1 + executor/hash_table.go | 1 + executor/hash_table_test.go | 1 + executor/index_advise.go | 1 + executor/index_advise_test.go | 1 + executor/index_lookup_hash_join.go | 1 + executor/index_lookup_join.go | 1 + executor/index_lookup_join_test.go | 1 + executor/index_lookup_merge_join.go | 1 + executor/index_merge_reader.go | 1 + executor/index_merge_reader_test.go | 1 + executor/infoschema_reader.go | 1 + executor/infoschema_reader_test.go | 1 + executor/insert.go | 1 + executor/insert_common.go | 1 + executor/insert_test.go | 1 + executor/inspection_common.go | 1 + executor/inspection_common_test.go | 1 + executor/inspection_profile.go | 1 + executor/inspection_result.go | 1 + executor/inspection_result_test.go | 1 + executor/inspection_summary.go | 1 + executor/inspection_summary_test.go | 1 + executor/join.go | 1 + executor/join_pkg_test.go | 1 + executor/join_test.go | 1 + executor/joiner.go | 1 + executor/joiner_test.go | 1 + executor/load_data.go | 1 + executor/load_stats.go | 1 + executor/main_test.go | 1 + executor/mem_reader.go | 1 + executor/memory_test.go | 1 + executor/memtable_reader.go | 1 + executor/memtable_reader_test.go | 1 + executor/merge_join.go | 1 + executor/merge_join_test.go | 1 + executor/metrics_reader.go | 1 + executor/metrics_reader_test.go | 1 + executor/mpp_gather.go | 1 + executor/oomtest/oom_test.go | 1 + executor/opt_rule_blacklist.go | 1 + executor/parallel_apply.go | 1 + executor/parallel_apply_test.go | 1 + executor/partition_table.go | 1 + executor/partition_table_test.go | 1 + executor/pipelined_window.go | 1 + executor/plan_recreator.go | 1 + executor/point_get.go | 1 + executor/point_get_test.go | 1 + executor/prepared.go | 1 + executor/prepared_test.go | 1 + executor/projection.go | 1 + executor/reload_expr_pushdown_blacklist.go | 1 + executor/replace.go | 1 + executor/revoke.go | 1 + executor/revoke_test.go | 1 + executor/rowid_test.go | 1 + executor/sample.go | 1 + executor/sample_test.go | 1 + executor/select_into.go | 1 + executor/select_into_test.go | 1 + executor/seqtest/prepared_test.go | 1 + executor/seqtest/seq_executor_test.go | 1 + executor/set.go | 1 + executor/set_config.go | 1 + executor/set_test.go | 1 + executor/show.go | 1 + executor/show_placement.go | 1 + executor/show_placement_test.go | 1 + executor/show_stats.go | 1 + executor/show_stats_test.go | 1 + executor/show_test.go | 1 + executor/shuffle.go | 1 + executor/shuffle_test.go | 1 + executor/simple.go | 1 + executor/simple_test.go | 1 + executor/slow_query.go | 1 + executor/slow_query_test.go | 1 + executor/sort.go | 1 + executor/sort_test.go | 1 + executor/split.go | 1 + executor/split_test.go | 1 + executor/stale_txn_test.go | 1 + executor/statement_context_test.go | 1 + executor/table_reader.go | 1 + executor/table_readers_required_rows_test.go | 1 + executor/tiflash_test.go | 1 + executor/trace.go | 1 + executor/trace_test.go | 1 + executor/union_iter.go | 1 + executor/union_iter_test.go | 1 + executor/union_scan.go | 1 + executor/union_scan_test.go | 1 + executor/update.go | 1 + executor/update_test.go | 1 + executor/utils.go | 1 + executor/utils_test.go | 1 + executor/window.go | 1 + executor/window_test.go | 1 + executor/write.go | 1 + executor/write_concurrent_test.go | 1 + executor/write_test.go | 1 + expression/aggregation/agg_to_pb.go | 1 + expression/aggregation/agg_to_pb_test.go | 1 + expression/aggregation/aggregation.go | 1 + expression/aggregation/aggregation_test.go | 1 + expression/aggregation/avg.go | 1 + expression/aggregation/base_func.go | 1 + expression/aggregation/bench_test.go | 1 + expression/aggregation/bit_and.go | 1 + expression/aggregation/bit_or.go | 1 + expression/aggregation/bit_xor.go | 1 + expression/aggregation/concat.go | 1 + expression/aggregation/count.go | 1 + expression/aggregation/descriptor.go | 1 + expression/aggregation/explain.go | 1 + expression/aggregation/first_row.go | 1 + expression/aggregation/max_min.go | 1 + expression/aggregation/sum.go | 1 + expression/aggregation/util.go | 1 + expression/aggregation/window_func.go | 1 + expression/bench_test.go | 1 + expression/builtin.go | 1 + expression/builtin_arithmetic.go | 1 + expression/builtin_arithmetic_test.go | 1 + expression/builtin_arithmetic_vec.go | 1 + expression/builtin_arithmetic_vec_test.go | 1 + expression/builtin_cast.go | 1 + expression/builtin_cast_bench_test.go | 1 + expression/builtin_cast_test.go | 1 + expression/builtin_cast_vec.go | 1 + expression/builtin_cast_vec_test.go | 1 + expression/builtin_compare.go | 1 + expression/builtin_compare_test.go | 1 + expression/builtin_compare_vec.go | 1 + expression/builtin_compare_vec_generated.go | 1 + .../builtin_compare_vec_generated_test.go | 1 + expression/builtin_compare_vec_test.go | 1 + expression/builtin_control.go | 1 + expression/builtin_control_test.go | 1 + expression/builtin_control_vec_generated.go | 1 + .../builtin_control_vec_generated_test.go | 1 + expression/builtin_encryption.go | 1 + expression/builtin_encryption_test.go | 1 + expression/builtin_encryption_vec.go | 1 + expression/builtin_encryption_vec_test.go | 1 + expression/builtin_info.go | 1 + expression/builtin_info_test.go | 1 + expression/builtin_info_vec.go | 1 + expression/builtin_info_vec_test.go | 1 + expression/builtin_json.go | 1 + expression/builtin_json_test.go | 1 + expression/builtin_json_vec.go | 1 + expression/builtin_json_vec_test.go | 1 + expression/builtin_like.go | 1 + expression/builtin_like_test.go | 1 + expression/builtin_like_vec.go | 1 + expression/builtin_like_vec_test.go | 1 + expression/builtin_math.go | 1 + expression/builtin_math_test.go | 1 + expression/builtin_math_vec.go | 1 + expression/builtin_math_vec_test.go | 1 + expression/builtin_miscellaneous.go | 1 + expression/builtin_miscellaneous_test.go | 1 + expression/builtin_miscellaneous_vec.go | 1 + expression/builtin_miscellaneous_vec_test.go | 1 + expression/builtin_op.go | 1 + expression/builtin_op_test.go | 1 + expression/builtin_op_vec.go | 1 + expression/builtin_op_vec_test.go | 1 + expression/builtin_other.go | 1 + expression/builtin_other_test.go | 1 + expression/builtin_other_vec.go | 1 + expression/builtin_other_vec_generated.go | 1 + .../builtin_other_vec_generated_test.go | 1 + expression/builtin_other_vec_test.go | 1 + expression/builtin_regexp_vec_const_test.go | 1 + expression/builtin_string.go | 1 + expression/builtin_string_test.go | 1 + expression/builtin_string_vec.go | 1 + expression/builtin_string_vec_generated.go | 1 + .../builtin_string_vec_generated_test.go | 1 + expression/builtin_string_vec_test.go | 1 + expression/builtin_test.go | 1 + expression/builtin_time.go | 1 + expression/builtin_time_test.go | 1 + expression/builtin_time_vec.go | 1 + expression/builtin_time_vec_generated.go | 1 + expression/builtin_time_vec_generated_test.go | 1 + expression/builtin_time_vec_test.go | 1 + expression/builtin_vectorized.go | 1 + expression/builtin_vectorized_test.go | 1 + expression/chunk_executor.go | 1 + expression/collation.go | 1 + expression/collation_test.go | 1 + expression/column.go | 1 + expression/column_test.go | 1 + expression/constant.go | 1 + expression/constant_fold.go | 1 + expression/constant_fold_test.go | 1 + expression/constant_propagation.go | 1 + expression/constant_propagation_test.go | 1 + expression/constant_test.go | 1 + expression/distsql_builtin.go | 1 + expression/distsql_builtin_test.go | 1 + expression/errors.go | 1 + expression/evaluator.go | 1 + expression/evaluator_test.go | 1 + expression/explain.go | 1 + expression/expr_to_pb.go | 1 + expression/expr_to_pb_test.go | 1 + expression/expression.go | 1 + expression/expression_test.go | 1 + expression/flag_simplify_test.go | 1 + expression/function_traits.go | 1 + expression/function_traits_test.go | 1 + expression/generator/compare_vec.go | 4 +- expression/generator/control_vec.go | 13 ++- expression/generator/helper/helper.go | 1 + expression/generator/other_vec.go | 3 + expression/generator/string_vec.go | 2 + expression/generator/time_vec.go | 3 + expression/helper.go | 1 + expression/helper_test.go | 1 + expression/integration_test.go | 1 + expression/partition_pruner.go | 1 + expression/rand.go | 1 + expression/rand_test.go | 1 + expression/scalar_function.go | 1 + expression/scalar_function_test.go | 1 + expression/schema.go | 1 + expression/schema_test.go | 1 + expression/simple_rewriter.go | 1 + expression/typeinfer_test.go | 1 + expression/util.go | 1 + expression/util_test.go | 1 + expression/vectorized.go | 1 + infoschema/builder.go | 1 + infoschema/cache.go | 1 + infoschema/cache_test.go | 1 + infoschema/cluster.go | 1 + infoschema/error.go | 1 + infoschema/infoschema.go | 1 + infoschema/infoschema_test.go | 1 + infoschema/metric_table_def.go | 1 + infoschema/metrics_schema.go | 1 + infoschema/metrics_schema_test.go | 1 + infoschema/perfschema/const.go | 1 + infoschema/perfschema/init.go | 1 + infoschema/perfschema/main_test.go | 1 + infoschema/perfschema/tables.go | 1 + infoschema/perfschema/tables_test.go | 1 + infoschema/tables.go | 1 + infoschema/tables_test.go | 1 + kv/cachedb.go | 1 + kv/checker.go | 1 + kv/checker_test.go | 1 + kv/error.go | 1 + kv/error_test.go | 1 + kv/fault_injection.go | 1 + kv/fault_injection_test.go | 1 + kv/interface_mock_test.go | 1 + kv/iter.go | 1 + kv/key.go | 1 + kv/key_test.go | 1 + kv/keyflags.go | 1 + kv/kv.go | 1 + kv/main_test.go | 1 + kv/mock_test.go | 1 + kv/mpp.go | 1 + kv/option.go | 1 + kv/txn.go | 1 + kv/txn_scope_var.go | 1 + kv/txn_test.go | 1 + kv/utils.go | 1 + kv/utils_test.go | 1 + kv/variables.go | 1 + kv/version.go | 1 + kv/version_test.go | 1 + lock/lock.go | 1 + meta/autoid/autoid.go | 1 + meta/autoid/autoid_test.go | 1 + meta/autoid/bench_test.go | 1 + meta/autoid/errors.go | 1 + meta/autoid/main_test.go | 1 + meta/autoid/memid.go | 1 + meta/autoid/memid_test.go | 1 + meta/autoid/seq_autoid_test.go | 1 + meta/main_test.go | 1 + meta/meta.go | 1 + meta/meta_test.go | 1 + metrics/bindinfo.go | 1 + metrics/ddl.go | 1 + metrics/distsql.go | 1 + metrics/domain.go | 1 + metrics/executor.go | 1 + metrics/gc_worker.go | 1 + metrics/main_test.go | 1 + metrics/meta.go | 1 + metrics/metrics.go | 1 + metrics/metrics_test.go | 1 + metrics/owner.go | 1 + metrics/server.go | 1 + metrics/session.go | 1 + metrics/sli.go | 1 + metrics/stats.go | 1 + metrics/telemetry.go | 1 + owner/fail_test.go | 1 + owner/main_test.go | 1 + owner/manager.go | 1 + owner/manager_test.go | 1 + owner/mock.go | 1 + planner/cascades/enforcer_rules.go | 1 + planner/cascades/enforcer_rules_test.go | 1 + planner/cascades/implementation_rules.go | 1 + planner/cascades/integration_test.go | 1 + planner/cascades/optimize.go | 1 + planner/cascades/optimize_test.go | 1 + planner/cascades/stringer.go | 1 + planner/cascades/stringer_test.go | 1 + planner/cascades/transformation_rules.go | 1 + planner/cascades/transformation_rules_test.go | 1 + planner/core/cache.go | 1 + planner/core/cache_test.go | 1 + planner/core/cacheable_checker.go | 1 + planner/core/cacheable_checker_test.go | 1 + planner/core/cbo_test.go | 1 + planner/core/common_plans.go | 1 + planner/core/encode.go | 1 + planner/core/enforce_mpp_test.go | 1 + planner/core/errors.go | 1 + planner/core/errors_test.go | 1 + planner/core/exhaust_physical_plans.go | 1 + planner/core/exhaust_physical_plans_test.go | 1 + planner/core/explain.go | 1 + planner/core/expression_rewriter.go | 1 + planner/core/expression_rewriter_test.go | 1 + planner/core/expression_test.go | 1 + planner/core/find_best_task.go | 1 + planner/core/find_best_task_test.go | 1 + planner/core/fragment.go | 1 + planner/core/handle_cols.go | 1 + planner/core/hashcode.go | 1 + planner/core/hints.go | 1 + planner/core/indexmerge_test.go | 1 + planner/core/initialize.go | 1 + planner/core/integration_partition_test.go | 1 + planner/core/integration_test.go | 1 + planner/core/logical_plan_builder.go | 1 + planner/core/logical_plan_test.go | 1 + planner/core/logical_plans.go | 1 + planner/core/logical_plans_test.go | 1 + planner/core/memtable_predicate_extractor.go | 1 + .../core/memtable_predicate_extractor_test.go | 1 + planner/core/mock.go | 1 + planner/core/optimizer.go | 1 + planner/core/optimizer_test.go | 1 + planner/core/partition_prune.go | 1 + planner/core/partition_pruner_test.go | 1 + planner/core/partition_pruning_test.go | 1 + planner/core/pb_to_plan.go | 1 + planner/core/physical_plan_test.go | 1 + planner/core/physical_plans.go | 1 + planner/core/plan.go | 1 + planner/core/plan_test.go | 1 + planner/core/plan_to_pb.go | 1 + planner/core/plan_to_pb_test.go | 1 + planner/core/planbuilder.go | 1 + planner/core/planbuilder_test.go | 1 + planner/core/point_get_plan.go | 1 + planner/core/point_get_plan_test.go | 1 + planner/core/prepare_test.go | 1 + planner/core/preprocess.go | 1 + planner/core/preprocess_test.go | 1 + planner/core/property_cols_prune.go | 1 + planner/core/resolve_indices.go | 1 + planner/core/rule_aggregation_elimination.go | 1 + planner/core/rule_aggregation_push_down.go | 1 + planner/core/rule_build_key_info.go | 1 + planner/core/rule_column_pruning.go | 1 + planner/core/rule_decorrelate.go | 1 + planner/core/rule_eliminate_projection.go | 1 + .../core/rule_generate_column_substitute.go | 1 + planner/core/rule_inject_extra_projection.go | 1 + .../core/rule_inject_extra_projection_test.go | 1 + planner/core/rule_join_elimination.go | 1 + planner/core/rule_join_reorder.go | 1 + planner/core/rule_join_reorder_dp.go | 1 + planner/core/rule_join_reorder_dp_test.go | 1 + planner/core/rule_join_reorder_greedy.go | 1 + planner/core/rule_max_min_eliminate.go | 1 + planner/core/rule_partition_processor.go | 1 + planner/core/rule_predicate_push_down.go | 1 + planner/core/rule_result_reorder.go | 1 + planner/core/rule_result_reorder_test.go | 1 + planner/core/rule_topn_push_down.go | 1 + planner/core/stats.go | 1 + planner/core/stats_test.go | 1 + planner/core/stringer.go | 1 + planner/core/task.go | 1 + planner/core/trace.go | 1 + planner/core/util.go | 1 + planner/implementation/base.go | 1 + planner/implementation/base_test.go | 1 + planner/implementation/datasource.go | 1 + planner/implementation/join.go | 1 + planner/implementation/main_test.go | 1 + planner/implementation/simple_plans.go | 1 + planner/implementation/sort.go | 1 + planner/memo/expr_iterator.go | 1 + planner/memo/expr_iterator_test.go | 1 + planner/memo/group.go | 1 + planner/memo/group_expr.go | 1 + planner/memo/group_expr_test.go | 1 + planner/memo/group_test.go | 1 + planner/memo/implementation.go | 1 + planner/memo/main_test.go | 1 + planner/memo/pattern.go | 1 + planner/memo/pattern_test.go | 1 + planner/optimize.go | 1 + planner/property/logical_property.go | 1 + planner/property/physical_property.go | 1 + planner/property/stats_info.go | 1 + planner/property/task_type.go | 1 + planner/util/byitem.go | 1 + planner/util/path.go | 1 + plugin/audit.go | 1 + plugin/conn_ip_example/conn_ip_example.go | 1 + .../conn_ip_example/conn_ip_example_test.go | 1 + plugin/conn_ip_example/main_test.go | 1 + plugin/const.go | 1 + plugin/const_test.go | 1 + plugin/errors.go | 1 + plugin/helper.go | 1 + plugin/helper_test.go | 1 + plugin/integration_test.go | 1 + plugin/main_test.go | 1 + plugin/plugin.go | 1 + plugin/plugin_test.go | 1 + plugin/spi.go | 1 + plugin/spi_test.go | 1 + privilege/privilege.go | 1 + privilege/privileges/cache.go | 1 + privilege/privileges/cache_test.go | 1 + privilege/privileges/errors.go | 1 + privilege/privileges/main_test.go | 1 + privilege/privileges/privileges.go | 1 + privilege/privileges/privileges_test.go | 1 + server/buffered_read_conn.go | 1 + server/column.go | 1 + server/column_test.go | 1 + server/conn.go | 1 + server/conn_stmt.go | 1 + server/conn_stmt_test.go | 1 + server/conn_test.go | 1 + server/driver.go | 1 + server/driver_tidb.go | 1 + server/driver_tidb_test.go | 1 + server/http_handler.go | 1 + server/http_handler_test.go | 1 + server/http_status.go | 1 + server/packetio.go | 1 + server/packetio_test.go | 1 + server/rpc_server.go | 1 + server/server.go | 1 + server/server_test.go | 1 + server/sql_info_fetcher.go | 1 + server/stat.go | 1 + server/statistics_handler.go | 1 + server/statistics_handler_test.go | 1 + server/tidb_test.go | 1 + server/tokenlimiter.go | 1 + server/util.go | 1 + server/util_test.go | 1 + session/bench_test.go | 1 + session/bootstrap.go | 1 + session/bootstrap_test.go | 1 + session/clustered_index_test.go | 1 + session/isolation_test.go | 1 + session/pessimistic_test.go | 1 + session/schema_amender.go | 1 + session/schema_amender_test.go | 1 + session/session.go | 1 + session/session_fail_test.go | 1 + session/session_test.go | 1 + session/tidb.go | 1 + session/tidb_test.go | 1 + session/txn.go | 1 + session/txninfo/txn_info.go | 1 + sessionctx/binloginfo/binloginfo.go | 1 + sessionctx/binloginfo/binloginfo_test.go | 1 + sessionctx/context.go | 1 + sessionctx/context_test.go | 1 + sessionctx/stmtctx/stmtctx.go | 1 + sessionctx/stmtctx/stmtctx_test.go | 1 + sessionctx/variable/error.go | 1 + sessionctx/variable/mock_globalaccessor.go | 1 + sessionctx/variable/noop.go | 1 + sessionctx/variable/sequence_state.go | 1 + sessionctx/variable/session.go | 1 + sessionctx/variable/session_test.go | 1 + sessionctx/variable/statusvar.go | 1 + sessionctx/variable/statusvar_test.go | 1 + sessionctx/variable/sysvar.go | 1 + sessionctx/variable/sysvar_test.go | 1 + sessionctx/variable/tidb_vars.go | 1 + sessionctx/variable/varsutil.go | 1 + sessionctx/variable/varsutil_test.go | 1 + statistics/analyze.go | 1 + statistics/analyze_jobs.go | 1 + statistics/analyze_jobs_test.go | 1 + statistics/builder.go | 1 + statistics/cmsketch.go | 1 + statistics/cmsketch_test.go | 1 + statistics/estimate.go | 1 + statistics/feedback.go | 1 + statistics/feedback_test.go | 1 + statistics/fmsketch.go | 1 + statistics/fmsketch_test.go | 1 + statistics/handle/bootstrap.go | 1 + statistics/handle/ddl.go | 1 + statistics/handle/ddl_test.go | 1 + statistics/handle/dump.go | 1 + statistics/handle/dump_test.go | 1 + statistics/handle/gc.go | 1 + statistics/handle/gc_test.go | 1 + statistics/handle/handle.go | 1 + statistics/handle/handle_test.go | 1 + statistics/handle/update.go | 1 + statistics/handle/update_list_test.go | 1 + statistics/handle/update_test.go | 1 + statistics/histogram.go | 1 + statistics/histogram_test.go | 1 + statistics/integration_test.go | 1 + statistics/row_sampler.go | 1 + statistics/sample.go | 1 + statistics/sample_test.go | 1 + statistics/scalar.go | 1 + statistics/scalar_test.go | 1 + statistics/selectivity.go | 1 + statistics/selectivity_test.go | 1 + statistics/statistics_test.go | 1 + statistics/table.go | 1 + store/batch_coprocessor_test.go | 1 + store/copr/batch_coprocessor.go | 1 + store/copr/batch_request_sender.go | 1 + store/copr/coprocessor.go | 1 + store/copr/coprocessor_cache.go | 1 + store/copr/coprocessor_cache_test.go | 1 + store/copr/coprocessor_test.go | 1 + store/copr/key_ranges.go | 1 + store/copr/key_ranges_test.go | 1 + store/copr/mpp.go | 1 + store/copr/region_cache.go | 1 + store/copr/store.go | 1 + store/driver/backoff/backoff.go | 1 + store/driver/error/error.go | 1 + store/driver/options/options.go | 1 + store/driver/sql_fail_test.go | 1 + store/driver/tikv_driver.go | 1 + store/driver/txn/batch_getter.go | 1 + store/driver/txn/batch_getter_test.go | 1 + store/driver/txn/binlog.go | 1 + store/driver/txn/driver_test.go | 1 + store/driver/txn/error.go | 1 + store/driver/txn/scanner.go | 1 + store/driver/txn/snapshot.go | 1 + store/driver/txn/txn_driver.go | 1 + store/driver/txn/unionstore_driver.go | 1 + store/driver/util_test.go | 1 + store/gcworker/gc_worker.go | 1 + store/gcworker/gc_worker_test.go | 1 + store/helper/helper.go | 1 + store/helper/helper_test.go | 1 + store/mockstore/cluster_test.go | 1 + store/mockstore/mockcopr/aggregate.go | 1 + store/mockstore/mockcopr/analyze.go | 1 + store/mockstore/mockcopr/checksum.go | 1 + store/mockstore/mockcopr/cop_handler_dag.go | 1 + .../mockcopr/cop_handler_dag_test.go | 1 + store/mockstore/mockcopr/copr_handler.go | 1 + store/mockstore/mockcopr/executor.go | 1 + store/mockstore/mockcopr/executor_test.go | 1 + store/mockstore/mockcopr/rpc_copr.go | 1 + store/mockstore/mockcopr/topn.go | 1 + store/mockstore/mockstorage/storage.go | 1 + store/mockstore/mockstore.go | 1 + store/mockstore/redirector.go | 1 + store/mockstore/tikv.go | 1 + store/mockstore/tikv_test.go | 1 + store/mockstore/unistore.go | 1 + store/mockstore/unistore/client/client.go | 1 + store/mockstore/unistore/cluster.go | 1 + store/mockstore/unistore/config/config.go | 1 + .../mockstore/unistore/cophandler/analyze.go | 1 + .../unistore/cophandler/closure_exec.go | 1 + .../unistore/cophandler/cop_handler.go | 1 + .../unistore/cophandler/cop_handler_test.go | 1 + store/mockstore/unistore/cophandler/mpp.go | 1 + .../mockstore/unistore/cophandler/mpp_exec.go | 1 + store/mockstore/unistore/cophandler/topn.go | 1 + store/mockstore/unistore/lockstore/arena.go | 1 + .../mockstore/unistore/lockstore/iterator.go | 1 + .../mockstore/unistore/lockstore/load_dump.go | 1 + .../mockstore/unistore/lockstore/lockstore.go | 1 + .../unistore/lockstore/lockstore_test.go | 1 + store/mockstore/unistore/metrics/metrics.go | 1 + store/mockstore/unistore/mock.go | 1 + store/mockstore/unistore/pd.go | 1 + store/mockstore/unistore/pd/client.go | 1 + store/mockstore/unistore/raw_handler.go | 1 + store/mockstore/unistore/raw_handler_test.go | 1 + store/mockstore/unistore/rpc.go | 1 + .../unistore/tikv/dbreader/db_reader.go | 2 + store/mockstore/unistore/tikv/deadlock.go | 1 + store/mockstore/unistore/tikv/detector.go | 2 + .../mockstore/unistore/tikv/detector_test.go | 2 + store/mockstore/unistore/tikv/errors.go | 1 + store/mockstore/unistore/tikv/inner_server.go | 1 + store/mockstore/unistore/tikv/mock_region.go | 1 + store/mockstore/unistore/tikv/mvcc.go | 1 + .../mockstore/unistore/tikv/mvcc/db_writer.go | 1 + store/mockstore/unistore/tikv/mvcc/mvcc.go | 1 + store/mockstore/unistore/tikv/mvcc/tikv.go | 1 + store/mockstore/unistore/tikv/mvcc_test.go | 1 + .../unistore/tikv/pberror/pberror.go | 1 + store/mockstore/unistore/tikv/region.go | 1 + store/mockstore/unistore/tikv/server.go | 1 + store/mockstore/unistore/tikv/server_batch.go | 1 + store/mockstore/unistore/tikv/util.go | 1 + store/mockstore/unistore/tikv/write.go | 1 + .../unistore/util/lockwaiter/lockwaiter.go | 1 + .../util/lockwaiter/lockwaiter_test.go | 1 + store/store.go | 1 + store/store_test.go | 1 + structure/hash.go | 1 + structure/list.go | 1 + structure/string.go | 1 + structure/structure.go | 1 + structure/structure_test.go | 1 + structure/type.go | 1 + table/column.go | 1 + table/column_test.go | 1 + table/index.go | 1 + table/main_test.go | 1 + table/table.go | 1 + table/table_test.go | 1 + table/tables/index.go | 1 + table/tables/index_test.go | 1 + table/tables/partition.go | 1 + table/tables/partition_test.go | 1 + table/tables/tables.go | 1 + table/tables/tables_test.go | 1 + tablecodec/bench_test.go | 1 + tablecodec/tablecodec.go | 1 + tablecodec/tablecodec_test.go | 1 + telemetry/cte_test/cte_test.go | 1 + telemetry/data.go | 1 + telemetry/data_cluster_hardware.go | 1 + telemetry/data_cluster_hardware_test.go | 1 + telemetry/data_cluster_info.go | 1 + telemetry/data_feature_usage.go | 1 + telemetry/data_feature_usage_test.go | 1 + telemetry/data_slow_query.go | 1 + telemetry/data_telemetry_host_extra.go | 1 + telemetry/data_window.go | 1 + telemetry/id.go | 1 + telemetry/main_test.go | 1 + telemetry/status.go | 1 + telemetry/telemetry.go | 1 + telemetry/telemetry_test.go | 1 + telemetry/util.go | 1 + telemetry/util_test.go | 1 + testkit/asynctestkit.go | 1 + testkit/handle.go | 1 + testkit/mockstore.go | 1 + testkit/result.go | 1 + testkit/testdata/testdata.go | 1 + testkit/testkit.go | 1 + tests/globalkilltest/Makefile | 1 + tests/globalkilltest/global_kill_test.go | 1 + tests/globalkilltest/run-tests.sh | 1 + tests/graceshutdown/Makefile | 1 + tests/graceshutdown/graceshutdown_test.go | 1 + tests/graceshutdown/run-tests.sh | 1 + tidb-server/main.go | 1 + tidb-server/main_test.go | 1 + tools/check/check-errdoc.sh | 1 + tools/check/check-gogenerate.sh | 1 + tools/check/check-tidy.sh | 1 + tools/check/check_parser_replace.sh | 1 + tools/check/check_testSuite.sh | 1 + types/benchmark_test.go | 1 + types/binary_literal.go | 1 + types/binary_literal_test.go | 1 + types/compare.go | 1 + types/compare_test.go | 1 + types/const_test.go | 1 + types/convert.go | 1 + types/convert_test.go | 1 + types/core_time.go | 1 + types/core_time_test.go | 1 + types/datum.go | 1 + types/datum_eval.go | 1 + types/datum_test.go | 1 + types/enum.go | 1 + types/enum_test.go | 1 + types/errors.go | 1 + types/errors_test.go | 1 + types/etc.go | 1 + types/etc_test.go | 1 + types/eval_type.go | 1 + types/explain_format.go | 1 + types/export_test.go | 1 + types/field_name.go | 1 + types/field_type.go | 1 + types/field_type_test.go | 1 + types/format_test.go | 1 + types/fsp.go | 1 + types/fsp_test.go | 1 + types/helper.go | 1 + types/helper_test.go | 1 + types/json/binary.go | 1 + types/json/binary_functions.go | 1 + types/json/binary_functions_test.go | 1 + types/json/binary_test.go | 1 + types/json/constants.go | 1 + types/json/main_test.go | 1 + types/json/path_expr.go | 1 + types/json/path_expr_test.go | 1 + types/mydecimal.go | 1 + types/mydecimal_benchmark_test.go | 1 + types/mydecimal_test.go | 1 + types/overflow.go | 1 + types/overflow_test.go | 1 + types/parser_driver/main_test.go | 1 + types/parser_driver/special_cmt_ctrl.go | 1 + types/parser_driver/value_expr.go | 1 + types/parser_driver/value_expr_test.go | 1 + types/set.go | 1 + types/set_test.go | 1 + types/time.go | 1 + types/time_test.go | 1 + util/admin/admin.go | 1 + util/admin/admin_integration_test.go | 1 + util/admin/admin_test.go | 1 + util/admin/main_test.go | 1 + util/arena/arena.go | 1 + util/arena/arena_test.go | 1 + util/arena/main_test.go | 1 + util/bitmap/concurrent.go | 1 + util/bitmap/concurrent_test.go | 1 + util/bitmap/main_test.go | 1 + util/checksum/checksum.go | 1 + util/checksum/checksum_test.go | 1 + util/checksum/main_test.go | 1 + util/chunk/chunk.go | 1 + util/chunk/chunk_test.go | 1 + util/chunk/chunk_util.go | 1 + util/chunk/chunk_util_test.go | 1 + util/chunk/codec.go | 1 + util/chunk/codec_test.go | 1 + util/chunk/column.go | 1 + util/chunk/column_test.go | 1 + util/chunk/compare.go | 1 + util/chunk/disk.go | 1 + util/chunk/disk_test.go | 1 + util/chunk/iterator.go | 1 + util/chunk/iterator_test.go | 1 + util/chunk/list.go | 1 + util/chunk/list_test.go | 1 + util/chunk/main_test.go | 1 + util/chunk/mutrow.go | 1 + util/chunk/mutrow_test.go | 1 + util/chunk/pool.go | 1 + util/chunk/pool_test.go | 1 + util/chunk/row.go | 1 + util/chunk/row_container.go | 1 + util/chunk/row_container_test.go | 1 + util/codec/bench_test.go | 1 + util/codec/bytes.go | 1 + util/codec/bytes_test.go | 1 + util/codec/codec.go | 1 + util/codec/codec_test.go | 1 + util/codec/collation_test.go | 1 + util/codec/decimal.go | 1 + util/codec/decimal_test.go | 1 + util/codec/float.go | 1 + util/codec/main_test.go | 1 + util/codec/number.go | 1 + util/collate/bin.go | 1 + util/collate/collate.go | 1 + util/collate/collate_test.go | 1 + util/collate/general_ci.go | 1 + util/collate/main_test.go | 1 + util/collate/pinyin_tidb_as_cs.go | 1 + util/collate/unicode_ci.go | 1 + util/collate/unicode_ci_data.go | 1 + util/cteutil/main_test.go | 1 + util/cteutil/storage.go | 1 + util/cteutil/storage_test.go | 1 + util/dbterror/main_test.go | 1 + util/dbterror/terror.go | 1 + util/dbterror/terror_test.go | 1 + util/deadlockhistory/deadlock_history.go | 1 + util/deadlockhistory/deadlock_history_test.go | 1 + util/deadlockhistory/main_test.go | 1 + util/disjointset/int_set.go | 1 + util/disjointset/int_set_test.go | 1 + util/disjointset/main_test.go | 1 + util/disk/tempDir.go | 1 + util/disk/tempDir_test.go | 1 + util/disk/tracker.go | 1 + util/domainutil/repair_vars.go | 1 + util/encrypt/aes.go | 1 + util/encrypt/aes_layer.go | 1 + util/encrypt/aes_layer_test.go | 1 + util/encrypt/aes_test.go | 1 + util/encrypt/crypt.go | 1 + util/encrypt/crypt_test.go | 1 + util/execdetails/execdetails.go | 1 + util/execdetails/execdetails_test.go | 1 + util/execdetails/main_test.go | 1 + util/expensivequery/expensivequerey_test.go | 1 + util/expensivequery/expensivequery.go | 1 + util/expensivequery/memory_usage_alarm.go | 1 + util/fastrand/main_test.go | 1 + util/fastrand/random.go | 1 + util/fastrand/random_test.go | 1 + util/filesort/filesort.go | 1 + util/filesort/filesort_test.go | 1 + util/format/format.go | 1 + util/format/format_test.go | 1 + util/format/main_test.go | 1 + util/gcutil/gcutil.go | 1 + util/generatedexpr/gen_expr_test.go | 1 + util/generatedexpr/generated_expr.go | 1 + util/generatedexpr/main_test.go | 1 + util/gogc.go | 1 + util/hack/hack.go | 1 + util/hack/hack_test.go | 1 + util/hack/main_test.go | 1 + util/hint/hint_processor.go | 1 + util/israce/israce.go | 1 + util/israce/norace.go | 1 + util/keydecoder/keydecoder.go | 1 + util/keydecoder/keydecoder_test.go | 1 + util/keydecoder/main_test.go | 1 + util/kvcache/main_test.go | 1 + util/kvcache/simple_lru.go | 1 + util/kvcache/simple_lru_test.go | 1 + util/localpool/localpool.go | 1 + util/localpool/localpool_norace.go | 1 + util/localpool/localpool_race.go | 1 + util/localpool/localpool_test.go | 1 + util/localpool/main_test.go | 1 + util/logutil/hex.go | 1 + util/logutil/hex_test.go | 1 + util/logutil/log.go | 1 + util/logutil/log_test.go | 1 + util/logutil/main_test.go | 1 + util/main_test.go | 1 + util/math/main_test.go | 1 + util/math/math.go | 1 + util/math/math_test.go | 1 + util/memory/action.go | 1 + util/memory/bench_test.go | 1 + util/memory/main_test.go | 1 + util/memory/meminfo.go | 1 + util/memory/tracker.go | 1 + util/memory/tracker_test.go | 1 + util/misc.go | 1 + util/misc_test.go | 1 + util/mock/client.go | 1 + util/mock/context.go | 1 + util/mock/main_test.go | 1 + util/mock/mock_test.go | 1 + util/mock/store.go | 1 + util/mvmap/fnv.go | 1 + util/mvmap/mvmap.go | 1 + util/mvmap/mvmap_test.go | 1 + util/parser/ast.go | 1 + util/parser/ast_test.go | 1 + util/parser/parser.go | 1 + util/parser/parser_test.go | 1 + util/pdapi/const.go | 1 + util/plancodec/codec.go | 1 + util/plancodec/codec_test.go | 1 + util/plancodec/id.go | 1 + util/plancodec/id_test.go | 1 + util/plancodec/main_test.go | 1 + util/prefix_helper.go | 1 + util/prefix_helper_test.go | 1 + util/printer/main_test.go | 1 + util/printer/printer.go | 1 + util/printer/printer_test.go | 1 + util/processinfo.go | 1 + util/processinfo_test.go | 1 + util/profile/flamegraph.go | 1 + util/profile/flamegraph_test.go | 1 + util/profile/main_test.go | 1 + util/profile/profile.go | 1 + util/profile/profile_test.go | 1 + util/profile/trackerRecorder.go | 1 + util/profile/trackerrecorder_test.go | 1 + util/ranger/checker.go | 1 + util/ranger/detacher.go | 1 + util/ranger/main_test.go | 1 + util/ranger/points.go | 1 + util/ranger/ranger.go | 1 + util/ranger/ranger_test.go | 1 + util/ranger/types.go | 1 + util/ranger/types_test.go | 1 + util/resourcegrouptag/main_test.go | 1 + .../resource_group_tag_test.go | 1 + util/rowDecoder/decoder.go | 1 + util/rowDecoder/decoder_test.go | 1 + util/rowDecoder/main_test.go | 1 + util/rowcodec/bench_test.go | 1 + util/rowcodec/common.go | 1 + util/rowcodec/decoder.go | 1 + util/rowcodec/encoder.go | 1 + util/rowcodec/export_test.go | 1 + util/rowcodec/row.go | 1 + util/rowcodec/rowcodec_test.go | 1 + util/selection/main_test.go | 1 + util/selection/selection.go | 1 + util/selection/selection_test.go | 1 + util/sem/main_test.go | 1 + util/sem/sem.go | 1 + util/sem/sem_test.go | 1 + util/set/float64_set.go | 1 + util/set/float64_set_test.go | 1 + util/set/int_set.go | 1 + util/set/int_set_test.go | 1 + util/set/main_test.go | 1 + util/set/set_with_memory_usage.go | 1 + util/set/string_set.go | 1 + util/set/string_set_test.go | 1 + util/signal/signal_posix.go | 1 + util/signal/signal_wasm.go | 1 + util/signal/signal_windows.go | 1 + util/sli/sli.go | 1 + util/slice/main_test.go | 1 + util/slice/slice.go | 1 + util/slice/slice_test.go | 1 + util/sqlexec/main_test.go | 1 + util/sqlexec/restricted_sql_executor.go | 1 + util/sqlexec/utils.go | 1 + util/sqlexec/utils_test.go | 1 + util/stmtsummary/evicted.go | 1 + util/stmtsummary/evicted_test.go | 1 + util/stmtsummary/main_test.go | 1 + util/stmtsummary/reader.go | 1 + util/stmtsummary/statement_summary.go | 1 + util/stmtsummary/statement_summary_test.go | 1 + util/stmtsummary/variables.go | 1 + util/stmtsummary/variables_test.go | 1 + util/stringutil/main_test.go | 1 + util/stringutil/string_util.go | 1 + util/stringutil/string_util_test.go | 1 + util/sys/linux/main_test.go | 1 + util/sys/linux/sys_linux.go | 1 + util/sys/linux/sys_other.go | 1 + util/sys/linux/sys_test.go | 1 + util/sys/storage/main_test.go | 1 + util/sys/storage/sys_other.go | 1 + util/sys/storage/sys_posix.go | 1 + util/sys/storage/sys_test.go | 1 + util/sys/storage/sys_windows.go | 1 + util/systimemon/main_test.go | 1 + util/systimemon/systime_mon.go | 1 + util/systimemon/systime_mon_test.go | 1 + util/tableutil/tableutil.go | 1 + util/testbridge/bridge.go | 1 + util/testkit/testkit.go | 1 + util/testkit/testkit_test.go | 1 + util/testleak/add-leaktest.sh | 1 + util/testleak/check-leaktest.sh | 1 + util/testleak/fake.go | 1 + util/testleak/leaktest.go | 1 + util/testutil/testutil.go | 1 + util/testutil/testutil_test.go | 1 + util/texttree/main_test.go | 1 + util/texttree/texttree.go | 1 + util/texttree/texttree_test.go | 1 + util/timeutil/main_test.go | 1 + util/timeutil/time.go | 1 + util/timeutil/time_test.go | 1 + util/topsql/main_test.go | 1 + util/topsql/reporter/client.go | 1 + util/topsql/reporter/main_test.go | 1 + util/topsql/reporter/reporter.go | 1 + util/topsql/reporter/reporter_test.go | 1 + util/topsql/topsql.go | 1 + util/topsql/topsql_test.go | 1 + util/topsql/tracecpu/mock/mock.go | 1 + util/topsql/tracecpu/profile.go | 1 + util/tracing/main_test.go | 1 + util/tracing/noop_bench_test.go | 1 + util/tracing/util.go | 1 + util/tracing/util_test.go | 1 + util/versioninfo/versioninfo.go | 1 + util/vitess/main_test.go | 1 + util/vitess/vitess_hash.go | 1 + util/vitess/vitess_hash_test.go | 1 + 1480 files changed, 1621 insertions(+), 9 deletions(-) create mode 100644 .github/.licenserc.yaml create mode 100644 .github/workflows/license-checker.yml diff --git a/.build.ps1 b/.build.ps1 index bcd506c49f874..18482c379410e 100644 --- a/.build.ps1 +++ b/.build.ps1 @@ -8,6 +8,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/.github/.licenserc.yaml b/.github/.licenserc.yaml new file mode 100644 index 0000000000000..a4063fae0ce0a --- /dev/null +++ b/.github/.licenserc.yaml @@ -0,0 +1,100 @@ +header: + license: + spdx-id: Apache-2.0 + copyright-owner: PingCAP, Inc. + paths-ignore: + - 'docs/' + - 'br/' + - '.gitignore' + - '.gitattributes' + - '.golangci.yml' + - '.licenserc.yaml' + - 'LICENSES/' + - '**/*.md' + - '**/*.json' + - '**/*.pem' + - '**/*.crt' + - '**/*.test' + - '**/*.result' + - '**/*.example' + - '.codecov.yml' + - 'circle.yml' + - 'errors.toml' + - 'Jenkinsfile' + - '.editorconfig' + - 'hooks/pre-commit' + - '**/go.mod' + - '**/go.sum' + - 'LICENSE' + - '.github/' + # The license checker think the following 68 files do not have valid header licenses, need to be discussed. + # Ignore them for now. + - 'cmd/explaintest/config.toml' + - 'cmd/importer/config.toml' + - 'cmd/portgenerator/portgenerator.go' + - 'ddl/ddl.go' + - 'ddl/ddl_api.go' + - 'ddl/mock.go' + - 'ddl/options.go' + - 'executor/aggfuncs/func_stddevpop_test.go' + - 'executor/aggfuncs/func_stddevsamp_test.go' + - 'executor/aggfuncs/func_varpop_test.go' + - 'executor/aggfuncs/func_varsamp_test.go' + - 'executor/index_lookup_merge_join_test.go' + - 'executor/pkg_test.go' + - 'expression/aggregation/base_func_test.go' + - 'expression/aggregation/util_test.go' + - 'expression/builtin.go' + - 'expression/builtin_info.go' + - 'expression/builtin_math.go' + - 'expression/builtin_miscellaneous.go' + - 'expression/builtin_miscellaneous_test.go' + - 'expression/builtin_string.go' + - 'expression/builtin_time.go' + - 'metrics/alertmanager/tidb.rules.yml' + - 'metrics/topsql.go' + - 'planner/core/cache_test.go' + - 'planner/core/logical_plans_test.go' + - 'planner/core/partition_prune.go' + - 'planner/core/partition_pruning_test.go' + - 'planner/core/rule_aggregation_push_down.go' + - 'planner/core/rule_max_min_eliminate.go' + - 'planner/core/rule_partition_processor.go' + - 'planner/core/rule_predicate_push_down.go' + - 'planner/core/telemetry.go' + - 'plugin/conn_ip_example/manifest.toml' + - 'server/conn.go' + - 'server/conn_stmt.go' + - 'server/packetio.go' + - 'server/server.go' + - 'server/util.go' + - 'session/bootstrap.go' + - 'session/session.go' + - 'session/tidb.go' + - 'store/driver/kv_test.go' + - 'store/mockstore/unistore/config/config-template.toml' + - 'store/mockstore/unistore/server/server.go' + - 'table/column.go' + - 'table/table.go' + - 'table/tables/tables.go' + - 'tests/globalkilltest/config.toml' + - 'tests/readonlytest/readonly_test.go' + - 'tools/check/check-timeout.go' + - 'tools/check/revive.toml' + - 'types/convert.go' + - 'types/etc.go' + - 'types/fuzzMarshalJSON.go' + - 'types/fuzzNewBitLiteral.go' + - 'types/fuzzNewHexLiteral.go' + - 'util/collate/collate_bench_test.go' + - 'util/format/format.go' + - 'util/logutil/slow_query_logger.go' + - 'util/mvmap/fnv.go' + - 'util/prefix_helper.go' + - 'util/resourcegrouptag/resource_group_tag.go' + - 'util/set/set_with_memory_usage_test.go' + - 'util/testkit/fake.go' + - 'util/testleak/leaktest.go' + - 'util/timeutil/time_test.go' + - 'util/topsql/reporter/mock/server.go' + comment: on-failure diff --git a/.github/workflows/license-checker.yml b/.github/workflows/license-checker.yml new file mode 100644 index 0000000000000..114783ae3000e --- /dev/null +++ b/.github/workflows/license-checker.yml @@ -0,0 +1,23 @@ +name: License checker + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + check-license: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Check License Header + uses: apache/skywalking-eyes@main + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + log: info + config: .github/.licenserc.yaml diff --git a/Dockerfile b/Dockerfile index a739919a752b3..154727f659357 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,6 +8,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/Makefile b/Makefile index 9c417d86df9dd..840c282dd7eee 100644 --- a/Makefile +++ b/Makefile @@ -8,6 +8,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/Makefile.common b/Makefile.common index 7547ec94d0eb8..a5bdc22f80c58 100644 --- a/Makefile.common +++ b/Makefile.common @@ -8,6 +8,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/bindinfo/bind_test.go b/bindinfo/bind_test.go index bd7ab2e848c76..94aca56b62a42 100644 --- a/bindinfo/bind_test.go +++ b/bindinfo/bind_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/bindinfo/cache.go b/bindinfo/cache.go index 46364affbd74d..2c224faac96e0 100644 --- a/bindinfo/cache.go +++ b/bindinfo/cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/bindinfo/handle.go b/bindinfo/handle.go index 1301f6e2556ac..ad0372fa74a9e 100644 --- a/bindinfo/handle.go +++ b/bindinfo/handle.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/bindinfo/session_handle.go b/bindinfo/session_handle.go index 6b54aa9118f77..2d9d1fe3caac8 100644 --- a/bindinfo/session_handle.go +++ b/bindinfo/session_handle.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/bindinfo/stat.go b/bindinfo/stat.go index aea98669002d1..f9c2e681ecb1e 100644 --- a/bindinfo/stat.go +++ b/bindinfo/stat.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/cmd/br/main_test.go b/br/cmd/br/main_test.go index 8b68380494380..c31fdbb8e51d5 100644 --- a/br/cmd/br/main_test.go +++ b/br/cmd/br/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/cmd/tidb-lightning-ctl/main.go b/br/cmd/tidb-lightning-ctl/main.go index 645c9888d60a0..7758621ac5bf3 100644 --- a/br/cmd/tidb-lightning-ctl/main.go +++ b/br/cmd/tidb-lightning-ctl/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/cmd/tidb-lightning-ctl/main_test.go b/br/cmd/tidb-lightning-ctl/main_test.go index e0351c20e9345..9847a62c53e79 100644 --- a/br/cmd/tidb-lightning-ctl/main_test.go +++ b/br/cmd/tidb-lightning-ctl/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/cmd/tidb-lightning/main.go b/br/cmd/tidb-lightning/main.go index d248bac7c26f1..0d44ab8cfe7d2 100644 --- a/br/cmd/tidb-lightning/main.go +++ b/br/cmd/tidb-lightning/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/cmd/tidb-lightning/main_test.go b/br/cmd/tidb-lightning/main_test.go index c77e38a88b440..309b9e24675b3 100644 --- a/br/cmd/tidb-lightning/main_test.go +++ b/br/cmd/tidb-lightning/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/compatibility/prepare_backup.sh b/br/compatibility/prepare_backup.sh index 56eab1949abcb..173d475531bac 100644 --- a/br/compatibility/prepare_backup.sh +++ b/br/compatibility/prepare_backup.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/pkg/cdclog/buffer.go b/br/pkg/cdclog/buffer.go index 84f36ae263eff..7cfe2ea638d94 100644 --- a/br/pkg/cdclog/buffer.go +++ b/br/pkg/cdclog/buffer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/cdclog/decoder.go b/br/pkg/cdclog/decoder.go index f8bdbdb6440b0..e524384fd92c6 100644 --- a/br/pkg/cdclog/decoder.go +++ b/br/pkg/cdclog/decoder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/cdclog/decoder_test.go b/br/pkg/cdclog/decoder_test.go index 150b9fc883c5e..5f7c8b6b22e73 100644 --- a/br/pkg/cdclog/decoder_test.go +++ b/br/pkg/cdclog/decoder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/cdclog/puller.go b/br/pkg/cdclog/puller.go index 6fe36f464a844..1c823c8de6c44 100644 --- a/br/pkg/cdclog/puller.go +++ b/br/pkg/cdclog/puller.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/kv/checksum.go b/br/pkg/kv/checksum.go index af033c5068171..dbfed41aa0edc 100644 --- a/br/pkg/kv/checksum.go +++ b/br/pkg/kv/checksum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/kv/checksum_test.go b/br/pkg/kv/checksum_test.go index c4bbcd7af1f5b..2bda54bebb0ad 100644 --- a/br/pkg/kv/checksum_test.go +++ b/br/pkg/kv/checksum_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/kv/kv.go b/br/pkg/kv/kv.go index de12914d8d84e..80bbdf92d5340 100644 --- a/br/pkg/kv/kv.go +++ b/br/pkg/kv/kv.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/kv/kv_test.go b/br/pkg/kv/kv_test.go index 4994c8b7bcb74..170a2baff99c8 100644 --- a/br/pkg/kv/kv_test.go +++ b/br/pkg/kv/kv_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/kv/session.go b/br/pkg/kv/session.go index 93ad7293d1bdb..ad08d520cd9fc 100644 --- a/br/pkg/kv/session.go +++ b/br/pkg/kv/session.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/kv/session_test.go b/br/pkg/kv/session_test.go index 34b2330799385..3d1fff80575a8 100644 --- a/br/pkg/kv/session_test.go +++ b/br/pkg/kv/session_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/backend.go b/br/pkg/lightning/backend/backend.go index 9f778e15afaec..0a775c4a2b015 100644 --- a/br/pkg/lightning/backend/backend.go +++ b/br/pkg/lightning/backend/backend.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/importer/importer.go b/br/pkg/lightning/backend/importer/importer.go index 6cfd85ca45a98..dc292bdb7e870 100644 --- a/br/pkg/lightning/backend/importer/importer.go +++ b/br/pkg/lightning/backend/importer/importer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/importer/importer_test.go b/br/pkg/lightning/backend/importer/importer_test.go index cc1f28b00bf5d..524a523d2e31d 100644 --- a/br/pkg/lightning/backend/importer/importer_test.go +++ b/br/pkg/lightning/backend/importer/importer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/kv/allocator.go b/br/pkg/lightning/backend/kv/allocator.go index 40dd503be4606..ff86f72524e60 100644 --- a/br/pkg/lightning/backend/kv/allocator.go +++ b/br/pkg/lightning/backend/kv/allocator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/kv/kv2sql.go b/br/pkg/lightning/backend/kv/kv2sql.go index f3f0e0b6f6246..9438094250af2 100644 --- a/br/pkg/lightning/backend/kv/kv2sql.go +++ b/br/pkg/lightning/backend/kv/kv2sql.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/kv/session.go b/br/pkg/lightning/backend/kv/session.go index 88c7fe7d044ed..59934b58cd9fb 100644 --- a/br/pkg/lightning/backend/kv/session.go +++ b/br/pkg/lightning/backend/kv/session.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/kv/session_test.go b/br/pkg/lightning/backend/kv/session_test.go index c8debcdf8793e..5bdde40ba187c 100644 --- a/br/pkg/lightning/backend/kv/session_test.go +++ b/br/pkg/lightning/backend/kv/session_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/kv/sql2kv.go b/br/pkg/lightning/backend/kv/sql2kv.go index b00dbadcce495..b061bf76ac381 100644 --- a/br/pkg/lightning/backend/kv/sql2kv.go +++ b/br/pkg/lightning/backend/kv/sql2kv.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/kv/sql2kv_test.go b/br/pkg/lightning/backend/kv/sql2kv_test.go index 2ecb23c1e43a9..289d8978afdce 100644 --- a/br/pkg/lightning/backend/kv/sql2kv_test.go +++ b/br/pkg/lightning/backend/kv/sql2kv_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/duplicate.go b/br/pkg/lightning/backend/local/duplicate.go index 81911a34ccb30..659ef0037a8b9 100644 --- a/br/pkg/lightning/backend/local/duplicate.go +++ b/br/pkg/lightning/backend/local/duplicate.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/iterator.go b/br/pkg/lightning/backend/local/iterator.go index a6bcd46e22baa..8cd8bc243ca8a 100644 --- a/br/pkg/lightning/backend/local/iterator.go +++ b/br/pkg/lightning/backend/local/iterator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/iterator_test.go b/br/pkg/lightning/backend/local/iterator_test.go index 095222ff44cf6..3c0077247971b 100644 --- a/br/pkg/lightning/backend/local/iterator_test.go +++ b/br/pkg/lightning/backend/local/iterator_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/key_adapter.go b/br/pkg/lightning/backend/local/key_adapter.go index 1eae5bfe1f8a3..0a1bb296aeec0 100644 --- a/br/pkg/lightning/backend/local/key_adapter.go +++ b/br/pkg/lightning/backend/local/key_adapter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/key_adapter_test.go b/br/pkg/lightning/backend/local/key_adapter_test.go index 12080ed9c343d..9892fef4f0e06 100644 --- a/br/pkg/lightning/backend/local/key_adapter_test.go +++ b/br/pkg/lightning/backend/local/key_adapter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/local.go b/br/pkg/lightning/backend/local/local.go index 36b4362cfe6af..129cdc9a5ab12 100644 --- a/br/pkg/lightning/backend/local/local.go +++ b/br/pkg/lightning/backend/local/local.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/local_freebsd.go b/br/pkg/lightning/backend/local/local_freebsd.go index c54f40a98b4a6..08fc827052210 100644 --- a/br/pkg/lightning/backend/local/local_freebsd.go +++ b/br/pkg/lightning/backend/local/local_freebsd.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/local_test.go b/br/pkg/lightning/backend/local/local_test.go index 97aae9db1c1ed..fd491d9680a51 100644 --- a/br/pkg/lightning/backend/local/local_test.go +++ b/br/pkg/lightning/backend/local/local_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/local_unix.go b/br/pkg/lightning/backend/local/local_unix.go index d0d7e8316a24a..d2383aca745c1 100644 --- a/br/pkg/lightning/backend/local/local_unix.go +++ b/br/pkg/lightning/backend/local/local_unix.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/local_unix_generic.go b/br/pkg/lightning/backend/local/local_unix_generic.go index 362b4c1f15f4c..2ea66ba4430cb 100644 --- a/br/pkg/lightning/backend/local/local_unix_generic.go +++ b/br/pkg/lightning/backend/local/local_unix_generic.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/local_windows.go b/br/pkg/lightning/backend/local/local_windows.go index a6e34aad8d5e8..cf0e158088cc0 100644 --- a/br/pkg/lightning/backend/local/local_windows.go +++ b/br/pkg/lightning/backend/local/local_windows.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/localhelper.go b/br/pkg/lightning/backend/local/localhelper.go index 34fa23a60321b..2d9dc5c48cbdd 100644 --- a/br/pkg/lightning/backend/local/localhelper.go +++ b/br/pkg/lightning/backend/local/localhelper.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/local/localhelper_test.go b/br/pkg/lightning/backend/local/localhelper_test.go index be6c5f013ddfc..11149a000fbe2 100644 --- a/br/pkg/lightning/backend/local/localhelper_test.go +++ b/br/pkg/lightning/backend/local/localhelper_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/noop/noop.go b/br/pkg/lightning/backend/noop/noop.go index 3636ec38c6968..37ca4fd8e77a2 100644 --- a/br/pkg/lightning/backend/noop/noop.go +++ b/br/pkg/lightning/backend/noop/noop.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/tidb/tidb.go b/br/pkg/lightning/backend/tidb/tidb.go index 22bfd6ac87c9d..b2259ffb5c8a3 100644 --- a/br/pkg/lightning/backend/tidb/tidb.go +++ b/br/pkg/lightning/backend/tidb/tidb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/backend/tidb/tidb_test.go b/br/pkg/lightning/backend/tidb/tidb_test.go index 40033ea7ae4eb..b9f1cc76b0b5b 100644 --- a/br/pkg/lightning/backend/tidb/tidb_test.go +++ b/br/pkg/lightning/backend/tidb/tidb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/checkpoints/checkpoints.go b/br/pkg/lightning/checkpoints/checkpoints.go index a52cb3cc3800e..83b389a89938e 100644 --- a/br/pkg/lightning/checkpoints/checkpoints.go +++ b/br/pkg/lightning/checkpoints/checkpoints.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/checkpoints/checkpointspb/file_checkpoints.proto b/br/pkg/lightning/checkpoints/checkpointspb/file_checkpoints.proto index 9f8708a1fa276..0888e1da56ef7 100644 --- a/br/pkg/lightning/checkpoints/checkpointspb/file_checkpoints.proto +++ b/br/pkg/lightning/checkpoints/checkpointspb/file_checkpoints.proto @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/checkpoints/glue_checkpoint.go b/br/pkg/lightning/checkpoints/glue_checkpoint.go index 78a1f0c501b6a..0785a6f1a76ca 100644 --- a/br/pkg/lightning/checkpoints/glue_checkpoint.go +++ b/br/pkg/lightning/checkpoints/glue_checkpoint.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/checkpoints/tidb.go b/br/pkg/lightning/checkpoints/tidb.go index f53cadd4288dc..b04fcda401bb5 100644 --- a/br/pkg/lightning/checkpoints/tidb.go +++ b/br/pkg/lightning/checkpoints/tidb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/conn.go b/br/pkg/lightning/common/conn.go index 2a6970800a608..0dc011e88b7fa 100644 --- a/br/pkg/lightning/common/conn.go +++ b/br/pkg/lightning/common/conn.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/once_error.go b/br/pkg/lightning/common/once_error.go index 14c05193ea12b..50e110842724b 100644 --- a/br/pkg/lightning/common/once_error.go +++ b/br/pkg/lightning/common/once_error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/once_error_test.go b/br/pkg/lightning/common/once_error_test.go index a4bd83300ccf4..3e4ae41121a11 100644 --- a/br/pkg/lightning/common/once_error_test.go +++ b/br/pkg/lightning/common/once_error_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/pause.go b/br/pkg/lightning/common/pause.go index 7c616e6ea5a92..4cbb3a39cae95 100644 --- a/br/pkg/lightning/common/pause.go +++ b/br/pkg/lightning/common/pause.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/pause_test.go b/br/pkg/lightning/common/pause_test.go index 53da312b01d49..34ee124b7026a 100644 --- a/br/pkg/lightning/common/pause_test.go +++ b/br/pkg/lightning/common/pause_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/security.go b/br/pkg/lightning/common/security.go index 367b40299e060..1b48213be0a6f 100644 --- a/br/pkg/lightning/common/security.go +++ b/br/pkg/lightning/common/security.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/security_test.go b/br/pkg/lightning/common/security_test.go index 8e37fa7fcc1d3..1eec0ef9f72ce 100644 --- a/br/pkg/lightning/common/security_test.go +++ b/br/pkg/lightning/common/security_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/storage.go b/br/pkg/lightning/common/storage.go index e038203195b9e..ae69018431719 100644 --- a/br/pkg/lightning/common/storage.go +++ b/br/pkg/lightning/common/storage.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/storage_test.go b/br/pkg/lightning/common/storage_test.go index 3ae1c08328f7a..db46269149a4c 100644 --- a/br/pkg/lightning/common/storage_test.go +++ b/br/pkg/lightning/common/storage_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/storage_unix.go b/br/pkg/lightning/common/storage_unix.go index e1eae76b9b837..ba22e92354ceb 100644 --- a/br/pkg/lightning/common/storage_unix.go +++ b/br/pkg/lightning/common/storage_unix.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/storage_windows.go b/br/pkg/lightning/common/storage_windows.go index a0d8d13fc0e54..21a2398ad66c3 100644 --- a/br/pkg/lightning/common/storage_windows.go +++ b/br/pkg/lightning/common/storage_windows.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/util.go b/br/pkg/lightning/common/util.go index e836f7b9e8fb2..786ffe6434f69 100644 --- a/br/pkg/lightning/common/util.go +++ b/br/pkg/lightning/common/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/common/util_test.go b/br/pkg/lightning/common/util_test.go index f754c9c7a59d4..04a1ceecf45b1 100644 --- a/br/pkg/lightning/common/util_test.go +++ b/br/pkg/lightning/common/util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/bytesize.go b/br/pkg/lightning/config/bytesize.go index d511c72c1db23..bc159d0825496 100644 --- a/br/pkg/lightning/config/bytesize.go +++ b/br/pkg/lightning/config/bytesize.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/bytesize_test.go b/br/pkg/lightning/config/bytesize_test.go index 80bbc6b5b1a09..5e8d07785561a 100644 --- a/br/pkg/lightning/config/bytesize_test.go +++ b/br/pkg/lightning/config/bytesize_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/config.go b/br/pkg/lightning/config/config.go index 394c73ce66908..4c2fbba4c1c55 100644 --- a/br/pkg/lightning/config/config.go +++ b/br/pkg/lightning/config/config.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/config_test.go b/br/pkg/lightning/config/config_test.go index 4d4f0e34cb272..b69db37f24767 100644 --- a/br/pkg/lightning/config/config_test.go +++ b/br/pkg/lightning/config/config_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/configlist.go b/br/pkg/lightning/config/configlist.go index 00ff6c79b2467..6a3753881419e 100644 --- a/br/pkg/lightning/config/configlist.go +++ b/br/pkg/lightning/config/configlist.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/configlist_test.go b/br/pkg/lightning/config/configlist_test.go index 0a458749f78db..48deed74817ab 100644 --- a/br/pkg/lightning/config/configlist_test.go +++ b/br/pkg/lightning/config/configlist_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/const.go b/br/pkg/lightning/config/const.go index 21289e70bdf95..78ad85c2944d7 100644 --- a/br/pkg/lightning/config/const.go +++ b/br/pkg/lightning/config/const.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/config/global.go b/br/pkg/lightning/config/global.go index b5189afe7cf69..7eb8e240c9dfe 100644 --- a/br/pkg/lightning/config/global.go +++ b/br/pkg/lightning/config/global.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/glue/glue.go b/br/pkg/lightning/glue/glue.go index 53fd94e4f2a38..e2e770226b4fd 100644 --- a/br/pkg/lightning/glue/glue.go +++ b/br/pkg/lightning/glue/glue.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/lightning.go b/br/pkg/lightning/lightning.go index 8031627fe7021..a25751e923f36 100644 --- a/br/pkg/lightning/lightning.go +++ b/br/pkg/lightning/lightning.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/lightning_test.go b/br/pkg/lightning/lightning_test.go index ba9ab7fe4a9bf..337adc96f9882 100644 --- a/br/pkg/lightning/lightning_test.go +++ b/br/pkg/lightning/lightning_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/log/log.go b/br/pkg/lightning/log/log.go index 4058f2513ce9b..e91ed3fb47a56 100644 --- a/br/pkg/lightning/log/log.go +++ b/br/pkg/lightning/log/log.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/log/log_test.go b/br/pkg/lightning/log/log_test.go index 1090ed6cfe720..8024b5fa50df9 100644 --- a/br/pkg/lightning/log/log_test.go +++ b/br/pkg/lightning/log/log_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/log/testlogger.go b/br/pkg/lightning/log/testlogger.go index 759a2d2a317ac..5fad50adc0d96 100644 --- a/br/pkg/lightning/log/testlogger.go +++ b/br/pkg/lightning/log/testlogger.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/manual/allocator.go b/br/pkg/lightning/manual/allocator.go index 91829e3f02d92..821eb750c5030 100644 --- a/br/pkg/lightning/manual/allocator.go +++ b/br/pkg/lightning/manual/allocator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/metric/metric.go b/br/pkg/lightning/metric/metric.go index ef611828e4621..a06c8355266cf 100644 --- a/br/pkg/lightning/metric/metric.go +++ b/br/pkg/lightning/metric/metric.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/metric/metric_test.go b/br/pkg/lightning/metric/metric_test.go index 8801c2e928ca8..18bc94e8517b2 100644 --- a/br/pkg/lightning/metric/metric_test.go +++ b/br/pkg/lightning/metric/metric_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/csv_parser.go b/br/pkg/lightning/mydump/csv_parser.go index 7cd400e3d5b6e..16e8676966f5e 100644 --- a/br/pkg/lightning/mydump/csv_parser.go +++ b/br/pkg/lightning/mydump/csv_parser.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/loader.go b/br/pkg/lightning/mydump/loader.go index 24af41ac7ad87..27bab8fa5cf7b 100644 --- a/br/pkg/lightning/mydump/loader.go +++ b/br/pkg/lightning/mydump/loader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/loader_test.go b/br/pkg/lightning/mydump/loader_test.go index ff39f438f23ce..76bc50eba2793 100644 --- a/br/pkg/lightning/mydump/loader_test.go +++ b/br/pkg/lightning/mydump/loader_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/parser.go b/br/pkg/lightning/mydump/parser.go index 81c050ae01635..3743d1c94b9c1 100644 --- a/br/pkg/lightning/mydump/parser.go +++ b/br/pkg/lightning/mydump/parser.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/parser.rl b/br/pkg/lightning/mydump/parser.rl index 1ad090dd5f2fe..25627dbf2e865 100644 --- a/br/pkg/lightning/mydump/parser.rl +++ b/br/pkg/lightning/mydump/parser.rl @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/parser_generated.go b/br/pkg/lightning/mydump/parser_generated.go index a53af0eb949dc..bc58a9d181e0d 100644 --- a/br/pkg/lightning/mydump/parser_generated.go +++ b/br/pkg/lightning/mydump/parser_generated.go @@ -11,6 +11,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/parser_test.go b/br/pkg/lightning/mydump/parser_test.go index 0f388ea7cc8ab..e73dc9c49e9b6 100644 --- a/br/pkg/lightning/mydump/parser_test.go +++ b/br/pkg/lightning/mydump/parser_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/reader.go b/br/pkg/lightning/mydump/reader.go index 801a5a59079ae..7db6bf2bf8ed5 100644 --- a/br/pkg/lightning/mydump/reader.go +++ b/br/pkg/lightning/mydump/reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/reader_test.go b/br/pkg/lightning/mydump/reader_test.go index 93bd153d1a064..0ff37ad666747 100644 --- a/br/pkg/lightning/mydump/reader_test.go +++ b/br/pkg/lightning/mydump/reader_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/region.go b/br/pkg/lightning/mydump/region.go index 9ec56cf2d97cb..07b7693a9a216 100644 --- a/br/pkg/lightning/mydump/region.go +++ b/br/pkg/lightning/mydump/region.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/mydump/region_test.go b/br/pkg/lightning/mydump/region_test.go index 4d35b465af75d..657781c92c996 100644 --- a/br/pkg/lightning/mydump/region_test.go +++ b/br/pkg/lightning/mydump/region_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/check_info.go b/br/pkg/lightning/restore/check_info.go index 33a8f6d933b9d..360b62b4c590a 100644 --- a/br/pkg/lightning/restore/check_info.go +++ b/br/pkg/lightning/restore/check_info.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/check_template.go b/br/pkg/lightning/restore/check_template.go index 4c5f4ff823952..03fb146e9ba1a 100644 --- a/br/pkg/lightning/restore/check_template.go +++ b/br/pkg/lightning/restore/check_template.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/checksum.go b/br/pkg/lightning/restore/checksum.go index 01a548cfe65c9..c634ee48729f5 100644 --- a/br/pkg/lightning/restore/checksum.go +++ b/br/pkg/lightning/restore/checksum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/restore.go b/br/pkg/lightning/restore/restore.go index bcb0a1d3f73e9..8462d64eeda4a 100644 --- a/br/pkg/lightning/restore/restore.go +++ b/br/pkg/lightning/restore/restore.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/restore_test.go b/br/pkg/lightning/restore/restore_test.go index c1eb7d42206ec..9fb10e77926d9 100644 --- a/br/pkg/lightning/restore/restore_test.go +++ b/br/pkg/lightning/restore/restore_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/table_restore.go b/br/pkg/lightning/restore/table_restore.go index 554583aff28a4..726856da51942 100644 --- a/br/pkg/lightning/restore/table_restore.go +++ b/br/pkg/lightning/restore/table_restore.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/tidb.go b/br/pkg/lightning/restore/tidb.go index 000aaba9d3ffe..44277e24433a1 100644 --- a/br/pkg/lightning/restore/tidb.go +++ b/br/pkg/lightning/restore/tidb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/restore/tidb_test.go b/br/pkg/lightning/restore/tidb_test.go index 2a2f746b8fc5e..03158ff6a1106 100644 --- a/br/pkg/lightning/restore/tidb_test.go +++ b/br/pkg/lightning/restore/tidb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/sigusr1_other.go b/br/pkg/lightning/sigusr1_other.go index 1bb579c31e46e..af962b4c8bfdf 100644 --- a/br/pkg/lightning/sigusr1_other.go +++ b/br/pkg/lightning/sigusr1_other.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/sigusr1_unix.go b/br/pkg/lightning/sigusr1_unix.go index 1770371072fc0..2280d0bd145ba 100644 --- a/br/pkg/lightning/sigusr1_unix.go +++ b/br/pkg/lightning/sigusr1_unix.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/tikv/tikv.go b/br/pkg/lightning/tikv/tikv.go index 5bca0f65535f6..967109aea7688 100644 --- a/br/pkg/lightning/tikv/tikv.go +++ b/br/pkg/lightning/tikv/tikv.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/verification/checksum.go b/br/pkg/lightning/verification/checksum.go index 343f93e40ebb3..0a44177f80fe4 100644 --- a/br/pkg/lightning/verification/checksum.go +++ b/br/pkg/lightning/verification/checksum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/verification/checksum_test.go b/br/pkg/lightning/verification/checksum_test.go index bf2d8b6be8371..fb9c714c7a736 100644 --- a/br/pkg/lightning/verification/checksum_test.go +++ b/br/pkg/lightning/verification/checksum_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/web/res.go b/br/pkg/lightning/web/res.go index 92a6a905ccafb..7e554c82dfcaf 100644 --- a/br/pkg/lightning/web/res.go +++ b/br/pkg/lightning/web/res.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/worker/worker.go b/br/pkg/lightning/worker/worker.go index 977c73f18fd9f..8690798269150 100644 --- a/br/pkg/lightning/worker/worker.go +++ b/br/pkg/lightning/worker/worker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/lightning/worker/worker_test.go b/br/pkg/lightning/worker/worker_test.go index 112b0e5d13220..11a09fd849569 100644 --- a/br/pkg/lightning/worker/worker_test.go +++ b/br/pkg/lightning/worker/worker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/membuf/buffer.go b/br/pkg/membuf/buffer.go index fce5991e14fef..172d99baec9aa 100644 --- a/br/pkg/membuf/buffer.go +++ b/br/pkg/membuf/buffer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/membuf/buffer_test.go b/br/pkg/membuf/buffer_test.go index ba6110d88fc6e..f6a6800b0df3e 100644 --- a/br/pkg/membuf/buffer_test.go +++ b/br/pkg/membuf/buffer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/mock/mockid/mockid.go b/br/pkg/mock/mockid/mockid.go index b015a940b0763..bd645e457d01a 100644 --- a/br/pkg/mock/mockid/mockid.go +++ b/br/pkg/mock/mockid/mockid.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/pkg/restore/ingester.go b/br/pkg/restore/ingester.go index a4535dc24fa87..22d5e389a63c6 100644 --- a/br/pkg/restore/ingester.go +++ b/br/pkg/restore/ingester.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/tests/_utils/check_cluster_version b/br/tests/_utils/check_cluster_version index e227c2a086f58..e13ec5fbe255b 100755 --- a/br/tests/_utils/check_cluster_version +++ b/br/tests/_utils/check_cluster_version @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/check_contains b/br/tests/_utils/check_contains index 00faf0f3f3d4e..13953c6347645 100755 --- a/br/tests/_utils/check_contains +++ b/br/tests/_utils/check_contains @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/check_not_contains b/br/tests/_utils/check_not_contains index f6cb40276f537..e56b42d20ef39 100755 --- a/br/tests/_utils/check_not_contains +++ b/br/tests/_utils/check_not_contains @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/generate_certs b/br/tests/_utils/generate_certs index bbfb7a39c5f49..789f42d269fcd 100755 --- a/br/tests/_utils/generate_certs +++ b/br/tests/_utils/generate_certs @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/read_result b/br/tests/_utils/read_result index e87a91ae22823..52974ee47cc73 100755 --- a/br/tests/_utils/read_result +++ b/br/tests/_utils/read_result @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_br b/br/tests/_utils/run_br index fe51d5de9016f..34487ee60fd62 100755 --- a/br/tests/_utils/run_br +++ b/br/tests/_utils/run_br @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_cdc b/br/tests/_utils/run_cdc index 7f4b93c4d1635..21e1e4261df91 100755 --- a/br/tests/_utils/run_cdc +++ b/br/tests/_utils/run_cdc @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_curl b/br/tests/_utils/run_curl index b7565ae7d7435..6023e0e44f336 100755 --- a/br/tests/_utils/run_curl +++ b/br/tests/_utils/run_curl @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_lightning b/br/tests/_utils/run_lightning index a5d05c29cb772..0804275ab2fab 100755 --- a/br/tests/_utils/run_lightning +++ b/br/tests/_utils/run_lightning @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_lightning_ctl b/br/tests/_utils/run_lightning_ctl index 171a27ebdefee..0d82f6cf7e293 100755 --- a/br/tests/_utils/run_lightning_ctl +++ b/br/tests/_utils/run_lightning_ctl @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_pd_ctl b/br/tests/_utils/run_pd_ctl index 67f263ea46e4f..5c8fecf4cab32 100755 --- a/br/tests/_utils/run_pd_ctl +++ b/br/tests/_utils/run_pd_ctl @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_services b/br/tests/_utils/run_services index 41b8f0b0812f5..ed16c6eb1ad55 100644 --- a/br/tests/_utils/run_services +++ b/br/tests/_utils/run_services @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_sql b/br/tests/_utils/run_sql index 80dfe9f93153f..39241157cade6 100755 --- a/br/tests/_utils/run_sql +++ b/br/tests/_utils/run_sql @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/_utils/run_sql_in_container b/br/tests/_utils/run_sql_in_container index d88ffa24208a6..165ea5b3044ef 100755 --- a/br/tests/_utils/run_sql_in_container +++ b/br/tests/_utils/run_sql_in_container @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_300_small_tables/run.sh b/br/tests/br_300_small_tables/run.sh index bdda6c3514a9c..a649e41240aa1 100644 --- a/br/tests/br_300_small_tables/run.sh +++ b/br/tests/br_300_small_tables/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_backup_empty/run.sh b/br/tests/br_backup_empty/run.sh index 0bee08a0e8d79..943acb9506c81 100644 --- a/br/tests/br_backup_empty/run.sh +++ b/br/tests/br_backup_empty/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_backup_version/run.sh b/br/tests/br_backup_version/run.sh index 1c9cb79e7986b..a5651f701fa4a 100644 --- a/br/tests/br_backup_version/run.sh +++ b/br/tests/br_backup_version/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_case_sensitive/run.sh b/br/tests/br_case_sensitive/run.sh index c598bc765e82f..a5c34992b05f4 100644 --- a/br/tests/br_case_sensitive/run.sh +++ b/br/tests/br_case_sensitive/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_clustered_index/run.sh b/br/tests/br_clustered_index/run.sh index 6f47ffc72a38f..c1fba6d05410f 100755 --- a/br/tests/br_clustered_index/run.sh +++ b/br/tests/br_clustered_index/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_db/run.sh b/br/tests/br_db/run.sh index f9ca98fd67304..14d3152145566 100755 --- a/br/tests/br_db/run.sh +++ b/br/tests/br_db/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_db_online/run.sh b/br/tests/br_db_online/run.sh index 17595edea9137..53dcc4f2c8bbc 100755 --- a/br/tests/br_db_online/run.sh +++ b/br/tests/br_db_online/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_db_online_newkv/run.sh b/br/tests/br_db_online_newkv/run.sh index c768aaa045d1b..1bae65a3fabb9 100755 --- a/br/tests/br_db_online_newkv/run.sh +++ b/br/tests/br_db_online_newkv/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_db_skip/run.sh b/br/tests/br_db_skip/run.sh index 20852c4da7cc6..58c39bb3291ab 100755 --- a/br/tests/br_db_skip/run.sh +++ b/br/tests/br_db_skip/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_debug_meta/run.sh b/br/tests/br_debug_meta/run.sh index 5274d8298c7da..44049aa7cf7c8 100644 --- a/br/tests/br_debug_meta/run.sh +++ b/br/tests/br_debug_meta/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_full/run.sh b/br/tests/br_full/run.sh index 0415e6f0874ec..4fab79686352e 100755 --- a/br/tests/br_full/run.sh +++ b/br/tests/br_full/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_full_ddl/run.sh b/br/tests/br_full_ddl/run.sh index a2c886d115ae2..ad27e091ef476 100755 --- a/br/tests/br_full_ddl/run.sh +++ b/br/tests/br_full_ddl/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_full_index/run.sh b/br/tests/br_full_index/run.sh index 9b0364f2cf74a..be43a423e6549 100755 --- a/br/tests/br_full_index/run.sh +++ b/br/tests/br_full_index/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_gcs/oauth.go b/br/tests/br_gcs/oauth.go index c9fdc80274b2e..04bdff7bbadf6 100644 --- a/br/tests/br_gcs/oauth.go +++ b/br/tests/br_gcs/oauth.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/tests/br_gcs/run.sh b/br/tests/br_gcs/run.sh index 9a1aa46f93219..a29cbafa8668c 100755 --- a/br/tests/br_gcs/run.sh +++ b/br/tests/br_gcs/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_history/run.sh b/br/tests/br_history/run.sh index 7021426c72b2a..161b01f8c8ba5 100755 --- a/br/tests/br_history/run.sh +++ b/br/tests/br_history/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_incompatible_tidb_config/run.sh b/br/tests/br_incompatible_tidb_config/run.sh index 0b9040e6b92d9..0034dd850249c 100755 --- a/br/tests/br_incompatible_tidb_config/run.sh +++ b/br/tests/br_incompatible_tidb_config/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_incremental/run.sh b/br/tests/br_incremental/run.sh index e76df13f819be..da24ba12b4a3d 100755 --- a/br/tests/br_incremental/run.sh +++ b/br/tests/br_incremental/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_incremental_ddl/run.sh b/br/tests/br_incremental_ddl/run.sh index e9317d7f3e29a..d6e27b4626091 100755 --- a/br/tests/br_incremental_ddl/run.sh +++ b/br/tests/br_incremental_ddl/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_incremental_index/run.sh b/br/tests/br_incremental_index/run.sh index 19380a7d461d6..21b5de3a47d0e 100755 --- a/br/tests/br_incremental_index/run.sh +++ b/br/tests/br_incremental_index/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_incremental_only_ddl/run.sh b/br/tests/br_incremental_only_ddl/run.sh index 645a402af5f02..623281894cd3b 100755 --- a/br/tests/br_incremental_only_ddl/run.sh +++ b/br/tests/br_incremental_only_ddl/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_incremental_same_table/run.sh b/br/tests/br_incremental_same_table/run.sh index d7850838c67bd..67b502ae819d1 100755 --- a/br/tests/br_incremental_same_table/run.sh +++ b/br/tests/br_incremental_same_table/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_insert_after_restore/run.sh b/br/tests/br_insert_after_restore/run.sh index d6c0632b41676..5d8aa947b43a4 100755 --- a/br/tests/br_insert_after_restore/run.sh +++ b/br/tests/br_insert_after_restore/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_key_locked/codec.go b/br/tests/br_key_locked/codec.go index a4a235b45fa1d..d53b92cb68613 100644 --- a/br/tests/br_key_locked/codec.go +++ b/br/tests/br_key_locked/codec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/tests/br_key_locked/locker.go b/br/tests/br_key_locked/locker.go index 9fdf884bd43f5..d74af4a2503d6 100644 --- a/br/tests/br_key_locked/locker.go +++ b/br/tests/br_key_locked/locker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/tests/br_key_locked/run.sh b/br/tests/br_key_locked/run.sh index f0608f14e7a9b..3ad4c5daaeb57 100755 --- a/br/tests/br_key_locked/run.sh +++ b/br/tests/br_key_locked/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_log_restore/run.sh b/br/tests/br_log_restore/run.sh index 1f7cc839d056f..3753e58267816 100755 --- a/br/tests/br_log_restore/run.sh +++ b/br/tests/br_log_restore/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_log_test/run.sh b/br/tests/br_log_test/run.sh index ba68253df0e9a..ec724df723ba1 100644 --- a/br/tests/br_log_test/run.sh +++ b/br/tests/br_log_test/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_move_backup/run.sh b/br/tests/br_move_backup/run.sh index c426a62e74a89..2a15476372588 100755 --- a/br/tests/br_move_backup/run.sh +++ b/br/tests/br_move_backup/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_other/run.sh b/br/tests/br_other/run.sh index 63756fa3d1ec3..5b6c5fad52f18 100644 --- a/br/tests/br_other/run.sh +++ b/br/tests/br_other/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_range/run.sh b/br/tests/br_range/run.sh index 2768845970946..4e3e3c211178b 100644 --- a/br/tests/br_range/run.sh +++ b/br/tests/br_range/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. @@ -36,4 +37,4 @@ run_sql "drop schema $DB;" echo "restore start..." run_br restore db --db $DB -s "local://$TEST_DIR/$DB" --pd $PD_ADDR -run_sql "drop schema $DB;" \ No newline at end of file +run_sql "drop schema $DB;" diff --git a/br/tests/br_rawkv/run.sh b/br/tests/br_rawkv/run.sh index 56cbc993a55e2..62c4c7509c01e 100644 --- a/br/tests/br_rawkv/run.sh +++ b/br/tests/br_rawkv/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_restore_TDE_enable/run.sh b/br/tests/br_restore_TDE_enable/run.sh index 0148792371540..793a390951a6e 100755 --- a/br/tests/br_restore_TDE_enable/run.sh +++ b/br/tests/br_restore_TDE_enable/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. @@ -148,4 +149,4 @@ done for i in $(seq $DB_COUNT); do run_sql "DROP DATABASE $DB${i};" -done \ No newline at end of file +done diff --git a/br/tests/br_s3/run.sh b/br/tests/br_s3/run.sh index b01280690d699..d0c20996db7ef 100755 --- a/br/tests/br_s3/run.sh +++ b/br/tests/br_s3/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_shuffle_leader/run.sh b/br/tests/br_shuffle_leader/run.sh index 156f9c39476fc..795fad93655b1 100755 --- a/br/tests/br_shuffle_leader/run.sh +++ b/br/tests/br_shuffle_leader/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_shuffle_region/run.sh b/br/tests/br_shuffle_region/run.sh index 42dc7132fa53c..aa475227526d5 100755 --- a/br/tests/br_shuffle_region/run.sh +++ b/br/tests/br_shuffle_region/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_single_table/run.sh b/br/tests/br_single_table/run.sh index 92c5f91fd699c..c113c672b80a1 100755 --- a/br/tests/br_single_table/run.sh +++ b/br/tests/br_single_table/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_skip_checksum/run.sh b/br/tests/br_skip_checksum/run.sh index 2e66f6765cb92..fc7e7c7ed3535 100755 --- a/br/tests/br_skip_checksum/run.sh +++ b/br/tests/br_skip_checksum/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_small_batch_size/run.sh b/br/tests/br_small_batch_size/run.sh index 82bb174055dfc..bb91a3f9ad3c3 100755 --- a/br/tests/br_small_batch_size/run.sh +++ b/br/tests/br_small_batch_size/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_split_region_fail/run.sh b/br/tests/br_split_region_fail/run.sh index 91cd4a9fb7b5c..be26823cd6810 100644 --- a/br/tests/br_split_region_fail/run.sh +++ b/br/tests/br_split_region_fail/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_table_filter/run.sh b/br/tests/br_table_filter/run.sh index f04b7b18605e0..272e1fce25c5c 100755 --- a/br/tests/br_table_filter/run.sh +++ b/br/tests/br_table_filter/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_table_partition/prepare.sh b/br/tests/br_table_partition/prepare.sh index 674da8b8806ae..3d09e735fdc2a 100755 --- a/br/tests/br_table_partition/prepare.sh +++ b/br/tests/br_table_partition/prepare.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_table_partition/run.sh b/br/tests/br_table_partition/run.sh index a89968aaf7b1e..87cd79a49c26c 100755 --- a/br/tests/br_table_partition/run.sh +++ b/br/tests/br_table_partition/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_tiflash/run.sh b/br/tests/br_tiflash/run.sh index 875a7eb44e9d1..2d8b0d6419256 100644 --- a/br/tests/br_tiflash/run.sh +++ b/br/tests/br_tiflash/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_views_and_sequences/run.sh b/br/tests/br_views_and_sequences/run.sh index b067bab069b57..1a033d98cb7c3 100755 --- a/br/tests/br_views_and_sequences/run.sh +++ b/br/tests/br_views_and_sequences/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/br_z_gc_safepoint/gc.go b/br/tests/br_z_gc_safepoint/gc.go index 8a134763ac590..479f38227ce27 100644 --- a/br/tests/br_z_gc_safepoint/gc.go +++ b/br/tests/br_z_gc_safepoint/gc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/tests/br_z_gc_safepoint/run.sh b/br/tests/br_z_gc_safepoint/run.sh index ef7ecc66c1fca..1eabe68dd0b1b 100755 --- a/br/tests/br_z_gc_safepoint/run.sh +++ b/br/tests/br_z_gc_safepoint/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/docker_compatible_gcs/prepare.sh b/br/tests/docker_compatible_gcs/prepare.sh index 4b0e7b6ac7865..18460904a8169 100755 --- a/br/tests/docker_compatible_gcs/prepare.sh +++ b/br/tests/docker_compatible_gcs/prepare.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/docker_compatible_gcs/run.sh b/br/tests/docker_compatible_gcs/run.sh index 4ba9db1052139..57d1b3ffc192a 100755 --- a/br/tests/docker_compatible_gcs/run.sh +++ b/br/tests/docker_compatible_gcs/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/docker_compatible_s3/prepare.sh b/br/tests/docker_compatible_s3/prepare.sh index 29bb4cda9d932..ff3955386614c 100755 --- a/br/tests/docker_compatible_s3/prepare.sh +++ b/br/tests/docker_compatible_s3/prepare.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/docker_compatible_s3/run.sh b/br/tests/docker_compatible_s3/run.sh index a174f11c1850c..17d29e98ebbf4 100755 --- a/br/tests/docker_compatible_s3/run.sh +++ b/br/tests/docker_compatible_s3/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/download_tools.sh b/br/tests/download_tools.sh index 737d4c7f3778c..30b1577781ac4 100755 --- a/br/tests/download_tools.sh +++ b/br/tests/download_tools.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_alter_random/run.sh b/br/tests/lightning_alter_random/run.sh index b2141ab40d4ca..c0c81e37ff110 100644 --- a/br/tests/lightning_alter_random/run.sh +++ b/br/tests/lightning_alter_random/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_auto_random_default/run.sh b/br/tests/lightning_auto_random_default/run.sh index 499cb27d5a704..432582bf72e24 100644 --- a/br/tests/lightning_auto_random_default/run.sh +++ b/br/tests/lightning_auto_random_default/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_black-white-list/run.sh b/br/tests/lightning_black-white-list/run.sh index 823b615b4e205..f58317a2f9984 100755 --- a/br/tests/lightning_black-white-list/run.sh +++ b/br/tests/lightning_black-white-list/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_character_sets/run.sh b/br/tests/lightning_character_sets/run.sh index 36f15a57dcb1f..6750ee08a4838 100755 --- a/br/tests/lightning_character_sets/run.sh +++ b/br/tests/lightning_character_sets/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint/run.sh b/br/tests/lightning_checkpoint/run.sh index bc608aba8853c..ed5f36a706912 100755 --- a/br/tests/lightning_checkpoint/run.sh +++ b/br/tests/lightning_checkpoint/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_chunks/run.sh b/br/tests/lightning_checkpoint_chunks/run.sh index 86b23d6249891..1bfd48da6e4c5 100755 --- a/br/tests/lightning_checkpoint_chunks/run.sh +++ b/br/tests/lightning_checkpoint_chunks/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_columns/run.sh b/br/tests/lightning_checkpoint_columns/run.sh index 11a4a1560d788..401c75cfb9f64 100755 --- a/br/tests/lightning_checkpoint_columns/run.sh +++ b/br/tests/lightning_checkpoint_columns/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_dirty_tableid/run.sh b/br/tests/lightning_checkpoint_dirty_tableid/run.sh index 32a71f73767f2..dfd320508d4e2 100755 --- a/br/tests/lightning_checkpoint_dirty_tableid/run.sh +++ b/br/tests/lightning_checkpoint_dirty_tableid/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_engines/run.sh b/br/tests/lightning_checkpoint_engines/run.sh index 680fb9ef634de..7a7bce45cb7ad 100755 --- a/br/tests/lightning_checkpoint_engines/run.sh +++ b/br/tests/lightning_checkpoint_engines/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_error_destroy/run.sh b/br/tests/lightning_checkpoint_error_destroy/run.sh index 4900f10f1d36d..8afc6a0fbd26b 100755 --- a/br/tests/lightning_checkpoint_error_destroy/run.sh +++ b/br/tests/lightning_checkpoint_error_destroy/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_parquet/run.sh b/br/tests/lightning_checkpoint_parquet/run.sh index d5ab1b8a40f6d..858d5335765a0 100755 --- a/br/tests/lightning_checkpoint_parquet/run.sh +++ b/br/tests/lightning_checkpoint_parquet/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_checkpoint_timestamp/run.sh b/br/tests/lightning_checkpoint_timestamp/run.sh index 507cbdedce1d9..9a68ecdc1c1df 100755 --- a/br/tests/lightning_checkpoint_timestamp/run.sh +++ b/br/tests/lightning_checkpoint_timestamp/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_common_handle/run.sh b/br/tests/lightning_common_handle/run.sh index 101689f5d8ed8..7e6f710319394 100644 --- a/br/tests/lightning_common_handle/run.sh +++ b/br/tests/lightning_common_handle/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_concurrent-restore/run.sh b/br/tests/lightning_concurrent-restore/run.sh index 1614d588d0803..79ff7ddfbe936 100644 --- a/br/tests/lightning_concurrent-restore/run.sh +++ b/br/tests/lightning_concurrent-restore/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_default-columns/run.sh b/br/tests/lightning_default-columns/run.sh index b3fcec565a570..37ac56fd1d08c 100755 --- a/br/tests/lightning_default-columns/run.sh +++ b/br/tests/lightning_default-columns/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_disk_quota/run.sh b/br/tests/lightning_disk_quota/run.sh index 7916292978ad2..c0b7a65fca39e 100644 --- a/br/tests/lightning_disk_quota/run.sh +++ b/br/tests/lightning_disk_quota/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_duplicate_detection/run.sh b/br/tests/lightning_duplicate_detection/run.sh index 091ac122ebb4e..d775586a5b369 100644 --- a/br/tests/lightning_duplicate_detection/run.sh +++ b/br/tests/lightning_duplicate_detection/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_error_summary/run.sh b/br/tests/lightning_error_summary/run.sh index 0b61e052e68cb..674268a54c6b2 100755 --- a/br/tests/lightning_error_summary/run.sh +++ b/br/tests/lightning_error_summary/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_examples/run.sh b/br/tests/lightning_examples/run.sh index c59e1742411f3..ce66e6a42b781 100755 --- a/br/tests/lightning_examples/run.sh +++ b/br/tests/lightning_examples/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_exotic_filenames/run.sh b/br/tests/lightning_exotic_filenames/run.sh index eb304b9842a1e..adae2137e88de 100755 --- a/br/tests/lightning_exotic_filenames/run.sh +++ b/br/tests/lightning_exotic_filenames/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_fail_fast/run.sh b/br/tests/lightning_fail_fast/run.sh index a1a6b85fc3091..8894bd0c5c8f4 100755 --- a/br/tests/lightning_fail_fast/run.sh +++ b/br/tests/lightning_fail_fast/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_file_routing/run.sh b/br/tests/lightning_file_routing/run.sh index aefd760e03381..36ed5611b51e2 100755 --- a/br/tests/lightning_file_routing/run.sh +++ b/br/tests/lightning_file_routing/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_gcs/run.sh b/br/tests/lightning_gcs/run.sh index d0859caac6b9f..894097b043d9b 100644 --- a/br/tests/lightning_gcs/run.sh +++ b/br/tests/lightning_gcs/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_generated_columns/run.sh b/br/tests/lightning_generated_columns/run.sh index 163e74fb6155e..b1632ac759241 100644 --- a/br/tests/lightning_generated_columns/run.sh +++ b/br/tests/lightning_generated_columns/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_incremental/run.sh b/br/tests/lightning_incremental/run.sh index bf8ccde576693..f04630055936a 100644 --- a/br/tests/lightning_incremental/run.sh +++ b/br/tests/lightning_incremental/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_issue_282/run.sh b/br/tests/lightning_issue_282/run.sh index 344a7a0fd90d3..87f67ee6ce07f 100644 --- a/br/tests/lightning_issue_282/run.sh +++ b/br/tests/lightning_issue_282/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_issue_410/run.sh b/br/tests/lightning_issue_410/run.sh index 97b96e5c3bbbb..b4f02b26814eb 100644 --- a/br/tests/lightning_issue_410/run.sh +++ b/br/tests/lightning_issue_410/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_issue_519/run.sh b/br/tests/lightning_issue_519/run.sh index 12268cd09a35d..c22154ff7d80d 100755 --- a/br/tests/lightning_issue_519/run.sh +++ b/br/tests/lightning_issue_519/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_local_backend/run.sh b/br/tests/lightning_local_backend/run.sh index bb909a6eb9904..6d0e7e9864145 100755 --- a/br/tests/lightning_local_backend/run.sh +++ b/br/tests/lightning_local_backend/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_new_collation/run.sh b/br/tests/lightning_new_collation/run.sh index 6c62f7dfe06ef..d4c49e3c61192 100644 --- a/br/tests/lightning_new_collation/run.sh +++ b/br/tests/lightning_new_collation/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_no_schema/run.sh b/br/tests/lightning_no_schema/run.sh index c100086bd33a3..e417c4c854a05 100644 --- a/br/tests/lightning_no_schema/run.sh +++ b/br/tests/lightning_no_schema/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_parquet/run.sh b/br/tests/lightning_parquet/run.sh index d0064f6c6012f..32d0633ab9e50 100755 --- a/br/tests/lightning_parquet/run.sh +++ b/br/tests/lightning_parquet/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_partitioned-table/run.sh b/br/tests/lightning_partitioned-table/run.sh index be207e2c95fa0..7b447f4e9753f 100755 --- a/br/tests/lightning_partitioned-table/run.sh +++ b/br/tests/lightning_partitioned-table/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_restore/run.sh b/br/tests/lightning_restore/run.sh index 02e4400d6b2eb..41542acd45f8b 100755 --- a/br/tests/lightning_restore/run.sh +++ b/br/tests/lightning_restore/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_s3/run.sh b/br/tests/lightning_s3/run.sh index edec1a5690218..6fed0af2b81da 100755 --- a/br/tests/lightning_s3/run.sh +++ b/br/tests/lightning_s3/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_shard_rowid/run.sh b/br/tests/lightning_shard_rowid/run.sh index 8e61c58c03267..f170c3d338b68 100644 --- a/br/tests/lightning_shard_rowid/run.sh +++ b/br/tests/lightning_shard_rowid/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_source_linkfile/run.sh b/br/tests/lightning_source_linkfile/run.sh index 83608d664d07e..c55266cc8a90f 100644 --- a/br/tests/lightning_source_linkfile/run.sh +++ b/br/tests/lightning_source_linkfile/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_sqlmode/run.sh b/br/tests/lightning_sqlmode/run.sh index 67643d5ce5942..e2829964009dc 100755 --- a/br/tests/lightning_sqlmode/run.sh +++ b/br/tests/lightning_sqlmode/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tidb_duplicate_data/run.sh b/br/tests/lightning_tidb_duplicate_data/run.sh index 4fe6961d58e2f..2c013827daa4b 100644 --- a/br/tests/lightning_tidb_duplicate_data/run.sh +++ b/br/tests/lightning_tidb_duplicate_data/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tidb_rowid/run.sh b/br/tests/lightning_tidb_rowid/run.sh index 395c219784938..e877f420cf43f 100755 --- a/br/tests/lightning_tidb_rowid/run.sh +++ b/br/tests/lightning_tidb_rowid/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tiflash/run.sh b/br/tests/lightning_tiflash/run.sh index 74d4d094e18a6..c7ac62a6db0db 100644 --- a/br/tests/lightning_tiflash/run.sh +++ b/br/tests/lightning_tiflash/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_too_many_columns/run.sh b/br/tests/lightning_too_many_columns/run.sh index 22a5f476abefb..2f8b8587f3ec3 100644 --- a/br/tests/lightning_too_many_columns/run.sh +++ b/br/tests/lightning_too_many_columns/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tool_135/run.sh b/br/tests/lightning_tool_135/run.sh index 3e7a527765912..4887f2a4c5a88 100755 --- a/br/tests/lightning_tool_135/run.sh +++ b/br/tests/lightning_tool_135/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tool_1420/run.sh b/br/tests/lightning_tool_1420/run.sh index f8ee83b12a4da..fd424f60ebc20 100755 --- a/br/tests/lightning_tool_1420/run.sh +++ b/br/tests/lightning_tool_1420/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tool_1472/run.sh b/br/tests/lightning_tool_1472/run.sh index 050948edd6a45..71efe4a079a56 100755 --- a/br/tests/lightning_tool_1472/run.sh +++ b/br/tests/lightning_tool_1472/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_tool_241/run.sh b/br/tests/lightning_tool_241/run.sh index 63fe4440121f8..159e92eb6a5c9 100755 --- a/br/tests/lightning_tool_241/run.sh +++ b/br/tests/lightning_tool_241/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_unused_config_keys/run.sh b/br/tests/lightning_unused_config_keys/run.sh index 0005f050772a0..0420cf457790f 100755 --- a/br/tests/lightning_unused_config_keys/run.sh +++ b/br/tests/lightning_unused_config_keys/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_various_types/run.sh b/br/tests/lightning_various_types/run.sh index 5e8dec1ba3391..d46b9fa068e63 100755 --- a/br/tests/lightning_various_types/run.sh +++ b/br/tests/lightning_various_types/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/lightning_view/run.sh b/br/tests/lightning_view/run.sh index 793e29a028195..868c170c901c6 100755 --- a/br/tests/lightning_view/run.sh +++ b/br/tests/lightning_view/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/run.sh b/br/tests/run.sh index be8c1b57e8642..140491caddc90 100755 --- a/br/tests/run.sh +++ b/br/tests/run.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tests/run_compatible.sh b/br/tests/run_compatible.sh index 9fcb2446cfe88..df0a98074938f 100755 --- a/br/tests/run_compatible.sh +++ b/br/tests/run_compatible.sh @@ -10,6 +10,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/tools/check-errdoc.sh b/br/tools/check-errdoc.sh index f3172ab84988d..ea79d73b32260 100755 --- a/br/tools/check-errdoc.sh +++ b/br/tools/check-errdoc.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/br/web/src/ChunksProgressPanel.tsx b/br/web/src/ChunksProgressPanel.tsx index 4100e3d5c4b10..bc784243d3f81 100644 --- a/br/web/src/ChunksProgressPanel.tsx +++ b/br/web/src/ChunksProgressPanel.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/DottedProgress.tsx b/br/web/src/DottedProgress.tsx index 1a129669cad9e..69f5a1c1a6ef0 100644 --- a/br/web/src/DottedProgress.tsx +++ b/br/web/src/DottedProgress.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/EnginesProgressPanel.tsx b/br/web/src/EnginesProgressPanel.tsx index 95095221d9588..712df13f264b3 100644 --- a/br/web/src/EnginesProgressPanel.tsx +++ b/br/web/src/EnginesProgressPanel.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/ErrorButton.tsx b/br/web/src/ErrorButton.tsx index 3f45d939662b1..6a272de92f4e0 100644 --- a/br/web/src/ErrorButton.tsx +++ b/br/web/src/ErrorButton.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/InfoButton.tsx b/br/web/src/InfoButton.tsx index 6722f09007435..a0762263f2fa7 100644 --- a/br/web/src/InfoButton.tsx +++ b/br/web/src/InfoButton.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/InfoPage.tsx b/br/web/src/InfoPage.tsx index 32ffdecddbd40..6d9ac98e5ba59 100644 --- a/br/web/src/InfoPage.tsx +++ b/br/web/src/InfoPage.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/MoveTaskButton.tsx b/br/web/src/MoveTaskButton.tsx index 4a3f038124ac7..33d34e68a23d9 100644 --- a/br/web/src/MoveTaskButton.tsx +++ b/br/web/src/MoveTaskButton.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/PauseButton.tsx b/br/web/src/PauseButton.tsx index d100d478d356d..c4bbb373830ef 100644 --- a/br/web/src/PauseButton.tsx +++ b/br/web/src/PauseButton.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/ProgressPage.tsx b/br/web/src/ProgressPage.tsx index 7ed60dbd35045..01d0f846850b0 100644 --- a/br/web/src/ProgressPage.tsx +++ b/br/web/src/ProgressPage.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/RefreshButton.tsx b/br/web/src/RefreshButton.tsx index 3e151f8a0bab8..234e0d2fd1c12 100644 --- a/br/web/src/RefreshButton.tsx +++ b/br/web/src/RefreshButton.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/TableProgressCard.tsx b/br/web/src/TableProgressCard.tsx index b7df82d9f4cee..16a846b0b5794 100644 --- a/br/web/src/TableProgressCard.tsx +++ b/br/web/src/TableProgressCard.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/TableProgressPage.tsx b/br/web/src/TableProgressPage.tsx index ad06a7b15f085..514cf99b792fe 100644 --- a/br/web/src/TableProgressPage.tsx +++ b/br/web/src/TableProgressPage.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/TaskButton.tsx b/br/web/src/TaskButton.tsx index 6b781a1028bd0..f717a385dcfda 100644 --- a/br/web/src/TaskButton.tsx +++ b/br/web/src/TaskButton.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/TitleBar.tsx b/br/web/src/TitleBar.tsx index a6687991d29c8..4c58c0d4d9c06 100644 --- a/br/web/src/TitleBar.tsx +++ b/br/web/src/TitleBar.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -92,4 +93,4 @@ class TitleBar extends React.Component { } } -export default withStyles(styles)(TitleBar); \ No newline at end of file +export default withStyles(styles)(TitleBar); diff --git a/br/web/src/TitleLink.tsx b/br/web/src/TitleLink.tsx index 8a2ee6792e61b..3fee8bc2e225b 100644 --- a/br/web/src/TitleLink.tsx +++ b/br/web/src/TitleLink.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/api.ts b/br/web/src/api.ts index 882ad44742799..b6f5315d65171 100644 --- a/br/web/src/api.ts +++ b/br/web/src/api.ts @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/index.tsx b/br/web/src/index.tsx index 53146a7c7b9a7..0f5bd6329b6ea 100644 --- a/br/web/src/index.tsx +++ b/br/web/src/index.tsx @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/br/web/src/json-bigint.d.ts b/br/web/src/json-bigint.d.ts index a240181285000..440930b81c4b6 100644 --- a/br/web/src/json-bigint.d.ts +++ b/br/web/src/json-bigint.d.ts @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/checkout-pr-branch.sh b/checkout-pr-branch.sh index ee0690b7e8e5c..79d1247a7aa33 100755 --- a/checkout-pr-branch.sh +++ b/checkout-pr-branch.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/cmd/benchdb/main.go b/cmd/benchdb/main.go index ee448cb7072c9..538e71e3877e3 100644 --- a/cmd/benchdb/main.go +++ b/cmd/benchdb/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/benchfilesort/main.go b/cmd/benchfilesort/main.go index e5b8204f189d0..5977e292bab7e 100644 --- a/cmd/benchfilesort/main.go +++ b/cmd/benchfilesort/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/benchkv/main.go b/cmd/benchkv/main.go index e8c3cd1b941a6..ec1fa06088cf1 100644 --- a/cmd/benchkv/main.go +++ b/cmd/benchkv/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/benchraw/main.go b/cmd/benchraw/main.go index 2f7af59228801..d32606fde79a9 100644 --- a/cmd/benchraw/main.go +++ b/cmd/benchraw/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/ddltest/column_test.go b/cmd/ddltest/column_test.go index f5488b56dcdf9..3bee4582d2148 100644 --- a/cmd/ddltest/column_test.go +++ b/cmd/ddltest/column_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/ddltest/ddl_test.go b/cmd/ddltest/ddl_test.go index 6192bc6cf402b..0022fc7ddc925 100644 --- a/cmd/ddltest/ddl_test.go +++ b/cmd/ddltest/ddl_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/ddltest/index_test.go b/cmd/ddltest/index_test.go index dcb2280f231e9..ef4dd6403f1a7 100644 --- a/cmd/ddltest/index_test.go +++ b/cmd/ddltest/index_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/ddltest/random.go b/cmd/ddltest/random.go index 3d465b7252a65..fc537558e4858 100644 --- a/cmd/ddltest/random.go +++ b/cmd/ddltest/random.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/explaintest/main.go b/cmd/explaintest/main.go index 9bf1ec121340c..9306bd1e23f7c 100644 --- a/cmd/explaintest/main.go +++ b/cmd/explaintest/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/explaintest/main_test.go b/cmd/explaintest/main_test.go index 9d899b2b5b82d..42ef72c475efd 100644 --- a/cmd/explaintest/main_test.go +++ b/cmd/explaintest/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/explaintest/run-tests.sh b/cmd/explaintest/run-tests.sh index 56cad85d32898..1d8061f90d0f0 100755 --- a/cmd/explaintest/run-tests.sh +++ b/cmd/explaintest/run-tests.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/cmd/importer/config.go b/cmd/importer/config.go index 81ada45abf0fb..4bbc94217ed2a 100644 --- a/cmd/importer/config.go +++ b/cmd/importer/config.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/data.go b/cmd/importer/data.go index e972f8ca000c8..b3b04a340a8c0 100644 --- a/cmd/importer/data.go +++ b/cmd/importer/data.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/db.go b/cmd/importer/db.go index 25f3ef2483aae..7e099311e5d97 100644 --- a/cmd/importer/db.go +++ b/cmd/importer/db.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/db_test.go b/cmd/importer/db_test.go index 01448274f11fe..1d1722a74de4b 100644 --- a/cmd/importer/db_test.go +++ b/cmd/importer/db_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/job.go b/cmd/importer/job.go index a2e03c888b53d..af52503747b6a 100644 --- a/cmd/importer/job.go +++ b/cmd/importer/job.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/main.go b/cmd/importer/main.go index c470448310cf9..b2b5f9ce4be63 100644 --- a/cmd/importer/main.go +++ b/cmd/importer/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/parser.go b/cmd/importer/parser.go index 64cbdfd4d5053..487339e02abf0 100644 --- a/cmd/importer/parser.go +++ b/cmd/importer/parser.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/rand.go b/cmd/importer/rand.go index c08c833626fd8..6bec832a22fb0 100644 --- a/cmd/importer/rand.go +++ b/cmd/importer/rand.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/importer/stats.go b/cmd/importer/stats.go index 08c52b61a775a..9248218fbd736 100644 --- a/cmd/importer/stats.go +++ b/cmd/importer/stats.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/cmd/pluginpkg/pluginpkg.go b/cmd/pluginpkg/pluginpkg.go index 7dfa12c491072..8390b10adbb10 100644 --- a/cmd/pluginpkg/pluginpkg.go +++ b/cmd/pluginpkg/pluginpkg.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/config/config.go b/config/config.go index d405981b3e826..90abd091501f0 100644 --- a/config/config.go +++ b/config/config.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/config/config_test.go b/config/config_test.go index c6c34ed2a7200..8b6f5f4635e96 100644 --- a/config/config_test.go +++ b/config/config_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/config/config_util.go b/config/config_util.go index 54b7c89355394..aef615f6cf095 100644 --- a/config/config_util.go +++ b/config/config_util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/config/config_util_test.go b/config/config_util_test.go index e83c1e2046072..ff1526ff581da 100644 --- a/config/config_util_test.go +++ b/config/config_util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/attributes_sql_test.go b/ddl/attributes_sql_test.go index 74bc39de3b9fc..9d573160f9b0b 100644 --- a/ddl/attributes_sql_test.go +++ b/ddl/attributes_sql_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/backfilling.go b/ddl/backfilling.go index 75e0cb82b0ce5..a6665ec7017e4 100644 --- a/ddl/backfilling.go +++ b/ddl/backfilling.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/callback.go b/ddl/callback.go index 99ca403f08293..887a1b6e6eb02 100644 --- a/ddl/callback.go +++ b/ddl/callback.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/callback_test.go b/ddl/callback_test.go index dc06fbfdee680..ee4047b75a0c7 100644 --- a/ddl/callback_test.go +++ b/ddl/callback_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/column.go b/ddl/column.go index e903ca61c7d76..c8b7a4fd055e3 100644 --- a/ddl/column.go +++ b/ddl/column.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/column_change_test.go b/ddl/column_change_test.go index 6bd5a94f7235e..a9ece8079aeb2 100644 --- a/ddl/column_change_test.go +++ b/ddl/column_change_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/column_test.go b/ddl/column_test.go index 793c7bec45b2f..fcbd337520f91 100644 --- a/ddl/column_test.go +++ b/ddl/column_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/column_type_change_test.go b/ddl/column_type_change_test.go index 6d73e72f30f3e..a30c35507f6cb 100644 --- a/ddl/column_type_change_test.go +++ b/ddl/column_type_change_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/db_change_test.go b/ddl/db_change_test.go index ccbd5bd2e6be7..f208e9e5fa069 100644 --- a/ddl/db_change_test.go +++ b/ddl/db_change_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/db_integration_test.go b/ddl/db_integration_test.go index efa991c5db7b6..c66920a7b91da 100644 --- a/ddl/db_integration_test.go +++ b/ddl/db_integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/db_partition_test.go b/ddl/db_partition_test.go index 05e7d50ea9c3c..cfb9d6d443cee 100644 --- a/ddl/db_partition_test.go +++ b/ddl/db_partition_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/db_test.go b/ddl/db_test.go index e0dded9c3c70f..d6c8e72fc9d3f 100644 --- a/ddl/db_test.go +++ b/ddl/db_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl.go b/ddl/ddl.go index 043f58ca99b98..bad34f76e3cbb 100644 --- a/ddl/ddl.go +++ b/ddl/ddl.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl_algorithm.go b/ddl/ddl_algorithm.go index 901fc6a6384d2..8c58126d70496 100644 --- a/ddl/ddl_algorithm.go +++ b/ddl/ddl_algorithm.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl_algorithm_test.go b/ddl/ddl_algorithm_test.go index 0c312bd3bdce9..251a302bb1597 100644 --- a/ddl/ddl_algorithm_test.go +++ b/ddl/ddl_algorithm_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl_api.go b/ddl/ddl_api.go index 036ca26925c21..12be456304fdc 100644 --- a/ddl/ddl_api.go +++ b/ddl/ddl_api.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl_test.go b/ddl/ddl_test.go index 30db9e34d4645..6e4cd0c833fd6 100644 --- a/ddl/ddl_test.go +++ b/ddl/ddl_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl_worker.go b/ddl/ddl_worker.go index d01e4169800d8..cf4a2ba3a3588 100644 --- a/ddl/ddl_worker.go +++ b/ddl/ddl_worker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/ddl_worker_test.go b/ddl/ddl_worker_test.go index 5085e4194f0d1..e91c65cb95f52 100644 --- a/ddl/ddl_worker_test.go +++ b/ddl/ddl_worker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/delete_range.go b/ddl/delete_range.go index a9dfd7945b7d4..740f3c86c2f76 100644 --- a/ddl/delete_range.go +++ b/ddl/delete_range.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/error.go b/ddl/error.go index f9b036abe153f..1c2f37ce5751f 100644 --- a/ddl/error.go +++ b/ddl/error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/fail_test.go b/ddl/fail_test.go index c499a7b671423..0339bc78c8a84 100644 --- a/ddl/fail_test.go +++ b/ddl/fail_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/failtest/fail_db_test.go b/ddl/failtest/fail_db_test.go index b2ae168855365..d7d472b85791a 100644 --- a/ddl/failtest/fail_db_test.go +++ b/ddl/failtest/fail_db_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/foreign_key.go b/ddl/foreign_key.go index 6fc0ca92b13ab..e87841f972d22 100644 --- a/ddl/foreign_key.go +++ b/ddl/foreign_key.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/foreign_key_test.go b/ddl/foreign_key_test.go index 0bd6456a4df2d..22187544235eb 100644 --- a/ddl/foreign_key_test.go +++ b/ddl/foreign_key_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/generated_column.go b/ddl/generated_column.go index b794291feb71e..49c68832b4038 100644 --- a/ddl/generated_column.go +++ b/ddl/generated_column.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/index.go b/ddl/index.go index 836eeaeb08be9..4b3e3432a9dc9 100644 --- a/ddl/index.go +++ b/ddl/index.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/index_change_test.go b/ddl/index_change_test.go index 6a34599137c10..6b8ceab2ddb91 100644 --- a/ddl/index_change_test.go +++ b/ddl/index_change_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/label/attributes.go b/ddl/label/attributes.go index a503ba06051f4..69f344048bf93 100644 --- a/ddl/label/attributes.go +++ b/ddl/label/attributes.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/label/attributes_test.go b/ddl/label/attributes_test.go index 6e728610196f6..ede040bf628a4 100644 --- a/ddl/label/attributes_test.go +++ b/ddl/label/attributes_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/label/rule.go b/ddl/label/rule.go index 5e4ff8e914ef0..72bde06f194f6 100644 --- a/ddl/label/rule.go +++ b/ddl/label/rule.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/label/rule_test.go b/ddl/label/rule_test.go index 1db1845f7f55a..57cee23c5b716 100644 --- a/ddl/label/rule_test.go +++ b/ddl/label/rule_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/mock.go b/ddl/mock.go index 64345d84d9c1b..87370a8d8c400 100644 --- a/ddl/mock.go +++ b/ddl/mock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/options.go b/ddl/options.go index 9238a7c8542ff..3b5696cc3a9da 100644 --- a/ddl/options.go +++ b/ddl/options.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/options_test.go b/ddl/options_test.go index 22a451d622c71..b4b796cc6726f 100644 --- a/ddl/options_test.go +++ b/ddl/options_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/partition.go b/ddl/partition.go index 839f5a038f7ad..0a3556bcb09fb 100644 --- a/ddl/partition.go +++ b/ddl/partition.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/partition_test.go b/ddl/partition_test.go index 32078133547b6..be7a41d583bf7 100644 --- a/ddl/partition_test.go +++ b/ddl/partition_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/bundle.go b/ddl/placement/bundle.go index 34e0e074ecda0..f03ecca74a7c8 100644 --- a/ddl/placement/bundle.go +++ b/ddl/placement/bundle.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/bundle_test.go b/ddl/placement/bundle_test.go index 98b989a21ee75..016e99c675ec8 100644 --- a/ddl/placement/bundle_test.go +++ b/ddl/placement/bundle_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/common.go b/ddl/placement/common.go index bfe76428a7190..7b385daf508ae 100644 --- a/ddl/placement/common.go +++ b/ddl/placement/common.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/common_test.go b/ddl/placement/common_test.go index 87e6883da7e59..75c3285965dbd 100644 --- a/ddl/placement/common_test.go +++ b/ddl/placement/common_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/constraint.go b/ddl/placement/constraint.go index 9eae461ffe0f9..3263f104dd668 100644 --- a/ddl/placement/constraint.go +++ b/ddl/placement/constraint.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/constraint_test.go b/ddl/placement/constraint_test.go index 4c97cb9d58f41..1412bd6cffcc4 100644 --- a/ddl/placement/constraint_test.go +++ b/ddl/placement/constraint_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/constraints.go b/ddl/placement/constraints.go index d759bad89a701..30ab60b2fb7ac 100644 --- a/ddl/placement/constraints.go +++ b/ddl/placement/constraints.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/constraints_test.go b/ddl/placement/constraints_test.go index 678ab2ee997ed..ef15c878943c9 100644 --- a/ddl/placement/constraints_test.go +++ b/ddl/placement/constraints_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/errors.go b/ddl/placement/errors.go index 26b60621d0f44..50bf587d543fc 100644 --- a/ddl/placement/errors.go +++ b/ddl/placement/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/rule.go b/ddl/placement/rule.go index 55d81f287b13b..dff030a0b78cf 100644 --- a/ddl/placement/rule.go +++ b/ddl/placement/rule.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement/rule_test.go b/ddl/placement/rule_test.go index 85dd492f348e7..8e364b3ee7fac 100644 --- a/ddl/placement/rule_test.go +++ b/ddl/placement/rule_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/placement_sql_test.go b/ddl/placement_sql_test.go index c21baf32e9159..8fc2bb00cfa6d 100644 --- a/ddl/placement_sql_test.go +++ b/ddl/placement_sql_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/reorg.go b/ddl/reorg.go index 465546c74c842..67284add7fc52 100644 --- a/ddl/reorg.go +++ b/ddl/reorg.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/reorg_test.go b/ddl/reorg_test.go index 4c28540e7ad3b..737d2258da02c 100644 --- a/ddl/reorg_test.go +++ b/ddl/reorg_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/restart_test.go b/ddl/restart_test.go index 0eb0b26e781be..32dc2064bad65 100644 --- a/ddl/restart_test.go +++ b/ddl/restart_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build !race diff --git a/ddl/rollingback.go b/ddl/rollingback.go index a2a93a7eb0c7c..884ca8e1f21d4 100644 --- a/ddl/rollingback.go +++ b/ddl/rollingback.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/rollingback_test.go b/ddl/rollingback_test.go index 25c2d75dc6a30..5a7842c0cc713 100644 --- a/ddl/rollingback_test.go +++ b/ddl/rollingback_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/schema.go b/ddl/schema.go index 9fc43fd917af7..4bc6a4976a232 100644 --- a/ddl/schema.go +++ b/ddl/schema.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/schema_test.go b/ddl/schema_test.go index b4c8efee7b089..f290f39422f49 100644 --- a/ddl/schema_test.go +++ b/ddl/schema_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/sequence.go b/ddl/sequence.go index 40c3676286106..f8e28f1168996 100644 --- a/ddl/sequence.go +++ b/ddl/sequence.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/sequence_test.go b/ddl/sequence_test.go index f46da112888df..2f8a3ce5f342f 100644 --- a/ddl/sequence_test.go +++ b/ddl/sequence_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/serial_test.go b/ddl/serial_test.go index ff99d04b0afb9..dd76ba984d633 100644 --- a/ddl/serial_test.go +++ b/ddl/serial_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/session_pool.go b/ddl/session_pool.go index bda04248ec849..4e951490912a2 100644 --- a/ddl/session_pool.go +++ b/ddl/session_pool.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/split_region.go b/ddl/split_region.go index ec7d430cd77ff..ff022844f2749 100644 --- a/ddl/split_region.go +++ b/ddl/split_region.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/stat.go b/ddl/stat.go index 6f21b99f89a8e..a1db3678dc16b 100644 --- a/ddl/stat.go +++ b/ddl/stat.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/stat_test.go b/ddl/stat_test.go index 1ed3cbfe4c7fc..58cb113352805 100644 --- a/ddl/stat_test.go +++ b/ddl/stat_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/table.go b/ddl/table.go index 69cf441c10334..90ed661f62efb 100644 --- a/ddl/table.go +++ b/ddl/table.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/table_lock.go b/ddl/table_lock.go index 6309c8ca1aff7..135f2f98a42ad 100644 --- a/ddl/table_lock.go +++ b/ddl/table_lock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/table_split_test.go b/ddl/table_split_test.go index cf60b4ba3740c..3eb4314891fd8 100644 --- a/ddl/table_split_test.go +++ b/ddl/table_split_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/table_test.go b/ddl/table_test.go index 10927908f5289..107af86bd10ff 100644 --- a/ddl/table_test.go +++ b/ddl/table_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/testutil/testutil.go b/ddl/testutil/testutil.go index 08ec5953ec58e..584689e141377 100644 --- a/ddl/testutil/testutil.go +++ b/ddl/testutil/testutil.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/util/dead_table_lock_checker.go b/ddl/util/dead_table_lock_checker.go index 15b9f31663171..b444e7a819506 100644 --- a/ddl/util/dead_table_lock_checker.go +++ b/ddl/util/dead_table_lock_checker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/util/event.go b/ddl/util/event.go index 4003ab010db98..91910729e7c9c 100644 --- a/ddl/util/event.go +++ b/ddl/util/event.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/util/syncer.go b/ddl/util/syncer.go index fa655e6578e5d..5baccfffec06f 100644 --- a/ddl/util/syncer.go +++ b/ddl/util/syncer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/util/syncer_test.go b/ddl/util/syncer_test.go index cd3b13ea40fd1..b5c7f8c0f6e88 100644 --- a/ddl/util/syncer_test.go +++ b/ddl/util/syncer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/ddl/util/util.go b/ddl/util/util.go index 1ae4e1a7684b1..19b2bbe6294cb 100644 --- a/ddl/util/util.go +++ b/ddl/util/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/distsql.go b/distsql/distsql.go index 0b1b681aaeb77..b33ec01cb7a1b 100644 --- a/distsql/distsql.go +++ b/distsql/distsql.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/distsql_test.go b/distsql/distsql_test.go index 5d710d908e184..419ca03fdca35 100644 --- a/distsql/distsql_test.go +++ b/distsql/distsql_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/main_test.go b/distsql/main_test.go index 640a0198ac9f4..1aaddbe954620 100644 --- a/distsql/main_test.go +++ b/distsql/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/request_builder.go b/distsql/request_builder.go index 94f3debb325f4..414a70d4f56cb 100644 --- a/distsql/request_builder.go +++ b/distsql/request_builder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/request_builder_test.go b/distsql/request_builder_test.go index 2318c121ccade..f4997a3bf1688 100644 --- a/distsql/request_builder_test.go +++ b/distsql/request_builder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/select_result.go b/distsql/select_result.go index 68c9f0917f358..5c87a73f99c7c 100644 --- a/distsql/select_result.go +++ b/distsql/select_result.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/select_result_test.go b/distsql/select_result_test.go index d04110f942cd2..178d29bebeb22 100644 --- a/distsql/select_result_test.go +++ b/distsql/select_result_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/distsql/stream.go b/distsql/stream.go index bfac8e3276915..529427cad3f23 100644 --- a/distsql/stream.go +++ b/distsql/stream.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/db_test.go b/domain/db_test.go index f93d8d98aeafc..b91a43d94c20c 100644 --- a/domain/db_test.go +++ b/domain/db_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/domain.go b/domain/domain.go index f958c3347eacf..2cbb491ff0437 100644 --- a/domain/domain.go +++ b/domain/domain.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/domain_test.go b/domain/domain_test.go index bb291a5383ec6..081d70ec2c5b7 100644 --- a/domain/domain_test.go +++ b/domain/domain_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/domain_utils_test.go b/domain/domain_utils_test.go index 26baf750e45ed..2bba0507231d1 100644 --- a/domain/domain_utils_test.go +++ b/domain/domain_utils_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/domainctx.go b/domain/domainctx.go index ba31bce418455..e972b7a7c5b9d 100644 --- a/domain/domainctx.go +++ b/domain/domainctx.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/domainctx_test.go b/domain/domainctx_test.go index 305d6d0075ce9..16f1dc5301b8a 100644 --- a/domain/domainctx_test.go +++ b/domain/domainctx_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/infosync/info.go b/domain/infosync/info.go index 2d294f6276cb3..e6bd04cffd0b7 100644 --- a/domain/infosync/info.go +++ b/domain/infosync/info.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/infosync/info_test.go b/domain/infosync/info_test.go index aae2348e2ef4b..1c34ffd8b7b84 100644 --- a/domain/infosync/info_test.go +++ b/domain/infosync/info_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/main_test.go b/domain/main_test.go index 0df8b10d00ca1..cfc42129ccafd 100644 --- a/domain/main_test.go +++ b/domain/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/schema_checker.go b/domain/schema_checker.go index 2a60b55f31324..4ca32461f5ed0 100644 --- a/domain/schema_checker.go +++ b/domain/schema_checker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/schema_checker_test.go b/domain/schema_checker_test.go index 575bcd75a7a3f..bf75838e0886d 100644 --- a/domain/schema_checker_test.go +++ b/domain/schema_checker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/schema_validator.go b/domain/schema_validator.go index 32a8f66dd21a6..5859519681f71 100644 --- a/domain/schema_validator.go +++ b/domain/schema_validator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/schema_validator_test.go b/domain/schema_validator_test.go index f5499c4d973e9..4305ebbcd698f 100644 --- a/domain/schema_validator_test.go +++ b/domain/schema_validator_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/session_pool_test.go b/domain/session_pool_test.go index bd1efa6eabddf..5f3e97a07ed1e 100644 --- a/domain/session_pool_test.go +++ b/domain/session_pool_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/sysvar_cache.go b/domain/sysvar_cache.go index 44993c44a159d..d652a74e0756f 100644 --- a/domain/sysvar_cache.go +++ b/domain/sysvar_cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/topn_slow_query.go b/domain/topn_slow_query.go index 96b873bc0ba82..99107a9d71a22 100644 --- a/domain/topn_slow_query.go +++ b/domain/topn_slow_query.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/domain/topn_slow_query_test.go b/domain/topn_slow_query_test.go index 4587fd6ef9c4c..effbeddde34e5 100644 --- a/domain/topn_slow_query_test.go +++ b/domain/topn_slow_query_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/errno/errcode.go b/errno/errcode.go index 15b78afbe8d59..1b8f1f0bc4d55 100644 --- a/errno/errcode.go +++ b/errno/errcode.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/errno/errname.go b/errno/errname.go index be242bbcb14b7..df323a213220e 100644 --- a/errno/errname.go +++ b/errno/errname.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/errno/infoschema.go b/errno/infoschema.go index 60eb5358c83b6..e0a8b0f9984ec 100644 --- a/errno/infoschema.go +++ b/errno/infoschema.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/errno/infoschema_test.go b/errno/infoschema_test.go index 17d217b2e6c80..063cd39072031 100644 --- a/errno/infoschema_test.go +++ b/errno/infoschema_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/errno/main_test.go b/errno/main_test.go index f8becfac4d3f0..a38aae7f1cb39 100644 --- a/errno/main_test.go +++ b/errno/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/adapter.go b/executor/adapter.go index f31e77e8b0003..008bba051dda1 100644 --- a/executor/adapter.go +++ b/executor/adapter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/adapter_test.go b/executor/adapter_test.go index bf33a3bf4f1be..ebc7fc60246d0 100644 --- a/executor/adapter_test.go +++ b/executor/adapter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/admin.go b/executor/admin.go index f667b88cebf9b..8cd35c98c942f 100644 --- a/executor/admin.go +++ b/executor/admin.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/admin_plugins.go b/executor/admin_plugins.go index 440c1c0852306..c81de0ea24682 100644 --- a/executor/admin_plugins.go +++ b/executor/admin_plugins.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/admin_telemetry.go b/executor/admin_telemetry.go index f1d6371c9fe7f..c3469c1eb7491 100644 --- a/executor/admin_telemetry.go +++ b/executor/admin_telemetry.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/admin_test.go b/executor/admin_test.go index b3962e848b809..1ed5edbbf974f 100644 --- a/executor/admin_test.go +++ b/executor/admin_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/aggfunc_test.go b/executor/aggfuncs/aggfunc_test.go index 997f27a343444..a5cfa6d9af198 100644 --- a/executor/aggfuncs/aggfunc_test.go +++ b/executor/aggfuncs/aggfunc_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/aggfuncs.go b/executor/aggfuncs/aggfuncs.go index e608d910ba821..3de0e80841715 100644 --- a/executor/aggfuncs/aggfuncs.go +++ b/executor/aggfuncs/aggfuncs.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/builder.go b/executor/aggfuncs/builder.go index 4627d0ae2f12e..7c9589b63bfb5 100644 --- a/executor/aggfuncs/builder.go +++ b/executor/aggfuncs/builder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/export_test.go b/executor/aggfuncs/export_test.go index fc7c7937bbd35..35a4cdd15c420 100644 --- a/executor/aggfuncs/export_test.go +++ b/executor/aggfuncs/export_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_avg.go b/executor/aggfuncs/func_avg.go index a62565ab43fa6..fc76ce49f86cd 100644 --- a/executor/aggfuncs/func_avg.go +++ b/executor/aggfuncs/func_avg.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_avg_test.go b/executor/aggfuncs/func_avg_test.go index 114a6c5259f2d..dbe1ea66fa7f7 100644 --- a/executor/aggfuncs/func_avg_test.go +++ b/executor/aggfuncs/func_avg_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_bitfuncs.go b/executor/aggfuncs/func_bitfuncs.go index 00aee7af2e364..429e4593175aa 100644 --- a/executor/aggfuncs/func_bitfuncs.go +++ b/executor/aggfuncs/func_bitfuncs.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_bitfuncs_test.go b/executor/aggfuncs/func_bitfuncs_test.go index 8b49a4eccda8b..48f0786cbddbd 100644 --- a/executor/aggfuncs/func_bitfuncs_test.go +++ b/executor/aggfuncs/func_bitfuncs_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_count.go b/executor/aggfuncs/func_count.go index 8b0c4f558744b..139527fc2cb28 100644 --- a/executor/aggfuncs/func_count.go +++ b/executor/aggfuncs/func_count.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_count_distinct.go b/executor/aggfuncs/func_count_distinct.go index 21c9e54115f7d..db32ce134c364 100644 --- a/executor/aggfuncs/func_count_distinct.go +++ b/executor/aggfuncs/func_count_distinct.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_count_test.go b/executor/aggfuncs/func_count_test.go index f45b0a71b290d..4cec706f9f2fc 100644 --- a/executor/aggfuncs/func_count_test.go +++ b/executor/aggfuncs/func_count_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_cume_dist.go b/executor/aggfuncs/func_cume_dist.go index 39d7c30221826..2e0d171af579f 100644 --- a/executor/aggfuncs/func_cume_dist.go +++ b/executor/aggfuncs/func_cume_dist.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_cume_dist_test.go b/executor/aggfuncs/func_cume_dist_test.go index b236f531f2f1f..d5a6c5dc2df85 100644 --- a/executor/aggfuncs/func_cume_dist_test.go +++ b/executor/aggfuncs/func_cume_dist_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_first_row.go b/executor/aggfuncs/func_first_row.go index 99c3dbade1439..c2c33bb0862e4 100644 --- a/executor/aggfuncs/func_first_row.go +++ b/executor/aggfuncs/func_first_row.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_first_row_test.go b/executor/aggfuncs/func_first_row_test.go index 03dc2e5da6729..e96065df68dd6 100644 --- a/executor/aggfuncs/func_first_row_test.go +++ b/executor/aggfuncs/func_first_row_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_group_concat.go b/executor/aggfuncs/func_group_concat.go index f2ca28061a866..87dd948ee003a 100644 --- a/executor/aggfuncs/func_group_concat.go +++ b/executor/aggfuncs/func_group_concat.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_group_concat_test.go b/executor/aggfuncs/func_group_concat_test.go index 8d03ffe29fac7..9b67a6267e23e 100644 --- a/executor/aggfuncs/func_group_concat_test.go +++ b/executor/aggfuncs/func_group_concat_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_json_arrayagg.go b/executor/aggfuncs/func_json_arrayagg.go index 61500afc04ad9..9d7bbfdce47be 100644 --- a/executor/aggfuncs/func_json_arrayagg.go +++ b/executor/aggfuncs/func_json_arrayagg.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_json_arrayagg_test.go b/executor/aggfuncs/func_json_arrayagg_test.go index aa88e0f636499..f530036639828 100644 --- a/executor/aggfuncs/func_json_arrayagg_test.go +++ b/executor/aggfuncs/func_json_arrayagg_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_json_objectagg.go b/executor/aggfuncs/func_json_objectagg.go index c2bf3bf985231..269813131d37c 100644 --- a/executor/aggfuncs/func_json_objectagg.go +++ b/executor/aggfuncs/func_json_objectagg.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_json_objectagg_test.go b/executor/aggfuncs/func_json_objectagg_test.go index 76b4fc8b98477..c5d9ff1b7a991 100644 --- a/executor/aggfuncs/func_json_objectagg_test.go +++ b/executor/aggfuncs/func_json_objectagg_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_lead_lag.go b/executor/aggfuncs/func_lead_lag.go index 59d4ec1052693..7bd9061e68193 100644 --- a/executor/aggfuncs/func_lead_lag.go +++ b/executor/aggfuncs/func_lead_lag.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_lead_lag_test.go b/executor/aggfuncs/func_lead_lag_test.go index a911ee4eb5b0c..9dc49c19208d6 100644 --- a/executor/aggfuncs/func_lead_lag_test.go +++ b/executor/aggfuncs/func_lead_lag_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_max_min.go b/executor/aggfuncs/func_max_min.go index d3662aff258d5..dd3e8e47d4102 100644 --- a/executor/aggfuncs/func_max_min.go +++ b/executor/aggfuncs/func_max_min.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_max_min_test.go b/executor/aggfuncs/func_max_min_test.go index 37a41722871da..f49edcdf65bb6 100644 --- a/executor/aggfuncs/func_max_min_test.go +++ b/executor/aggfuncs/func_max_min_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_ntile.go b/executor/aggfuncs/func_ntile.go index fd25009fa4039..059392b1cda41 100644 --- a/executor/aggfuncs/func_ntile.go +++ b/executor/aggfuncs/func_ntile.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_ntile_test.go b/executor/aggfuncs/func_ntile_test.go index 46b9349bf05c3..da820a9d6c3bc 100644 --- a/executor/aggfuncs/func_ntile_test.go +++ b/executor/aggfuncs/func_ntile_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_percent_rank.go b/executor/aggfuncs/func_percent_rank.go index af0cac7401aa5..2afe6a92d5200 100644 --- a/executor/aggfuncs/func_percent_rank.go +++ b/executor/aggfuncs/func_percent_rank.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_percent_rank_test.go b/executor/aggfuncs/func_percent_rank_test.go index f452609d61423..ce174a2342be8 100644 --- a/executor/aggfuncs/func_percent_rank_test.go +++ b/executor/aggfuncs/func_percent_rank_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_percentile.go b/executor/aggfuncs/func_percentile.go index 3821dc101a937..3499b4cd71a44 100644 --- a/executor/aggfuncs/func_percentile.go +++ b/executor/aggfuncs/func_percentile.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_percentile_test.go b/executor/aggfuncs/func_percentile_test.go index b5f3732ee48cb..798bb53dfe7d7 100644 --- a/executor/aggfuncs/func_percentile_test.go +++ b/executor/aggfuncs/func_percentile_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_rank.go b/executor/aggfuncs/func_rank.go index da298721dd6fe..ce8b17754cf8c 100644 --- a/executor/aggfuncs/func_rank.go +++ b/executor/aggfuncs/func_rank.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_rank_test.go b/executor/aggfuncs/func_rank_test.go index b8588e6378f65..eeb5f13724dcf 100644 --- a/executor/aggfuncs/func_rank_test.go +++ b/executor/aggfuncs/func_rank_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_stddevpop.go b/executor/aggfuncs/func_stddevpop.go index 9098020cbd146..307c26ceb8864 100644 --- a/executor/aggfuncs/func_stddevpop.go +++ b/executor/aggfuncs/func_stddevpop.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_stddevsamp.go b/executor/aggfuncs/func_stddevsamp.go index 443e0dc1cfd32..80935ae5de11c 100644 --- a/executor/aggfuncs/func_stddevsamp.go +++ b/executor/aggfuncs/func_stddevsamp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_sum.go b/executor/aggfuncs/func_sum.go index 77cc6745ddf65..35b4adbc30164 100644 --- a/executor/aggfuncs/func_sum.go +++ b/executor/aggfuncs/func_sum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_sum_test.go b/executor/aggfuncs/func_sum_test.go index 701b3d36059da..2d7308ba6da4d 100644 --- a/executor/aggfuncs/func_sum_test.go +++ b/executor/aggfuncs/func_sum_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_value.go b/executor/aggfuncs/func_value.go index 001a913de45c3..6ad1a9bd6e0ed 100644 --- a/executor/aggfuncs/func_value.go +++ b/executor/aggfuncs/func_value.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_value_test.go b/executor/aggfuncs/func_value_test.go index b937d4fad261b..97a03bee0fd03 100644 --- a/executor/aggfuncs/func_value_test.go +++ b/executor/aggfuncs/func_value_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_varpop.go b/executor/aggfuncs/func_varpop.go index fcd7ae6806b18..54148821d60f6 100644 --- a/executor/aggfuncs/func_varpop.go +++ b/executor/aggfuncs/func_varpop.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/func_varsamp.go b/executor/aggfuncs/func_varsamp.go index 5b0b15338943b..7c9029b7a08e4 100644 --- a/executor/aggfuncs/func_varsamp.go +++ b/executor/aggfuncs/func_varsamp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/row_number.go b/executor/aggfuncs/row_number.go index b1f95a008ec9b..d73bb5874784c 100644 --- a/executor/aggfuncs/row_number.go +++ b/executor/aggfuncs/row_number.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/row_number_test.go b/executor/aggfuncs/row_number_test.go index 7f57115453bbb..3a76be76be719 100644 --- a/executor/aggfuncs/row_number_test.go +++ b/executor/aggfuncs/row_number_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggfuncs/window_func_test.go b/executor/aggfuncs/window_func_test.go index 143f427fbeac8..a6d2a9e75d333 100644 --- a/executor/aggfuncs/window_func_test.go +++ b/executor/aggfuncs/window_func_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggregate.go b/executor/aggregate.go index cf5bf5687e07f..4896bdaf1ec5f 100644 --- a/executor/aggregate.go +++ b/executor/aggregate.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/aggregate_test.go b/executor/aggregate_test.go index df3be90097f64..3d981ed9fdf12 100644 --- a/executor/aggregate_test.go +++ b/executor/aggregate_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/analyze.go b/executor/analyze.go index 07cb6cdec4e60..67cc4cbd54385 100644 --- a/executor/analyze.go +++ b/executor/analyze.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/analyze_test.go b/executor/analyze_test.go index 79fa6bf3ae641..0230549a089f3 100644 --- a/executor/analyze_test.go +++ b/executor/analyze_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/apply_cache.go b/executor/apply_cache.go index eab8e24f6768d..d30020b3cc6b1 100644 --- a/executor/apply_cache.go +++ b/executor/apply_cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/apply_cache_test.go b/executor/apply_cache_test.go index 5c8af4b44b3a1..47a0b992a5166 100644 --- a/executor/apply_cache_test.go +++ b/executor/apply_cache_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/batch_checker.go b/executor/batch_checker.go index 4705038c4f537..ed0af152a2560 100644 --- a/executor/batch_checker.go +++ b/executor/batch_checker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/batch_point_get.go b/executor/batch_point_get.go index b51f7ef709ef6..ce29c4c49aacc 100644 --- a/executor/batch_point_get.go +++ b/executor/batch_point_get.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/batch_point_get_test.go b/executor/batch_point_get_test.go index 114134ac61513..5c9c035b8d63f 100644 --- a/executor/batch_point_get_test.go +++ b/executor/batch_point_get_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/benchmark_test.go b/executor/benchmark_test.go index 6ff4022c5a8c8..63a97915f5ee6 100644 --- a/executor/benchmark_test.go +++ b/executor/benchmark_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/bind.go b/executor/bind.go index 42552f1dcdee1..94fd329275524 100644 --- a/executor/bind.go +++ b/executor/bind.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/brie.go b/executor/brie.go index f170af1739a19..9fa177e3ae6c8 100644 --- a/executor/brie.go +++ b/executor/brie.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/brie_test.go b/executor/brie_test.go index db417da114736..87ae456d35b4d 100644 --- a/executor/brie_test.go +++ b/executor/brie_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/builder.go b/executor/builder.go index 1e10e3640f802..c888facf4e369 100644 --- a/executor/builder.go +++ b/executor/builder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/change.go b/executor/change.go index bb9ec0cf1cee0..f9b58cc9c0855 100644 --- a/executor/change.go +++ b/executor/change.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/checksum.go b/executor/checksum.go index 62543068820e9..00b1e46d75590 100644 --- a/executor/checksum.go +++ b/executor/checksum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/chunk_size_control_test.go b/executor/chunk_size_control_test.go index 7c33f3fd9c3e9..0a3a0df24bb13 100644 --- a/executor/chunk_size_control_test.go +++ b/executor/chunk_size_control_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/collation_test.go b/executor/collation_test.go index b6fb6a53843aa..a2ea15ad489d4 100644 --- a/executor/collation_test.go +++ b/executor/collation_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/compiler.go b/executor/compiler.go index 8c310b004f310..551411e57cd68 100644 --- a/executor/compiler.go +++ b/executor/compiler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/concurrent_map.go b/executor/concurrent_map.go index 3d6ef1082f605..191c890621dc8 100644 --- a/executor/concurrent_map.go +++ b/executor/concurrent_map.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/concurrent_map_test.go b/executor/concurrent_map_test.go index 1566ebc8b4934..ebf2da277ed4f 100644 --- a/executor/concurrent_map_test.go +++ b/executor/concurrent_map_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/coprocessor.go b/executor/coprocessor.go index 93f7dbcf40366..4eeab5d6d70c5 100644 --- a/executor/coprocessor.go +++ b/executor/coprocessor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/cte.go b/executor/cte.go index 4fe3414b97154..3ce82c3920559 100644 --- a/executor/cte.go +++ b/executor/cte.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/cte_table_reader.go b/executor/cte_table_reader.go index 94fedf01fd93e..efd5a0387e6cb 100644 --- a/executor/cte_table_reader.go +++ b/executor/cte_table_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/cte_test.go b/executor/cte_test.go index d5ec86a03bb05..27bfb9f86c30c 100644 --- a/executor/cte_test.go +++ b/executor/cte_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/ddl.go b/executor/ddl.go index 13d5f3c1b6900..dd0ca83fbcc1e 100644 --- a/executor/ddl.go +++ b/executor/ddl.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/ddl_test.go b/executor/ddl_test.go index 63b41fa1b6898..338f920a345a2 100644 --- a/executor/ddl_test.go +++ b/executor/ddl_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/delete.go b/executor/delete.go index 16f0e9c421b19..93b0e32e5d381 100644 --- a/executor/delete.go +++ b/executor/delete.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/delete_test.go b/executor/delete_test.go index 55ab9b80fd1d7..639be55450003 100644 --- a/executor/delete_test.go +++ b/executor/delete_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/distsql.go b/executor/distsql.go index aee323bdf37c3..c31d023317a80 100644 --- a/executor/distsql.go +++ b/executor/distsql.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/distsql_test.go b/executor/distsql_test.go index 847d1aa2a9e15..8a5120e593717 100644 --- a/executor/distsql_test.go +++ b/executor/distsql_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/errors.go b/executor/errors.go index ca19ecba51373..f592921122d9b 100644 --- a/executor/errors.go +++ b/executor/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/executor.go b/executor/executor.go index 6e59f1f7a4abf..f7e828cc3600a 100644 --- a/executor/executor.go +++ b/executor/executor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/executor_pkg_test.go b/executor/executor_pkg_test.go index c427156ba073b..80e6d9902b760 100644 --- a/executor/executor_pkg_test.go +++ b/executor/executor_pkg_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/executor_required_rows_test.go b/executor/executor_required_rows_test.go index 44c9a5d910dfd..02c52d65e8880 100644 --- a/executor/executor_required_rows_test.go +++ b/executor/executor_required_rows_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/executor_test.go b/executor/executor_test.go index e0cdefb03693a..47c57da0c52e1 100644 --- a/executor/executor_test.go +++ b/executor/executor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/explain.go b/executor/explain.go index 4e6116975b978..9871c291929e4 100644 --- a/executor/explain.go +++ b/executor/explain.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/explain_test.go b/executor/explain_test.go index a0ce1a1eb2e0c..098ae23d5ac8e 100644 --- a/executor/explain_test.go +++ b/executor/explain_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/explain_unit_test.go b/executor/explain_unit_test.go index 1276575f47c28..299a547709cd3 100644 --- a/executor/explain_unit_test.go +++ b/executor/explain_unit_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/explainfor_test.go b/executor/explainfor_test.go index 89b9d934a4858..4c5f9fd6438cf 100644 --- a/executor/explainfor_test.go +++ b/executor/explainfor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/grant.go b/executor/grant.go index 0d5a8cc2e46d4..22bc5963b5c79 100644 --- a/executor/grant.go +++ b/executor/grant.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/grant_test.go b/executor/grant_test.go index 6e6369e40bd7b..c422aef2f4f73 100644 --- a/executor/grant_test.go +++ b/executor/grant_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/hash_table.go b/executor/hash_table.go index cd356d0549a5f..912c072594077 100644 --- a/executor/hash_table.go +++ b/executor/hash_table.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/hash_table_test.go b/executor/hash_table_test.go index 3458002987f1e..c7e3c60f50ae8 100644 --- a/executor/hash_table_test.go +++ b/executor/hash_table_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_advise.go b/executor/index_advise.go index 00ae3a23840c0..5c6bdce4e07f0 100644 --- a/executor/index_advise.go +++ b/executor/index_advise.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_advise_test.go b/executor/index_advise_test.go index 9d7dd6c43208d..694721cf5001c 100644 --- a/executor/index_advise_test.go +++ b/executor/index_advise_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_lookup_hash_join.go b/executor/index_lookup_hash_join.go index ed7da54baf3f5..d794d3253e105 100644 --- a/executor/index_lookup_hash_join.go +++ b/executor/index_lookup_hash_join.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_lookup_join.go b/executor/index_lookup_join.go index 4f9ce5e1ac194..f5869b7ef3e8f 100644 --- a/executor/index_lookup_join.go +++ b/executor/index_lookup_join.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_lookup_join_test.go b/executor/index_lookup_join_test.go index 08feb3556d3ec..992f77e8dfb14 100644 --- a/executor/index_lookup_join_test.go +++ b/executor/index_lookup_join_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_lookup_merge_join.go b/executor/index_lookup_merge_join.go index a16ffca0a771d..d468acd35d39c 100644 --- a/executor/index_lookup_merge_join.go +++ b/executor/index_lookup_merge_join.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_merge_reader.go b/executor/index_merge_reader.go index e55424dc3ccf7..b60dd2c2dbfe6 100644 --- a/executor/index_merge_reader.go +++ b/executor/index_merge_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/index_merge_reader_test.go b/executor/index_merge_reader_test.go index 73322d3581755..51620b861a94a 100644 --- a/executor/index_merge_reader_test.go +++ b/executor/index_merge_reader_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/infoschema_reader.go b/executor/infoschema_reader.go index f95b7d1d8214f..852e6162155a3 100644 --- a/executor/infoschema_reader.go +++ b/executor/infoschema_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/infoschema_reader_test.go b/executor/infoschema_reader_test.go index 6e594532781f9..3fd851fb93d44 100644 --- a/executor/infoschema_reader_test.go +++ b/executor/infoschema_reader_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/insert.go b/executor/insert.go index f0b84091240fa..c598232e895f1 100644 --- a/executor/insert.go +++ b/executor/insert.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/insert_common.go b/executor/insert_common.go index af273aa854017..492dfdc836273 100644 --- a/executor/insert_common.go +++ b/executor/insert_common.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/insert_test.go b/executor/insert_test.go index 3ee4780932860..23fd0ba99cba8 100644 --- a/executor/insert_test.go +++ b/executor/insert_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_common.go b/executor/inspection_common.go index 20f97bcb0724a..c3622c115efe6 100644 --- a/executor/inspection_common.go +++ b/executor/inspection_common.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_common_test.go b/executor/inspection_common_test.go index eb4f8db8ceca6..61eb1cfb20e9f 100644 --- a/executor/inspection_common_test.go +++ b/executor/inspection_common_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_profile.go b/executor/inspection_profile.go index 478f0cc6aba42..90ea2bc224c5f 100644 --- a/executor/inspection_profile.go +++ b/executor/inspection_profile.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_result.go b/executor/inspection_result.go index 1faa2e83150c5..bb26993824684 100644 --- a/executor/inspection_result.go +++ b/executor/inspection_result.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_result_test.go b/executor/inspection_result_test.go index c12fac1370b3a..f10cbc8500049 100644 --- a/executor/inspection_result_test.go +++ b/executor/inspection_result_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_summary.go b/executor/inspection_summary.go index 2a01cab6dc402..e57a9221c2bb7 100644 --- a/executor/inspection_summary.go +++ b/executor/inspection_summary.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/inspection_summary_test.go b/executor/inspection_summary_test.go index f703a3c17bae4..f07c04cf8d061 100644 --- a/executor/inspection_summary_test.go +++ b/executor/inspection_summary_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/join.go b/executor/join.go index 1a3f62de47ac1..b73d20cf54e27 100644 --- a/executor/join.go +++ b/executor/join.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/join_pkg_test.go b/executor/join_pkg_test.go index 2ee00382be53b..1f7b00b687160 100644 --- a/executor/join_pkg_test.go +++ b/executor/join_pkg_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/join_test.go b/executor/join_test.go index a5ca48e7b1976..35d5a914d6470 100644 --- a/executor/join_test.go +++ b/executor/join_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/joiner.go b/executor/joiner.go index 8b2faea437154..ecfab11f66822 100644 --- a/executor/joiner.go +++ b/executor/joiner.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/joiner_test.go b/executor/joiner_test.go index e9c76a28a665b..aca761803a711 100644 --- a/executor/joiner_test.go +++ b/executor/joiner_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/load_data.go b/executor/load_data.go index fc1ba8196b922..cc6ff16347b53 100644 --- a/executor/load_data.go +++ b/executor/load_data.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/load_stats.go b/executor/load_stats.go index 473a14150e711..d59651e29200a 100644 --- a/executor/load_stats.go +++ b/executor/load_stats.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/main_test.go b/executor/main_test.go index dc50dc65feb79..dbd7e4c057811 100644 --- a/executor/main_test.go +++ b/executor/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/mem_reader.go b/executor/mem_reader.go index 5dcfedc76188e..dfd30471df8a0 100644 --- a/executor/mem_reader.go +++ b/executor/mem_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/memory_test.go b/executor/memory_test.go index c02f0f5bca4b6..f6b395b285a5f 100644 --- a/executor/memory_test.go +++ b/executor/memory_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/memtable_reader.go b/executor/memtable_reader.go index 6fa43f9fe120d..699a61bd2ce07 100644 --- a/executor/memtable_reader.go +++ b/executor/memtable_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/memtable_reader_test.go b/executor/memtable_reader_test.go index 94a8b49ca26bb..4440318b18d78 100644 --- a/executor/memtable_reader_test.go +++ b/executor/memtable_reader_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/merge_join.go b/executor/merge_join.go index d6374910a53b9..a28cb93c4648d 100644 --- a/executor/merge_join.go +++ b/executor/merge_join.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/merge_join_test.go b/executor/merge_join_test.go index c58eb89181ef5..9cf56fe1716c8 100644 --- a/executor/merge_join_test.go +++ b/executor/merge_join_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/metrics_reader.go b/executor/metrics_reader.go index d13d9cc20eb34..0329226bcaac0 100644 --- a/executor/metrics_reader.go +++ b/executor/metrics_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/metrics_reader_test.go b/executor/metrics_reader_test.go index 8d75ac41fd96e..365d04152d17d 100644 --- a/executor/metrics_reader_test.go +++ b/executor/metrics_reader_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/mpp_gather.go b/executor/mpp_gather.go index e517a0130ec4f..e64ae56407ae6 100644 --- a/executor/mpp_gather.go +++ b/executor/mpp_gather.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/oomtest/oom_test.go b/executor/oomtest/oom_test.go index fdd26589fac62..984e0dc73e90b 100644 --- a/executor/oomtest/oom_test.go +++ b/executor/oomtest/oom_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/opt_rule_blacklist.go b/executor/opt_rule_blacklist.go index 76cdc74ea1d11..0d915c9eb6966 100644 --- a/executor/opt_rule_blacklist.go +++ b/executor/opt_rule_blacklist.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/parallel_apply.go b/executor/parallel_apply.go index 636ec96ad2868..9ebe3bde46640 100644 --- a/executor/parallel_apply.go +++ b/executor/parallel_apply.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/parallel_apply_test.go b/executor/parallel_apply_test.go index 93448f0e3f92f..809b4c5247e5a 100644 --- a/executor/parallel_apply_test.go +++ b/executor/parallel_apply_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/partition_table.go b/executor/partition_table.go index e888332fee396..f38c2f1b01861 100644 --- a/executor/partition_table.go +++ b/executor/partition_table.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/partition_table_test.go b/executor/partition_table_test.go index 92d999108ae4a..6c61797db5a3d 100644 --- a/executor/partition_table_test.go +++ b/executor/partition_table_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/pipelined_window.go b/executor/pipelined_window.go index add7fa2ff453b..41c09d8216efd 100644 --- a/executor/pipelined_window.go +++ b/executor/pipelined_window.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/plan_recreator.go b/executor/plan_recreator.go index 6205262ce0db5..0ba2c74ccc991 100644 --- a/executor/plan_recreator.go +++ b/executor/plan_recreator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/point_get.go b/executor/point_get.go index 6bc96f3e755e3..bcdedb260fb06 100644 --- a/executor/point_get.go +++ b/executor/point_get.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/point_get_test.go b/executor/point_get_test.go index 0d6798b9d4449..a352766850b7d 100644 --- a/executor/point_get_test.go +++ b/executor/point_get_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/prepared.go b/executor/prepared.go index e6d2e197d00b8..d4e5d647f2c65 100644 --- a/executor/prepared.go +++ b/executor/prepared.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/prepared_test.go b/executor/prepared_test.go index e0e2c19ee0f22..ea587d60280ae 100644 --- a/executor/prepared_test.go +++ b/executor/prepared_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/projection.go b/executor/projection.go index 5e0f54d258a26..4a680010fcb7d 100644 --- a/executor/projection.go +++ b/executor/projection.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/reload_expr_pushdown_blacklist.go b/executor/reload_expr_pushdown_blacklist.go index 384c522f8c4a2..9ed6618153771 100644 --- a/executor/reload_expr_pushdown_blacklist.go +++ b/executor/reload_expr_pushdown_blacklist.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/replace.go b/executor/replace.go index e1c70f07a15b6..78fb519049d84 100644 --- a/executor/replace.go +++ b/executor/replace.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/revoke.go b/executor/revoke.go index c15bdb17e0d2b..606f9ea95785f 100644 --- a/executor/revoke.go +++ b/executor/revoke.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/revoke_test.go b/executor/revoke_test.go index 67b4bd0954d6b..dd9318153a004 100644 --- a/executor/revoke_test.go +++ b/executor/revoke_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/rowid_test.go b/executor/rowid_test.go index 19ca30791f095..d7664f1e0fb1c 100644 --- a/executor/rowid_test.go +++ b/executor/rowid_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/sample.go b/executor/sample.go index a1ec7b09bad9f..fc25b65bda315 100644 --- a/executor/sample.go +++ b/executor/sample.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/sample_test.go b/executor/sample_test.go index dec765a2bb555..315ac10eaf1ac 100644 --- a/executor/sample_test.go +++ b/executor/sample_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/select_into.go b/executor/select_into.go index 6afe7c66dde10..52be2ed13af6d 100644 --- a/executor/select_into.go +++ b/executor/select_into.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/select_into_test.go b/executor/select_into_test.go index e9b268703ff26..b0fd447b21939 100644 --- a/executor/select_into_test.go +++ b/executor/select_into_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/seqtest/prepared_test.go b/executor/seqtest/prepared_test.go index 1b54221a224b5..879325267f2b2 100644 --- a/executor/seqtest/prepared_test.go +++ b/executor/seqtest/prepared_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/seqtest/seq_executor_test.go b/executor/seqtest/seq_executor_test.go index 6923347f6189f..72f4ebb95b9f2 100644 --- a/executor/seqtest/seq_executor_test.go +++ b/executor/seqtest/seq_executor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/set.go b/executor/set.go index e303efe1a5520..b874f235e22ff 100644 --- a/executor/set.go +++ b/executor/set.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/set_config.go b/executor/set_config.go index c9734db27d548..5cfe6d037d8d6 100644 --- a/executor/set_config.go +++ b/executor/set_config.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/set_test.go b/executor/set_test.go index 667f4ecf3880a..c28cb5f90bafa 100644 --- a/executor/set_test.go +++ b/executor/set_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/show.go b/executor/show.go index 295c1db8142b8..5d307ccbcd0e1 100644 --- a/executor/show.go +++ b/executor/show.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/show_placement.go b/executor/show_placement.go index 60745d0f3b5b9..d074deca6e7e4 100644 --- a/executor/show_placement.go +++ b/executor/show_placement.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/show_placement_test.go b/executor/show_placement_test.go index 485a60f218a85..6b9303d59d37f 100644 --- a/executor/show_placement_test.go +++ b/executor/show_placement_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/show_stats.go b/executor/show_stats.go index 5a5f6a6d5b632..44a0f16761eb6 100644 --- a/executor/show_stats.go +++ b/executor/show_stats.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/show_stats_test.go b/executor/show_stats_test.go index 323082be757da..c93de9f7e938e 100644 --- a/executor/show_stats_test.go +++ b/executor/show_stats_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/show_test.go b/executor/show_test.go index ff630bc5cae2a..613d4e3c8c43c 100644 --- a/executor/show_test.go +++ b/executor/show_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/shuffle.go b/executor/shuffle.go index 9ad4ff522e4cd..a71e388c02bac 100644 --- a/executor/shuffle.go +++ b/executor/shuffle.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/shuffle_test.go b/executor/shuffle_test.go index 59ce06b4e26dc..d93f31fa2cfc0 100644 --- a/executor/shuffle_test.go +++ b/executor/shuffle_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/simple.go b/executor/simple.go index bbe136ad97f6d..0f19fce0f2b4e 100644 --- a/executor/simple.go +++ b/executor/simple.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/simple_test.go b/executor/simple_test.go index 425e7d5204731..bcea09d715c0b 100644 --- a/executor/simple_test.go +++ b/executor/simple_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/slow_query.go b/executor/slow_query.go index 7817d4b2ab51d..8633f7a5e00f0 100755 --- a/executor/slow_query.go +++ b/executor/slow_query.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/slow_query_test.go b/executor/slow_query_test.go index 28861b4e67a5d..c9cb125143993 100644 --- a/executor/slow_query_test.go +++ b/executor/slow_query_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/sort.go b/executor/sort.go index 5259ae0041e6e..d7f36d9e03b1f 100644 --- a/executor/sort.go +++ b/executor/sort.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/sort_test.go b/executor/sort_test.go index 57c8a9fc6d71f..aa87075115076 100644 --- a/executor/sort_test.go +++ b/executor/sort_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/split.go b/executor/split.go index a611c31678437..ec63a54902717 100644 --- a/executor/split.go +++ b/executor/split.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/split_test.go b/executor/split_test.go index b457a08a560da..c3e7dbc51dff9 100644 --- a/executor/split_test.go +++ b/executor/split_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/stale_txn_test.go b/executor/stale_txn_test.go index 6ac9b075ced56..623fab09bc6ff 100644 --- a/executor/stale_txn_test.go +++ b/executor/stale_txn_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/statement_context_test.go b/executor/statement_context_test.go index 6a512d824992e..514ca53f238b8 100644 --- a/executor/statement_context_test.go +++ b/executor/statement_context_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/table_reader.go b/executor/table_reader.go index 0ab10a6f829dd..e9cb8a149e71f 100644 --- a/executor/table_reader.go +++ b/executor/table_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/table_readers_required_rows_test.go b/executor/table_readers_required_rows_test.go index a97ac1afc4ba9..7166229813e14 100644 --- a/executor/table_readers_required_rows_test.go +++ b/executor/table_readers_required_rows_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/tiflash_test.go b/executor/tiflash_test.go index 362ae3e337213..ee48820dde220 100644 --- a/executor/tiflash_test.go +++ b/executor/tiflash_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/trace.go b/executor/trace.go index f0faa25ed504b..985ec2dfaefce 100644 --- a/executor/trace.go +++ b/executor/trace.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/trace_test.go b/executor/trace_test.go index 70bdcc35aa056..c360ee82f0856 100644 --- a/executor/trace_test.go +++ b/executor/trace_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/union_iter.go b/executor/union_iter.go index d490a8f70c387..bd56d476d6d0f 100644 --- a/executor/union_iter.go +++ b/executor/union_iter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/union_iter_test.go b/executor/union_iter_test.go index 1f51f2fa8d51f..0bd92ed7add40 100644 --- a/executor/union_iter_test.go +++ b/executor/union_iter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/union_scan.go b/executor/union_scan.go index 9a332887c7b46..6289f23015b61 100644 --- a/executor/union_scan.go +++ b/executor/union_scan.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/union_scan_test.go b/executor/union_scan_test.go index 31f9cc6b98670..5e0727458230e 100644 --- a/executor/union_scan_test.go +++ b/executor/union_scan_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/update.go b/executor/update.go index 3a00f3c183cc9..5b946958302ab 100644 --- a/executor/update.go +++ b/executor/update.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/update_test.go b/executor/update_test.go index 49a980ec01676..d22b8af74353a 100644 --- a/executor/update_test.go +++ b/executor/update_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/utils.go b/executor/utils.go index dcd2a394331d6..47fe32a93aa68 100644 --- a/executor/utils.go +++ b/executor/utils.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/utils_test.go b/executor/utils_test.go index 4bba62668d572..2cc64849ca922 100644 --- a/executor/utils_test.go +++ b/executor/utils_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/window.go b/executor/window.go index 19e92687fffda..fc8d8fff385a1 100644 --- a/executor/window.go +++ b/executor/window.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/window_test.go b/executor/window_test.go index 970d7f7354100..6cbe826abff97 100644 --- a/executor/window_test.go +++ b/executor/window_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/write.go b/executor/write.go index 29e172878becb..d64969286769c 100644 --- a/executor/write.go +++ b/executor/write.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/write_concurrent_test.go b/executor/write_concurrent_test.go index a0be46778fe75..58e7f37ef4777 100644 --- a/executor/write_concurrent_test.go +++ b/executor/write_concurrent_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/executor/write_test.go b/executor/write_test.go index b9496cebb3da9..4a2445bbd4189 100644 --- a/executor/write_test.go +++ b/executor/write_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/agg_to_pb.go b/expression/aggregation/agg_to_pb.go index d3c9ef9b7e3c2..eb425f41a4b54 100644 --- a/expression/aggregation/agg_to_pb.go +++ b/expression/aggregation/agg_to_pb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/agg_to_pb_test.go b/expression/aggregation/agg_to_pb_test.go index 5030959eed08b..f8b50a94a73b3 100644 --- a/expression/aggregation/agg_to_pb_test.go +++ b/expression/aggregation/agg_to_pb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/aggregation.go b/expression/aggregation/aggregation.go index 39ae1190dcb94..5f932e3e4d646 100644 --- a/expression/aggregation/aggregation.go +++ b/expression/aggregation/aggregation.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/aggregation_test.go b/expression/aggregation/aggregation_test.go index 307382e08f46c..059405cae9e84 100644 --- a/expression/aggregation/aggregation_test.go +++ b/expression/aggregation/aggregation_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/avg.go b/expression/aggregation/avg.go index 7d861119e6568..cd7e53fd2d354 100644 --- a/expression/aggregation/avg.go +++ b/expression/aggregation/avg.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/base_func.go b/expression/aggregation/base_func.go index 731bc265736c7..d1eb6dbafe9fe 100644 --- a/expression/aggregation/base_func.go +++ b/expression/aggregation/base_func.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/bench_test.go b/expression/aggregation/bench_test.go index c3f72695709cd..4bd13183fff78 100644 --- a/expression/aggregation/bench_test.go +++ b/expression/aggregation/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/bit_and.go b/expression/aggregation/bit_and.go index 28269d038faee..fcb4aeb806874 100644 --- a/expression/aggregation/bit_and.go +++ b/expression/aggregation/bit_and.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/bit_or.go b/expression/aggregation/bit_or.go index d6cfc09d57a5d..f5709a0575ca8 100644 --- a/expression/aggregation/bit_or.go +++ b/expression/aggregation/bit_or.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/bit_xor.go b/expression/aggregation/bit_xor.go index bce700e37b29a..e30210746d0d3 100644 --- a/expression/aggregation/bit_xor.go +++ b/expression/aggregation/bit_xor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/concat.go b/expression/aggregation/concat.go index fe132bd2849b7..21b3e0d787954 100644 --- a/expression/aggregation/concat.go +++ b/expression/aggregation/concat.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/count.go b/expression/aggregation/count.go index 91ab8f741e06e..a2c59dcbd361a 100644 --- a/expression/aggregation/count.go +++ b/expression/aggregation/count.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/descriptor.go b/expression/aggregation/descriptor.go index 10408a374cbc7..c37fb8974b818 100644 --- a/expression/aggregation/descriptor.go +++ b/expression/aggregation/descriptor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/explain.go b/expression/aggregation/explain.go index 74a915b573830..bf71db41bbae6 100644 --- a/expression/aggregation/explain.go +++ b/expression/aggregation/explain.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/first_row.go b/expression/aggregation/first_row.go index b49da7f6edcf0..bcb06b5caa825 100644 --- a/expression/aggregation/first_row.go +++ b/expression/aggregation/first_row.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/max_min.go b/expression/aggregation/max_min.go index 1d5e2e1b82813..be25c7160a188 100644 --- a/expression/aggregation/max_min.go +++ b/expression/aggregation/max_min.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/sum.go b/expression/aggregation/sum.go index aeae368a0f7c9..9e0f6ab2a4c31 100644 --- a/expression/aggregation/sum.go +++ b/expression/aggregation/sum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/util.go b/expression/aggregation/util.go index a90003dec40f1..9bcd03c7b2f53 100644 --- a/expression/aggregation/util.go +++ b/expression/aggregation/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/aggregation/window_func.go b/expression/aggregation/window_func.go index 64e412ad2149a..9bc85b70bdf3b 100644 --- a/expression/aggregation/window_func.go +++ b/expression/aggregation/window_func.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/bench_test.go b/expression/bench_test.go index 1d926fd6cb1e6..6046ffe8287b5 100644 --- a/expression/bench_test.go +++ b/expression/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin.go b/expression/builtin.go index 3625602eb8fea..444130c7a58ce 100644 --- a/expression/builtin.go +++ b/expression/builtin.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_arithmetic.go b/expression/builtin_arithmetic.go index 3a87e02581f60..d46ecd9e189a3 100644 --- a/expression/builtin_arithmetic.go +++ b/expression/builtin_arithmetic.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_arithmetic_test.go b/expression/builtin_arithmetic_test.go index 0086b1ae2806c..38dd8ebdce433 100644 --- a/expression/builtin_arithmetic_test.go +++ b/expression/builtin_arithmetic_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_arithmetic_vec.go b/expression/builtin_arithmetic_vec.go index 967aa70b88ec5..12eb0bb1a63dd 100644 --- a/expression/builtin_arithmetic_vec.go +++ b/expression/builtin_arithmetic_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_arithmetic_vec_test.go b/expression/builtin_arithmetic_vec_test.go index 25d372112efe4..9682e6f6b2f5f 100644 --- a/expression/builtin_arithmetic_vec_test.go +++ b/expression/builtin_arithmetic_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_cast.go b/expression/builtin_cast.go index 4ce886c64e116..5330e4e199363 100644 --- a/expression/builtin_cast.go +++ b/expression/builtin_cast.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_cast_bench_test.go b/expression/builtin_cast_bench_test.go index 70ed8702ab79a..4acdbb404c0be 100644 --- a/expression/builtin_cast_bench_test.go +++ b/expression/builtin_cast_bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_cast_test.go b/expression/builtin_cast_test.go index 57bdeed1afaec..d46449bddc675 100644 --- a/expression/builtin_cast_test.go +++ b/expression/builtin_cast_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_cast_vec.go b/expression/builtin_cast_vec.go index 87e3115ce6606..219501bd75055 100644 --- a/expression/builtin_cast_vec.go +++ b/expression/builtin_cast_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_cast_vec_test.go b/expression/builtin_cast_vec_test.go index 4cbcfd9aa1a1b..a5759620da316 100644 --- a/expression/builtin_cast_vec_test.go +++ b/expression/builtin_cast_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_compare.go b/expression/builtin_compare.go index f0dec95b51fc1..5903126371b43 100644 --- a/expression/builtin_compare.go +++ b/expression/builtin_compare.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_compare_test.go b/expression/builtin_compare_test.go index 9d11d8b5ad18a..db8a08d5e4919 100644 --- a/expression/builtin_compare_test.go +++ b/expression/builtin_compare_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_compare_vec.go b/expression/builtin_compare_vec.go index 2c0dd19a65228..d620565b39f43 100644 --- a/expression/builtin_compare_vec.go +++ b/expression/builtin_compare_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_compare_vec_generated.go b/expression/builtin_compare_vec_generated.go index c7410919a8c1e..e9615296b24c1 100644 --- a/expression/builtin_compare_vec_generated.go +++ b/expression/builtin_compare_vec_generated.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_compare_vec_generated_test.go b/expression/builtin_compare_vec_generated_test.go index 0d40a6c4dbd86..053d865a1fa85 100644 --- a/expression/builtin_compare_vec_generated_test.go +++ b/expression/builtin_compare_vec_generated_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_compare_vec_test.go b/expression/builtin_compare_vec_test.go index 27f10fae05c60..5e37007d23f69 100644 --- a/expression/builtin_compare_vec_test.go +++ b/expression/builtin_compare_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_control.go b/expression/builtin_control.go index e40311eb614a5..ecaaa51b86354 100644 --- a/expression/builtin_control.go +++ b/expression/builtin_control.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_control_test.go b/expression/builtin_control_test.go index 7f6e35aaa8626..b696d79dc2020 100644 --- a/expression/builtin_control_test.go +++ b/expression/builtin_control_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_control_vec_generated.go b/expression/builtin_control_vec_generated.go index 775a1b2283453..8766dedbfa569 100644 --- a/expression/builtin_control_vec_generated.go +++ b/expression/builtin_control_vec_generated.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_control_vec_generated_test.go b/expression/builtin_control_vec_generated_test.go index 74b77b504b46a..c584ed27d73df 100644 --- a/expression/builtin_control_vec_generated_test.go +++ b/expression/builtin_control_vec_generated_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_encryption.go b/expression/builtin_encryption.go index e8a62a2dfb4d3..1bf63b7badc30 100644 --- a/expression/builtin_encryption.go +++ b/expression/builtin_encryption.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_encryption_test.go b/expression/builtin_encryption_test.go index 1bffb5f0177bd..9d63b6bd99aa8 100644 --- a/expression/builtin_encryption_test.go +++ b/expression/builtin_encryption_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_encryption_vec.go b/expression/builtin_encryption_vec.go index 61d297f681302..e314816f61d5e 100644 --- a/expression/builtin_encryption_vec.go +++ b/expression/builtin_encryption_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_encryption_vec_test.go b/expression/builtin_encryption_vec_test.go index 8f7dbc5be2fc0..34c8bc39a98bb 100644 --- a/expression/builtin_encryption_vec_test.go +++ b/expression/builtin_encryption_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_info.go b/expression/builtin_info.go index 381869098b35a..f81ead486eae4 100644 --- a/expression/builtin_info.go +++ b/expression/builtin_info.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_info_test.go b/expression/builtin_info_test.go index 3784cb95aaa34..3ab8347d6ecb1 100644 --- a/expression/builtin_info_test.go +++ b/expression/builtin_info_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_info_vec.go b/expression/builtin_info_vec.go index 7b98d44098052..d96feb873a5cd 100644 --- a/expression/builtin_info_vec.go +++ b/expression/builtin_info_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_info_vec_test.go b/expression/builtin_info_vec_test.go index 474d1c80d9320..4606139044798 100644 --- a/expression/builtin_info_vec_test.go +++ b/expression/builtin_info_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_json.go b/expression/builtin_json.go index 089b2d71a3ec8..73c047f8e9a56 100644 --- a/expression/builtin_json.go +++ b/expression/builtin_json.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_json_test.go b/expression/builtin_json_test.go index 0a9c2e9922724..3fc91fc1893c3 100644 --- a/expression/builtin_json_test.go +++ b/expression/builtin_json_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_json_vec.go b/expression/builtin_json_vec.go index 107a7d63cb133..281ad88f9efdc 100644 --- a/expression/builtin_json_vec.go +++ b/expression/builtin_json_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_json_vec_test.go b/expression/builtin_json_vec_test.go index cfbb039b65cc2..4f3db7b526c2f 100644 --- a/expression/builtin_json_vec_test.go +++ b/expression/builtin_json_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_like.go b/expression/builtin_like.go index 5700e69a8d807..ad60d05a06b74 100644 --- a/expression/builtin_like.go +++ b/expression/builtin_like.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_like_test.go b/expression/builtin_like_test.go index 1a9cd26121e9e..d8be70e87e342 100644 --- a/expression/builtin_like_test.go +++ b/expression/builtin_like_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_like_vec.go b/expression/builtin_like_vec.go index ebdd072e8eee4..f5ba0090b61b2 100644 --- a/expression/builtin_like_vec.go +++ b/expression/builtin_like_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_like_vec_test.go b/expression/builtin_like_vec_test.go index a902253573de3..964b63c4a278d 100644 --- a/expression/builtin_like_vec_test.go +++ b/expression/builtin_like_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_math.go b/expression/builtin_math.go index c2a33c4fd86f6..7891c30e69fc2 100644 --- a/expression/builtin_math.go +++ b/expression/builtin_math.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_math_test.go b/expression/builtin_math_test.go index a19bb7048f10c..cd5983170bceb 100644 --- a/expression/builtin_math_test.go +++ b/expression/builtin_math_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_math_vec.go b/expression/builtin_math_vec.go index 4896f5716800f..0835a8ad2aad8 100644 --- a/expression/builtin_math_vec.go +++ b/expression/builtin_math_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_math_vec_test.go b/expression/builtin_math_vec_test.go index 5c9f8aa4dd010..f6c60f473bb7f 100644 --- a/expression/builtin_math_vec_test.go +++ b/expression/builtin_math_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_miscellaneous.go b/expression/builtin_miscellaneous.go index c73299211b7a9..bced141c09a59 100644 --- a/expression/builtin_miscellaneous.go +++ b/expression/builtin_miscellaneous.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_miscellaneous_test.go b/expression/builtin_miscellaneous_test.go index 6fc25f6d563b8..65cba1bb43016 100644 --- a/expression/builtin_miscellaneous_test.go +++ b/expression/builtin_miscellaneous_test.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_miscellaneous_vec.go b/expression/builtin_miscellaneous_vec.go index 9da9a14375713..4ffad69ad8660 100644 --- a/expression/builtin_miscellaneous_vec.go +++ b/expression/builtin_miscellaneous_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_miscellaneous_vec_test.go b/expression/builtin_miscellaneous_vec_test.go index 4644811458681..ca85f95481c03 100644 --- a/expression/builtin_miscellaneous_vec_test.go +++ b/expression/builtin_miscellaneous_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_op.go b/expression/builtin_op.go index 591411a73ed1a..807905a092ebe 100644 --- a/expression/builtin_op.go +++ b/expression/builtin_op.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_op_test.go b/expression/builtin_op_test.go index cc87e0cbef863..ced34f6a8f2b7 100644 --- a/expression/builtin_op_test.go +++ b/expression/builtin_op_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_op_vec.go b/expression/builtin_op_vec.go index 6bbe39cb80ff3..6ce308fe421a9 100644 --- a/expression/builtin_op_vec.go +++ b/expression/builtin_op_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_op_vec_test.go b/expression/builtin_op_vec_test.go index 78f84e53a1253..0d273b8f05844 100644 --- a/expression/builtin_op_vec_test.go +++ b/expression/builtin_op_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_other.go b/expression/builtin_other.go index 0f352543181a2..dd821e91d25ec 100644 --- a/expression/builtin_other.go +++ b/expression/builtin_other.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_other_test.go b/expression/builtin_other_test.go index 2f504ef29fdf1..2ec41a5835896 100644 --- a/expression/builtin_other_test.go +++ b/expression/builtin_other_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_other_vec.go b/expression/builtin_other_vec.go index 61a3e1e391f09..f2019651f3934 100644 --- a/expression/builtin_other_vec.go +++ b/expression/builtin_other_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_other_vec_generated.go b/expression/builtin_other_vec_generated.go index ae6e52a5c7805..36712ed7a5018 100644 --- a/expression/builtin_other_vec_generated.go +++ b/expression/builtin_other_vec_generated.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_other_vec_generated_test.go b/expression/builtin_other_vec_generated_test.go index 121c95998d7d7..58c5ba486fd79 100644 --- a/expression/builtin_other_vec_generated_test.go +++ b/expression/builtin_other_vec_generated_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_other_vec_test.go b/expression/builtin_other_vec_test.go index b042de216115d..a3db2407209d1 100644 --- a/expression/builtin_other_vec_test.go +++ b/expression/builtin_other_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_regexp_vec_const_test.go b/expression/builtin_regexp_vec_const_test.go index cf01dc4d1894e..df4729310db6c 100644 --- a/expression/builtin_regexp_vec_const_test.go +++ b/expression/builtin_regexp_vec_const_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_string.go b/expression/builtin_string.go index 304939829a9da..46108b9c715b2 100644 --- a/expression/builtin_string.go +++ b/expression/builtin_string.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_string_test.go b/expression/builtin_string_test.go index 185cfa0d90b9e..559e5c88cc452 100644 --- a/expression/builtin_string_test.go +++ b/expression/builtin_string_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_string_vec.go b/expression/builtin_string_vec.go index f07a10c28b230..95cff31bd5fc5 100644 --- a/expression/builtin_string_vec.go +++ b/expression/builtin_string_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_string_vec_generated.go b/expression/builtin_string_vec_generated.go index 9d0ce5eb1c9b5..8c016c04dc123 100644 --- a/expression/builtin_string_vec_generated.go +++ b/expression/builtin_string_vec_generated.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_string_vec_generated_test.go b/expression/builtin_string_vec_generated_test.go index a3e1603c0c364..2cb82e860ff7e 100644 --- a/expression/builtin_string_vec_generated_test.go +++ b/expression/builtin_string_vec_generated_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_string_vec_test.go b/expression/builtin_string_vec_test.go index 870bd31609198..2c32911759cb0 100644 --- a/expression/builtin_string_vec_test.go +++ b/expression/builtin_string_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_test.go b/expression/builtin_test.go index 9f5a0f5c2018a..5f8bee25fd56d 100644 --- a/expression/builtin_test.go +++ b/expression/builtin_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_time.go b/expression/builtin_time.go index 445d623f17579..d1da8382f164f 100644 --- a/expression/builtin_time.go +++ b/expression/builtin_time.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_time_test.go b/expression/builtin_time_test.go index b8ef7f9d4a36e..a4ac49a5c6817 100644 --- a/expression/builtin_time_test.go +++ b/expression/builtin_time_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_time_vec.go b/expression/builtin_time_vec.go index 5ec12d5039d77..6d4d68ef2d53b 100644 --- a/expression/builtin_time_vec.go +++ b/expression/builtin_time_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_time_vec_generated.go b/expression/builtin_time_vec_generated.go index 535c54b9138b6..7f245095cc264 100644 --- a/expression/builtin_time_vec_generated.go +++ b/expression/builtin_time_vec_generated.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_time_vec_generated_test.go b/expression/builtin_time_vec_generated_test.go index 9d35c8a84c348..c39b8b3803964 100644 --- a/expression/builtin_time_vec_generated_test.go +++ b/expression/builtin_time_vec_generated_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_time_vec_test.go b/expression/builtin_time_vec_test.go index 389c257460e1b..da0164c6930b2 100644 --- a/expression/builtin_time_vec_test.go +++ b/expression/builtin_time_vec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_vectorized.go b/expression/builtin_vectorized.go index e59b95d3056c2..d40d068abe00b 100644 --- a/expression/builtin_vectorized.go +++ b/expression/builtin_vectorized.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/builtin_vectorized_test.go b/expression/builtin_vectorized_test.go index 11b9b1ff77c10..3b0fe67f720e0 100644 --- a/expression/builtin_vectorized_test.go +++ b/expression/builtin_vectorized_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/chunk_executor.go b/expression/chunk_executor.go index f99002bd499b0..9d1fec03b555b 100644 --- a/expression/chunk_executor.go +++ b/expression/chunk_executor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/collation.go b/expression/collation.go index 3d187143fe000..988cfb519712d 100644 --- a/expression/collation.go +++ b/expression/collation.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/collation_test.go b/expression/collation_test.go index 698528baadce4..7fec323e396bd 100644 --- a/expression/collation_test.go +++ b/expression/collation_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/column.go b/expression/column.go index 15b137c88f24c..2cdc78c29e3e7 100644 --- a/expression/column.go +++ b/expression/column.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/column_test.go b/expression/column_test.go index 41f5bdbe16349..c35208e5eea6d 100644 --- a/expression/column_test.go +++ b/expression/column_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/constant.go b/expression/constant.go index 4b76900213403..cee826d2b99cc 100644 --- a/expression/constant.go +++ b/expression/constant.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/constant_fold.go b/expression/constant_fold.go index c698d4a0a9536..7293134fa5bc1 100644 --- a/expression/constant_fold.go +++ b/expression/constant_fold.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/constant_fold_test.go b/expression/constant_fold_test.go index 7270595295920..cbdd966804bfa 100644 --- a/expression/constant_fold_test.go +++ b/expression/constant_fold_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/constant_propagation.go b/expression/constant_propagation.go index 1c691b6800538..222611639e40a 100644 --- a/expression/constant_propagation.go +++ b/expression/constant_propagation.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/constant_propagation_test.go b/expression/constant_propagation_test.go index 7419203ddb5e4..56c6a89351943 100644 --- a/expression/constant_propagation_test.go +++ b/expression/constant_propagation_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/constant_test.go b/expression/constant_test.go index 5bf9ced9fa40f..ab08091339424 100644 --- a/expression/constant_test.go +++ b/expression/constant_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/distsql_builtin.go b/expression/distsql_builtin.go index 7fd61b30fa3fa..a56cae7be8505 100644 --- a/expression/distsql_builtin.go +++ b/expression/distsql_builtin.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/distsql_builtin_test.go b/expression/distsql_builtin_test.go index 7cad3e354605e..b1cb54bf54d04 100644 --- a/expression/distsql_builtin_test.go +++ b/expression/distsql_builtin_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/errors.go b/expression/errors.go index b4905b1e9b1f5..69da58efea6b5 100644 --- a/expression/errors.go +++ b/expression/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/evaluator.go b/expression/evaluator.go index bc2a5cb0924a2..d8cf7bdfed2e3 100644 --- a/expression/evaluator.go +++ b/expression/evaluator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/evaluator_test.go b/expression/evaluator_test.go index 58f498a4b3f86..a4d3f2b8c3705 100644 --- a/expression/evaluator_test.go +++ b/expression/evaluator_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/explain.go b/expression/explain.go index c1f80571ea871..a25d53ccbd339 100644 --- a/expression/explain.go +++ b/expression/explain.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/expr_to_pb.go b/expression/expr_to_pb.go index dc031145d0d95..0117f57ea4158 100644 --- a/expression/expr_to_pb.go +++ b/expression/expr_to_pb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/expr_to_pb_test.go b/expression/expr_to_pb_test.go index 6b548bc733bbf..ecf607b8f21ed 100644 --- a/expression/expr_to_pb_test.go +++ b/expression/expr_to_pb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/expression.go b/expression/expression.go index 353f7fea209cc..0b9e5817b6b24 100644 --- a/expression/expression.go +++ b/expression/expression.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/expression_test.go b/expression/expression_test.go index 40eed2c946207..6ec33a65040fd 100644 --- a/expression/expression_test.go +++ b/expression/expression_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/flag_simplify_test.go b/expression/flag_simplify_test.go index 0e9e579aa51dd..a9f23e19ea099 100644 --- a/expression/flag_simplify_test.go +++ b/expression/flag_simplify_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/function_traits.go b/expression/function_traits.go index 7bf2730a6f360..877dec805086a 100644 --- a/expression/function_traits.go +++ b/expression/function_traits.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/function_traits_test.go b/expression/function_traits_test.go index e9919de19d2b6..23a60a8fb9e52 100644 --- a/expression/function_traits_test.go +++ b/expression/function_traits_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/generator/compare_vec.go b/expression/generator/compare_vec.go index 49302a542a3bf..f57ccac84b9b3 100644 --- a/expression/generator/compare_vec.go +++ b/expression/generator/compare_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -37,6 +38,7 @@ const header = `// Copyright 2019 PingCAP, Inc. // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -171,7 +173,7 @@ func (b *builtin{{ .compare.CompareName }}{{ .type.TypeName }}Sig) vectorized() `)) var builtinCoalesceCompareVecTpl = template.Must(template.New("").Parse(` -// NOTE: Coalesce just return the first non-null item, but vectorization do each item, which would incur additional errors. If this case happen, +// NOTE: Coalesce just return the first non-null item, but vectorization do each item, which would incur additional errors. If this case happen, // the vectorization falls back to the scalar execution. func (b *builtin{{ .compare.CompareName }}{{ .type.TypeName }}Sig) fallbackEval{{ .type.TypeName }}(input *chunk.Chunk, result *chunk.Column) error { n := input.NumRows() diff --git a/expression/generator/control_vec.go b/expression/generator/control_vec.go index 6f7c158e9ea75..64444b243570d 100644 --- a/expression/generator/control_vec.go +++ b/expression/generator/control_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -36,6 +37,7 @@ const header = `// Copyright 2019 PingCAP, Inc. // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -51,7 +53,7 @@ import ( ) // NOTE: Control expressions optionally evaluate some branches depending on conditions, but vectorization executes all -// branches, during which the unnecessary branches may return errors or warnings. To avoid this case, when branches +// branches, during which the unnecessary branches may return errors or warnings. To avoid this case, when branches // meet errors or warnings, the vectorization falls back the scalar execution. ` @@ -168,13 +170,13 @@ func (b *builtinCaseWhen{{ .TypeName }}Sig) vecEval{{ .TypeName }}(input *chunk. eLseSlice = bufElse.{{ .TypeNameInColumn }}s() {{- end }} } - + {{- if .Fixed }} result.Resize{{ .TypeNameInColumn }}(n, false) resultSlice := result.{{ .TypeNameInColumn }}s() {{- else }} result.Reserve{{ .TypeNameInColumn }}(n) - {{- end }} + {{- end }} ROW: for i := 0; i < n; i++ { for j := 0; j < l/2; j++ { @@ -202,7 +204,7 @@ ROW: result.AppendNull() } else { result.Append{{ .TypeNameInColumn }}(eLse.Get{{ .TypeNameInColumn }}(i)) - } + } {{- end }} } else { {{- if .Fixed }} @@ -406,7 +408,7 @@ func (b *builtinIf{{ .TypeName }}Sig) vecEval{{ .TypeName }}(input *chunk.Chunk, } return b.fallbackEval{{ .TypeName }}(input, result) } - + buf2, err := b.bufAllocator.get() if err != nil { return err @@ -478,6 +480,7 @@ var testFile = template.Must(template.New("testFile").Parse(`// Copyright 2019 P // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/generator/helper/helper.go b/expression/generator/helper/helper.go index a70aca043a18f..fa76c9869f8a7 100644 --- a/expression/generator/helper/helper.go +++ b/expression/generator/helper/helper.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/generator/other_vec.go b/expression/generator/other_vec.go index 278b48ee4d2d7..40910774b9c0a 100644 --- a/expression/generator/other_vec.go +++ b/expression/generator/other_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -36,6 +37,7 @@ const header = `// Copyright 2019 PingCAP, Inc. // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -265,6 +267,7 @@ var testFile = template.Must(template.New("").Parse(`// Copyright 2019 PingCAP, // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/generator/string_vec.go b/expression/generator/string_vec.go index 7959fb5e554f9..df8b9a1c09ff9 100644 --- a/expression/generator/string_vec.go +++ b/expression/generator/string_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -37,6 +38,7 @@ const header = `// Copyright 2021 PingCAP, Inc. // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/generator/time_vec.go b/expression/generator/time_vec.go index bb6b4c5fd2be4..77928bf4f0339 100644 --- a/expression/generator/time_vec.go +++ b/expression/generator/time_vec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -38,6 +39,7 @@ var addOrSubTime = template.Must(template.New("").Parse(` // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -646,6 +648,7 @@ var testFile = template.Must(template.New("").Funcs(testFileFuncs).Parse(` // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/helper.go b/expression/helper.go index d9f1e22610b62..962a48bb49ea5 100644 --- a/expression/helper.go +++ b/expression/helper.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/helper_test.go b/expression/helper_test.go index 2e23e750bbbb2..31d7ebc4468ad 100644 --- a/expression/helper_test.go +++ b/expression/helper_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/integration_test.go b/expression/integration_test.go index ccda15a361e39..ddc528d4a45ad 100644 --- a/expression/integration_test.go +++ b/expression/integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/partition_pruner.go b/expression/partition_pruner.go index b3531b27d0508..16a2dfb777777 100644 --- a/expression/partition_pruner.go +++ b/expression/partition_pruner.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/rand.go b/expression/rand.go index 39a804982cd52..f33331374f197 100644 --- a/expression/rand.go +++ b/expression/rand.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/rand_test.go b/expression/rand_test.go index ea09d7881ecfd..2d5d7bd16a681 100644 --- a/expression/rand_test.go +++ b/expression/rand_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/scalar_function.go b/expression/scalar_function.go index ddec6e9e3e7dc..630c9e43a8eba 100644 --- a/expression/scalar_function.go +++ b/expression/scalar_function.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/scalar_function_test.go b/expression/scalar_function_test.go index c5f52e3309532..6d748141d81b8 100644 --- a/expression/scalar_function_test.go +++ b/expression/scalar_function_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/schema.go b/expression/schema.go index f8ea2af063e9c..ffef53f70de7a 100644 --- a/expression/schema.go +++ b/expression/schema.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/schema_test.go b/expression/schema_test.go index 8003760711d2c..3bbec67c10b50 100644 --- a/expression/schema_test.go +++ b/expression/schema_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/simple_rewriter.go b/expression/simple_rewriter.go index e0e9f41fd1bbf..46486576b9117 100644 --- a/expression/simple_rewriter.go +++ b/expression/simple_rewriter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/typeinfer_test.go b/expression/typeinfer_test.go index e0324123bbaae..335fa4b1aaa25 100644 --- a/expression/typeinfer_test.go +++ b/expression/typeinfer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/util.go b/expression/util.go index 9cb9c0cbe1961..18c027c966f60 100644 --- a/expression/util.go +++ b/expression/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/util_test.go b/expression/util_test.go index ed9ba8448b116..da57b33da88fa 100644 --- a/expression/util_test.go +++ b/expression/util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/expression/vectorized.go b/expression/vectorized.go index 6abf7773398b2..a6e7f04a84d44 100644 --- a/expression/vectorized.go +++ b/expression/vectorized.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/builder.go b/infoschema/builder.go index 88e8b71add319..88847ba544c5a 100644 --- a/infoschema/builder.go +++ b/infoschema/builder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/cache.go b/infoschema/cache.go index d7c17f65716e3..1e2191e4699da 100644 --- a/infoschema/cache.go +++ b/infoschema/cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/cache_test.go b/infoschema/cache_test.go index 404ae5afcefbf..71263e0216001 100644 --- a/infoschema/cache_test.go +++ b/infoschema/cache_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/cluster.go b/infoschema/cluster.go index efa35c48420ae..c2449b91dd868 100644 --- a/infoschema/cluster.go +++ b/infoschema/cluster.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/error.go b/infoschema/error.go index cb49e48419dec..b9c0854bab051 100644 --- a/infoschema/error.go +++ b/infoschema/error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/infoschema.go b/infoschema/infoschema.go index 41b5b2c2f6e7c..e9131bff5d822 100644 --- a/infoschema/infoschema.go +++ b/infoschema/infoschema.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/infoschema_test.go b/infoschema/infoschema_test.go index 06eee146d438e..746053d697685 100644 --- a/infoschema/infoschema_test.go +++ b/infoschema/infoschema_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/metric_table_def.go b/infoschema/metric_table_def.go index f971e8b225ff3..b27217a316c03 100644 --- a/infoschema/metric_table_def.go +++ b/infoschema/metric_table_def.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/metrics_schema.go b/infoschema/metrics_schema.go index 3b4654f90f7f2..244e87076d52c 100644 --- a/infoschema/metrics_schema.go +++ b/infoschema/metrics_schema.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/metrics_schema_test.go b/infoschema/metrics_schema_test.go index 1ef567e2d3da4..29b0a0e6fb3fb 100644 --- a/infoschema/metrics_schema_test.go +++ b/infoschema/metrics_schema_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/perfschema/const.go b/infoschema/perfschema/const.go index 157ce4c7ae7c9..13ab10a699eeb 100644 --- a/infoschema/perfschema/const.go +++ b/infoschema/perfschema/const.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/perfschema/init.go b/infoschema/perfschema/init.go index 465cf83a54635..3fb01504c79aa 100644 --- a/infoschema/perfschema/init.go +++ b/infoschema/perfschema/init.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/perfschema/main_test.go b/infoschema/perfschema/main_test.go index 3336bddfec172..068cebc3f3cb0 100644 --- a/infoschema/perfschema/main_test.go +++ b/infoschema/perfschema/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/perfschema/tables.go b/infoschema/perfschema/tables.go index 76c76f2c3cb33..acbe5b8103211 100644 --- a/infoschema/perfschema/tables.go +++ b/infoschema/perfschema/tables.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/perfschema/tables_test.go b/infoschema/perfschema/tables_test.go index d2d819d2a6e87..8a0d0f9db2952 100644 --- a/infoschema/perfschema/tables_test.go +++ b/infoschema/perfschema/tables_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/tables.go b/infoschema/tables.go index 140a1d15446c7..5e92704f6c703 100644 --- a/infoschema/tables.go +++ b/infoschema/tables.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/infoschema/tables_test.go b/infoschema/tables_test.go index 2033786541f30..ca10d6214ac5e 100644 --- a/infoschema/tables_test.go +++ b/infoschema/tables_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/cachedb.go b/kv/cachedb.go index c5ca2ded60b8e..4586e6e6db5a5 100644 --- a/kv/cachedb.go +++ b/kv/cachedb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/checker.go b/kv/checker.go index 6312e6e0e5ddd..071b8463b5258 100644 --- a/kv/checker.go +++ b/kv/checker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/checker_test.go b/kv/checker_test.go index 91a6bc92a5ca3..3143bd36ecfcd 100644 --- a/kv/checker_test.go +++ b/kv/checker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/error.go b/kv/error.go index 7a2b469bc1bf7..7032ea7f01f5a 100644 --- a/kv/error.go +++ b/kv/error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/error_test.go b/kv/error_test.go index d58d3115b98a3..6ad773bfe213d 100644 --- a/kv/error_test.go +++ b/kv/error_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/fault_injection.go b/kv/fault_injection.go index 83341562b4348..af875d39ea1b6 100644 --- a/kv/fault_injection.go +++ b/kv/fault_injection.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/fault_injection_test.go b/kv/fault_injection_test.go index 294d485f2c935..689b1015faac5 100644 --- a/kv/fault_injection_test.go +++ b/kv/fault_injection_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/interface_mock_test.go b/kv/interface_mock_test.go index f91eb103e6a5b..9429d678d54be 100644 --- a/kv/interface_mock_test.go +++ b/kv/interface_mock_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/iter.go b/kv/iter.go index 6cfb4008fac8d..13bf851b06117 100644 --- a/kv/iter.go +++ b/kv/iter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/key.go b/kv/key.go index baa6b4885b515..f8d37244b9062 100644 --- a/kv/key.go +++ b/kv/key.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/key_test.go b/kv/key_test.go index fcbb28b7f2ffa..af4b6b58f1725 100644 --- a/kv/key_test.go +++ b/kv/key_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/keyflags.go b/kv/keyflags.go index 8e721061409d1..66f94380c7a50 100644 --- a/kv/keyflags.go +++ b/kv/keyflags.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/kv.go b/kv/kv.go index 29d3e0fa73f5b..11fe882f38c7a 100644 --- a/kv/kv.go +++ b/kv/kv.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/main_test.go b/kv/main_test.go index be16515b4e8ae..e87d9dd2a9916 100644 --- a/kv/main_test.go +++ b/kv/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/mock_test.go b/kv/mock_test.go index da51782511849..e3e7d7e095edf 100644 --- a/kv/mock_test.go +++ b/kv/mock_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/mpp.go b/kv/mpp.go index c3965831ae05b..4e3f70532c9d2 100644 --- a/kv/mpp.go +++ b/kv/mpp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/option.go b/kv/option.go index 6b1e830e12984..5e5a806136c09 100644 --- a/kv/option.go +++ b/kv/option.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/txn.go b/kv/txn.go index 1b8ab34904300..27884cdd19fa3 100644 --- a/kv/txn.go +++ b/kv/txn.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/txn_scope_var.go b/kv/txn_scope_var.go index c2a24a29c2bb3..9e9b6f76f452a 100644 --- a/kv/txn_scope_var.go +++ b/kv/txn_scope_var.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/txn_test.go b/kv/txn_test.go index 4a742951346b2..b57dfab4dff74 100644 --- a/kv/txn_test.go +++ b/kv/txn_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/utils.go b/kv/utils.go index d738e6b07dd5a..36a313246ea91 100644 --- a/kv/utils.go +++ b/kv/utils.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/utils_test.go b/kv/utils_test.go index 80c801d7bbb99..bd7689026c18a 100644 --- a/kv/utils_test.go +++ b/kv/utils_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/variables.go b/kv/variables.go index b4042fb5886cf..f0c5b4726820b 100644 --- a/kv/variables.go +++ b/kv/variables.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/version.go b/kv/version.go index f009215863e88..137b47d32995a 100644 --- a/kv/version.go +++ b/kv/version.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/kv/version_test.go b/kv/version_test.go index cd4aeb7c50205..ebea2f4aa8422 100644 --- a/kv/version_test.go +++ b/kv/version_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/lock/lock.go b/lock/lock.go index ecfc8093a5243..a3301435c305c 100644 --- a/lock/lock.go +++ b/lock/lock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/autoid.go b/meta/autoid/autoid.go index cf61beaff9781..b080d35e344a2 100644 --- a/meta/autoid/autoid.go +++ b/meta/autoid/autoid.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/autoid_test.go b/meta/autoid/autoid_test.go index 649855211f094..1b92726abb8ff 100644 --- a/meta/autoid/autoid_test.go +++ b/meta/autoid/autoid_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/bench_test.go b/meta/autoid/bench_test.go index 9cc8fbfdf1d8e..24c71870399b7 100644 --- a/meta/autoid/bench_test.go +++ b/meta/autoid/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/errors.go b/meta/autoid/errors.go index 777de466b7704..90d9fcc6a310e 100644 --- a/meta/autoid/errors.go +++ b/meta/autoid/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/main_test.go b/meta/autoid/main_test.go index e2d58f1ced7d7..a5e8e915db0db 100644 --- a/meta/autoid/main_test.go +++ b/meta/autoid/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/memid.go b/meta/autoid/memid.go index 39db68e3bc33d..597a564bef2d8 100644 --- a/meta/autoid/memid.go +++ b/meta/autoid/memid.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/memid_test.go b/meta/autoid/memid_test.go index 7b71534e80575..700bfc5fd5a23 100644 --- a/meta/autoid/memid_test.go +++ b/meta/autoid/memid_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/autoid/seq_autoid_test.go b/meta/autoid/seq_autoid_test.go index 8c2a1baa846b9..8cef4d21a171f 100644 --- a/meta/autoid/seq_autoid_test.go +++ b/meta/autoid/seq_autoid_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/main_test.go b/meta/main_test.go index e6f34f4df31da..858d4bbb6f6e6 100644 --- a/meta/main_test.go +++ b/meta/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/meta.go b/meta/meta.go index e52bc41290b68..e222cc126ddd3 100644 --- a/meta/meta.go +++ b/meta/meta.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/meta/meta_test.go b/meta/meta_test.go index 341b15981188e..15cf516eeaa81 100644 --- a/meta/meta_test.go +++ b/meta/meta_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/bindinfo.go b/metrics/bindinfo.go index 2b5da872811d7..47722b1502322 100644 --- a/metrics/bindinfo.go +++ b/metrics/bindinfo.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/ddl.go b/metrics/ddl.go index c92a8f72379fb..47e043519c9c5 100644 --- a/metrics/ddl.go +++ b/metrics/ddl.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/distsql.go b/metrics/distsql.go index 9eef1c62f0310..9bec9d7646827 100644 --- a/metrics/distsql.go +++ b/metrics/distsql.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/domain.go b/metrics/domain.go index 3bc9782afe420..ab6d9df5ae0d8 100644 --- a/metrics/domain.go +++ b/metrics/domain.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/executor.go b/metrics/executor.go index 57b6d2afdabcf..6702832ebe9ac 100644 --- a/metrics/executor.go +++ b/metrics/executor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/gc_worker.go b/metrics/gc_worker.go index 6ca39f6901eb2..ad20286d5817d 100644 --- a/metrics/gc_worker.go +++ b/metrics/gc_worker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/main_test.go b/metrics/main_test.go index 1ee572d5dd914..2e27c2eec0544 100644 --- a/metrics/main_test.go +++ b/metrics/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/meta.go b/metrics/meta.go index b4135c330caef..519ba6a0924a1 100644 --- a/metrics/meta.go +++ b/metrics/meta.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/metrics.go b/metrics/metrics.go index ebf70459224b7..772663f530575 100644 --- a/metrics/metrics.go +++ b/metrics/metrics.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/metrics_test.go b/metrics/metrics_test.go index 95944fe0ddbb1..eb6aefdaf3fa0 100644 --- a/metrics/metrics_test.go +++ b/metrics/metrics_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/owner.go b/metrics/owner.go index 595fce11b42a8..7f00b5816db92 100644 --- a/metrics/owner.go +++ b/metrics/owner.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/server.go b/metrics/server.go index f83c7afee2732..860127b1321b0 100644 --- a/metrics/server.go +++ b/metrics/server.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/session.go b/metrics/session.go index 500dd17981efa..0058104788f21 100644 --- a/metrics/session.go +++ b/metrics/session.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/sli.go b/metrics/sli.go index 2e926de099997..381be0208957c 100644 --- a/metrics/sli.go +++ b/metrics/sli.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/stats.go b/metrics/stats.go index a37bb08232bb2..a3347dd597716 100644 --- a/metrics/stats.go +++ b/metrics/stats.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/metrics/telemetry.go b/metrics/telemetry.go index 054001f1a7c48..7db666d8dc737 100644 --- a/metrics/telemetry.go +++ b/metrics/telemetry.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/owner/fail_test.go b/owner/fail_test.go index 4ce291af10cbb..bf8f10565c9e7 100644 --- a/owner/fail_test.go +++ b/owner/fail_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/owner/main_test.go b/owner/main_test.go index ab9498a86833c..ba940ab9a3d5d 100644 --- a/owner/main_test.go +++ b/owner/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/owner/manager.go b/owner/manager.go index 4bf8508434d6a..d0773728da25b 100644 --- a/owner/manager.go +++ b/owner/manager.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/owner/manager_test.go b/owner/manager_test.go index 9f923437ea73f..4059310fb0c93 100644 --- a/owner/manager_test.go +++ b/owner/manager_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/owner/mock.go b/owner/mock.go index 0e4435eaf881f..622ca2b632d6c 100644 --- a/owner/mock.go +++ b/owner/mock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/enforcer_rules.go b/planner/cascades/enforcer_rules.go index 5d80845769c5e..87908ae1a1063 100644 --- a/planner/cascades/enforcer_rules.go +++ b/planner/cascades/enforcer_rules.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/enforcer_rules_test.go b/planner/cascades/enforcer_rules_test.go index adfdba887b51d..8c8fae1d6da73 100644 --- a/planner/cascades/enforcer_rules_test.go +++ b/planner/cascades/enforcer_rules_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/implementation_rules.go b/planner/cascades/implementation_rules.go index 3b4c07b685902..b686d17d72469 100644 --- a/planner/cascades/implementation_rules.go +++ b/planner/cascades/implementation_rules.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/integration_test.go b/planner/cascades/integration_test.go index 78a9d4aacc111..d09b23acabf76 100644 --- a/planner/cascades/integration_test.go +++ b/planner/cascades/integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/optimize.go b/planner/cascades/optimize.go index 8e9ea74dba72d..0d1a0969d7568 100644 --- a/planner/cascades/optimize.go +++ b/planner/cascades/optimize.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/optimize_test.go b/planner/cascades/optimize_test.go index 3fbceccf3feee..d040a374065be 100644 --- a/planner/cascades/optimize_test.go +++ b/planner/cascades/optimize_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/stringer.go b/planner/cascades/stringer.go index 5a78c0274963f..5bf84a7047422 100644 --- a/planner/cascades/stringer.go +++ b/planner/cascades/stringer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/stringer_test.go b/planner/cascades/stringer_test.go index c9a64772d8145..806754235b69f 100644 --- a/planner/cascades/stringer_test.go +++ b/planner/cascades/stringer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/transformation_rules.go b/planner/cascades/transformation_rules.go index 9961509299a52..fed1525f2ae85 100644 --- a/planner/cascades/transformation_rules.go +++ b/planner/cascades/transformation_rules.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/cascades/transformation_rules_test.go b/planner/cascades/transformation_rules_test.go index 2f3d0240cbcee..69f1c5dc3096c 100644 --- a/planner/cascades/transformation_rules_test.go +++ b/planner/cascades/transformation_rules_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/cache.go b/planner/core/cache.go index dd691ba80f86b..4f80a159b0728 100644 --- a/planner/core/cache.go +++ b/planner/core/cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/cache_test.go b/planner/core/cache_test.go index 262497e50a24e..2a9648a6357f5 100644 --- a/planner/core/cache_test.go +++ b/planner/core/cache_test.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/cacheable_checker.go b/planner/core/cacheable_checker.go index b78e02fa6a1fb..db2a6bce7970b 100644 --- a/planner/core/cacheable_checker.go +++ b/planner/core/cacheable_checker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/cacheable_checker_test.go b/planner/core/cacheable_checker_test.go index 7d6db5dd611d5..b0cd7e3da779e 100644 --- a/planner/core/cacheable_checker_test.go +++ b/planner/core/cacheable_checker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/cbo_test.go b/planner/core/cbo_test.go index d7aa29b17155d..a3cf245b19885 100644 --- a/planner/core/cbo_test.go +++ b/planner/core/cbo_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/common_plans.go b/planner/core/common_plans.go index e7efa7db28665..afda92d2a0849 100644 --- a/planner/core/common_plans.go +++ b/planner/core/common_plans.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/encode.go b/planner/core/encode.go index 985f05869b518..443f0f8f55ec0 100644 --- a/planner/core/encode.go +++ b/planner/core/encode.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/enforce_mpp_test.go b/planner/core/enforce_mpp_test.go index 6036ae7dbc1c7..d20615b75d8fa 100644 --- a/planner/core/enforce_mpp_test.go +++ b/planner/core/enforce_mpp_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/errors.go b/planner/core/errors.go index 2ddb1b5552d30..3b9668289dc12 100644 --- a/planner/core/errors.go +++ b/planner/core/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/errors_test.go b/planner/core/errors_test.go index 2f17297484fe4..7be4355956419 100644 --- a/planner/core/errors_test.go +++ b/planner/core/errors_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/exhaust_physical_plans.go b/planner/core/exhaust_physical_plans.go index ce56dfcf81a39..7d905c0720262 100644 --- a/planner/core/exhaust_physical_plans.go +++ b/planner/core/exhaust_physical_plans.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/exhaust_physical_plans_test.go b/planner/core/exhaust_physical_plans_test.go index ed7a47b87cece..7a9f7e7b16b5d 100644 --- a/planner/core/exhaust_physical_plans_test.go +++ b/planner/core/exhaust_physical_plans_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/explain.go b/planner/core/explain.go index 9ed849f19b796..03e6a6c50aa00 100644 --- a/planner/core/explain.go +++ b/planner/core/explain.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/expression_rewriter.go b/planner/core/expression_rewriter.go index f359e3f83c61e..1a3554c7a308e 100644 --- a/planner/core/expression_rewriter.go +++ b/planner/core/expression_rewriter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/expression_rewriter_test.go b/planner/core/expression_rewriter_test.go index 6e78d0773ac91..a622dc76272ae 100644 --- a/planner/core/expression_rewriter_test.go +++ b/planner/core/expression_rewriter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/expression_test.go b/planner/core/expression_test.go index 4461db382b47a..316b99143f7b4 100644 --- a/planner/core/expression_test.go +++ b/planner/core/expression_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/find_best_task.go b/planner/core/find_best_task.go index 32e9e13de01a9..9766c25cd8a13 100644 --- a/planner/core/find_best_task.go +++ b/planner/core/find_best_task.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/find_best_task_test.go b/planner/core/find_best_task_test.go index c744282db0c45..2c9170a182a68 100644 --- a/planner/core/find_best_task_test.go +++ b/planner/core/find_best_task_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/fragment.go b/planner/core/fragment.go index 8adcbf127ff26..ee9495c5b88c3 100644 --- a/planner/core/fragment.go +++ b/planner/core/fragment.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/handle_cols.go b/planner/core/handle_cols.go index 6e7c712817c50..4e37ee820de9a 100644 --- a/planner/core/handle_cols.go +++ b/planner/core/handle_cols.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/hashcode.go b/planner/core/hashcode.go index 966e24ef07c8b..42acce8d9401f 100644 --- a/planner/core/hashcode.go +++ b/planner/core/hashcode.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/hints.go b/planner/core/hints.go index cddd36d5caf30..91b2ed01ac62a 100644 --- a/planner/core/hints.go +++ b/planner/core/hints.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/indexmerge_test.go b/planner/core/indexmerge_test.go index 361161689bbde..4ffe137f8668d 100644 --- a/planner/core/indexmerge_test.go +++ b/planner/core/indexmerge_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/initialize.go b/planner/core/initialize.go index cbf099baf4113..5a32d0294e952 100644 --- a/planner/core/initialize.go +++ b/planner/core/initialize.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/integration_partition_test.go b/planner/core/integration_partition_test.go index f99bef2e66cc4..009b37b883c8f 100644 --- a/planner/core/integration_partition_test.go +++ b/planner/core/integration_partition_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/integration_test.go b/planner/core/integration_test.go index b18f1649bdef2..f52f75b5cd33f 100644 --- a/planner/core/integration_test.go +++ b/planner/core/integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/logical_plan_builder.go b/planner/core/logical_plan_builder.go index 8b68ee47018b5..e8407a5b15190 100644 --- a/planner/core/logical_plan_builder.go +++ b/planner/core/logical_plan_builder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/logical_plan_test.go b/planner/core/logical_plan_test.go index 05efc42482fc8..ba842b08d5906 100644 --- a/planner/core/logical_plan_test.go +++ b/planner/core/logical_plan_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/logical_plans.go b/planner/core/logical_plans.go index b6084fb339466..54f5690879ed1 100644 --- a/planner/core/logical_plans.go +++ b/planner/core/logical_plans.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/logical_plans_test.go b/planner/core/logical_plans_test.go index 08617ce93d480..cf45a4f6ef28a 100644 --- a/planner/core/logical_plans_test.go +++ b/planner/core/logical_plans_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/memtable_predicate_extractor.go b/planner/core/memtable_predicate_extractor.go index 870875c311a7c..20a4e9cab8eef 100644 --- a/planner/core/memtable_predicate_extractor.go +++ b/planner/core/memtable_predicate_extractor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/memtable_predicate_extractor_test.go b/planner/core/memtable_predicate_extractor_test.go index 3cc16efe3504d..3bf40344a7b2e 100644 --- a/planner/core/memtable_predicate_extractor_test.go +++ b/planner/core/memtable_predicate_extractor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/mock.go b/planner/core/mock.go index eac3315fcdeac..1cb203b052136 100644 --- a/planner/core/mock.go +++ b/planner/core/mock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/optimizer.go b/planner/core/optimizer.go index 7994e1f65ae64..d406248ebfac9 100644 --- a/planner/core/optimizer.go +++ b/planner/core/optimizer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/optimizer_test.go b/planner/core/optimizer_test.go index c8e27fb15d759..d619ebd6d4b46 100644 --- a/planner/core/optimizer_test.go +++ b/planner/core/optimizer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/partition_prune.go b/planner/core/partition_prune.go index c10032c0a498a..d41c4ea28c323 100644 --- a/planner/core/partition_prune.go +++ b/planner/core/partition_prune.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/partition_pruner_test.go b/planner/core/partition_pruner_test.go index e4de5a2c654e6..9f2a7ac29e8da 100644 --- a/planner/core/partition_pruner_test.go +++ b/planner/core/partition_pruner_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/partition_pruning_test.go b/planner/core/partition_pruning_test.go index 12f43e49525b5..4c4469ee716d0 100644 --- a/planner/core/partition_pruning_test.go +++ b/planner/core/partition_pruning_test.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/pb_to_plan.go b/planner/core/pb_to_plan.go index a453596a0f288..bd35c11cc2205 100644 --- a/planner/core/pb_to_plan.go +++ b/planner/core/pb_to_plan.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/physical_plan_test.go b/planner/core/physical_plan_test.go index ca4898e5daf39..b93d20501c372 100644 --- a/planner/core/physical_plan_test.go +++ b/planner/core/physical_plan_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/physical_plans.go b/planner/core/physical_plans.go index 7a2fd0c87654f..97c49dc927773 100644 --- a/planner/core/physical_plans.go +++ b/planner/core/physical_plans.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/plan.go b/planner/core/plan.go index 5e5baec4e385c..458da3f632590 100644 --- a/planner/core/plan.go +++ b/planner/core/plan.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/plan_test.go b/planner/core/plan_test.go index e34ad13851dc8..344aef414b890 100644 --- a/planner/core/plan_test.go +++ b/planner/core/plan_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/plan_to_pb.go b/planner/core/plan_to_pb.go index 582cfaf758b82..b128847869790 100644 --- a/planner/core/plan_to_pb.go +++ b/planner/core/plan_to_pb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/plan_to_pb_test.go b/planner/core/plan_to_pb_test.go index 0162cce7397b5..b61c9d0b73f23 100644 --- a/planner/core/plan_to_pb_test.go +++ b/planner/core/plan_to_pb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/planbuilder.go b/planner/core/planbuilder.go index 409a9715aebad..23eb31fd586f7 100644 --- a/planner/core/planbuilder.go +++ b/planner/core/planbuilder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/planbuilder_test.go b/planner/core/planbuilder_test.go index 0f9205be76412..98f430a11b195 100644 --- a/planner/core/planbuilder_test.go +++ b/planner/core/planbuilder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/point_get_plan.go b/planner/core/point_get_plan.go index 74398381cbf90..8038ff2e42550 100644 --- a/planner/core/point_get_plan.go +++ b/planner/core/point_get_plan.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/point_get_plan_test.go b/planner/core/point_get_plan_test.go index b67bcf08cb465..9d426ed719cfc 100644 --- a/planner/core/point_get_plan_test.go +++ b/planner/core/point_get_plan_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/prepare_test.go b/planner/core/prepare_test.go index 0bd050a05ebdc..45b019990d3f7 100644 --- a/planner/core/prepare_test.go +++ b/planner/core/prepare_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/preprocess.go b/planner/core/preprocess.go index 2efc7dedf5f3d..4d1909ac804ae 100644 --- a/planner/core/preprocess.go +++ b/planner/core/preprocess.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/preprocess_test.go b/planner/core/preprocess_test.go index e28c26c1bfa60..1123609b425d3 100644 --- a/planner/core/preprocess_test.go +++ b/planner/core/preprocess_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/property_cols_prune.go b/planner/core/property_cols_prune.go index 9cd83adc412de..65c15a6c8d66c 100644 --- a/planner/core/property_cols_prune.go +++ b/planner/core/property_cols_prune.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/resolve_indices.go b/planner/core/resolve_indices.go index fba0ab68f661d..59af155d05a57 100644 --- a/planner/core/resolve_indices.go +++ b/planner/core/resolve_indices.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_aggregation_elimination.go b/planner/core/rule_aggregation_elimination.go index 079b2a76bace5..209c08c37375b 100644 --- a/planner/core/rule_aggregation_elimination.go +++ b/planner/core/rule_aggregation_elimination.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_aggregation_push_down.go b/planner/core/rule_aggregation_push_down.go index e02583355910e..4ad2e6f260c6a 100644 --- a/planner/core/rule_aggregation_push_down.go +++ b/planner/core/rule_aggregation_push_down.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_build_key_info.go b/planner/core/rule_build_key_info.go index 2d8355014017b..9776619366756 100644 --- a/planner/core/rule_build_key_info.go +++ b/planner/core/rule_build_key_info.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_column_pruning.go b/planner/core/rule_column_pruning.go index 5e46dac53a980..77154520bcffe 100644 --- a/planner/core/rule_column_pruning.go +++ b/planner/core/rule_column_pruning.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_decorrelate.go b/planner/core/rule_decorrelate.go index d9107fc1466cb..6d8480fc8cad8 100644 --- a/planner/core/rule_decorrelate.go +++ b/planner/core/rule_decorrelate.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_eliminate_projection.go b/planner/core/rule_eliminate_projection.go index ebc6b23d2b57d..608cb7ec88486 100644 --- a/planner/core/rule_eliminate_projection.go +++ b/planner/core/rule_eliminate_projection.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_generate_column_substitute.go b/planner/core/rule_generate_column_substitute.go index 53259f2f986f0..1be0c49477cbf 100644 --- a/planner/core/rule_generate_column_substitute.go +++ b/planner/core/rule_generate_column_substitute.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_inject_extra_projection.go b/planner/core/rule_inject_extra_projection.go index 911c531ceb4f0..8f9f474648b30 100644 --- a/planner/core/rule_inject_extra_projection.go +++ b/planner/core/rule_inject_extra_projection.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_inject_extra_projection_test.go b/planner/core/rule_inject_extra_projection_test.go index 6b1f44e0e53e6..42fb37a901a54 100644 --- a/planner/core/rule_inject_extra_projection_test.go +++ b/planner/core/rule_inject_extra_projection_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_join_elimination.go b/planner/core/rule_join_elimination.go index d52653dd8340a..d8cc3581b5bad 100644 --- a/planner/core/rule_join_elimination.go +++ b/planner/core/rule_join_elimination.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_join_reorder.go b/planner/core/rule_join_reorder.go index 2aa0ced4c1f7d..2c2d87b87219b 100644 --- a/planner/core/rule_join_reorder.go +++ b/planner/core/rule_join_reorder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_join_reorder_dp.go b/planner/core/rule_join_reorder_dp.go index d6583a0423f45..ea14ab47373ee 100644 --- a/planner/core/rule_join_reorder_dp.go +++ b/planner/core/rule_join_reorder_dp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_join_reorder_dp_test.go b/planner/core/rule_join_reorder_dp_test.go index 36abaef5e7c9a..120563cc514f1 100644 --- a/planner/core/rule_join_reorder_dp_test.go +++ b/planner/core/rule_join_reorder_dp_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_join_reorder_greedy.go b/planner/core/rule_join_reorder_greedy.go index ebc0fb13ea5c0..01ddf6ec85c13 100644 --- a/planner/core/rule_join_reorder_greedy.go +++ b/planner/core/rule_join_reorder_greedy.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_max_min_eliminate.go b/planner/core/rule_max_min_eliminate.go index b50c1129d0f49..ce381fff70fae 100644 --- a/planner/core/rule_max_min_eliminate.go +++ b/planner/core/rule_max_min_eliminate.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_partition_processor.go b/planner/core/rule_partition_processor.go index af3eb2d581419..8305a4430f26e 100644 --- a/planner/core/rule_partition_processor.go +++ b/planner/core/rule_partition_processor.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_predicate_push_down.go b/planner/core/rule_predicate_push_down.go index b591343870ce4..1776a119378e0 100644 --- a/planner/core/rule_predicate_push_down.go +++ b/planner/core/rule_predicate_push_down.go @@ -7,6 +7,7 @@ // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_result_reorder.go b/planner/core/rule_result_reorder.go index d97820740dbc1..3a4069e9945fc 100644 --- a/planner/core/rule_result_reorder.go +++ b/planner/core/rule_result_reorder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_result_reorder_test.go b/planner/core/rule_result_reorder_test.go index 1d1453527b8b1..452857a1c966a 100644 --- a/planner/core/rule_result_reorder_test.go +++ b/planner/core/rule_result_reorder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/rule_topn_push_down.go b/planner/core/rule_topn_push_down.go index 755c7712e5b40..60a8fb92b39af 100644 --- a/planner/core/rule_topn_push_down.go +++ b/planner/core/rule_topn_push_down.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/stats.go b/planner/core/stats.go index 3a21a6f14d904..294da6931ba6b 100644 --- a/planner/core/stats.go +++ b/planner/core/stats.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/stats_test.go b/planner/core/stats_test.go index 6ff110f8cd540..dc9f80ae4a65d 100644 --- a/planner/core/stats_test.go +++ b/planner/core/stats_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/stringer.go b/planner/core/stringer.go index 346b5b50e5742..914cdc1dfe6c2 100644 --- a/planner/core/stringer.go +++ b/planner/core/stringer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/task.go b/planner/core/task.go index c651d81b1a1d3..9f2a18ff9969e 100644 --- a/planner/core/task.go +++ b/planner/core/task.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/trace.go b/planner/core/trace.go index 828007dd710cc..5f20520093473 100644 --- a/planner/core/trace.go +++ b/planner/core/trace.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/core/util.go b/planner/core/util.go index 19ce0a47673a2..fc0d1444c2015 100644 --- a/planner/core/util.go +++ b/planner/core/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/base.go b/planner/implementation/base.go index e1fe47c157e15..c1437a5d0f9cb 100644 --- a/planner/implementation/base.go +++ b/planner/implementation/base.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/base_test.go b/planner/implementation/base_test.go index c830a7b09e8cf..b1b73ed0604c3 100644 --- a/planner/implementation/base_test.go +++ b/planner/implementation/base_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/datasource.go b/planner/implementation/datasource.go index a6bb9141fd0b3..1a760cc47cac1 100644 --- a/planner/implementation/datasource.go +++ b/planner/implementation/datasource.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/join.go b/planner/implementation/join.go index 35abf19e8086c..f24791e9a987e 100644 --- a/planner/implementation/join.go +++ b/planner/implementation/join.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/main_test.go b/planner/implementation/main_test.go index e1bcbdda4ef4f..b7a2088709314 100644 --- a/planner/implementation/main_test.go +++ b/planner/implementation/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/simple_plans.go b/planner/implementation/simple_plans.go index 0a727576b3950..e10293c042080 100644 --- a/planner/implementation/simple_plans.go +++ b/planner/implementation/simple_plans.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/implementation/sort.go b/planner/implementation/sort.go index 92025048954e4..32261b34c1204 100644 --- a/planner/implementation/sort.go +++ b/planner/implementation/sort.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/expr_iterator.go b/planner/memo/expr_iterator.go index e479c2cdd1dd4..39e5ae20f873f 100644 --- a/planner/memo/expr_iterator.go +++ b/planner/memo/expr_iterator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/expr_iterator_test.go b/planner/memo/expr_iterator_test.go index 58dad9a4b566d..d0cec2ac2a659 100644 --- a/planner/memo/expr_iterator_test.go +++ b/planner/memo/expr_iterator_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/group.go b/planner/memo/group.go index d3c7af9010e9a..a1d2f7c907085 100644 --- a/planner/memo/group.go +++ b/planner/memo/group.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/group_expr.go b/planner/memo/group_expr.go index cdb681d8460ae..e7f931eb6f60a 100644 --- a/planner/memo/group_expr.go +++ b/planner/memo/group_expr.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/group_expr_test.go b/planner/memo/group_expr_test.go index cb4cebce53c14..5257a96a8511b 100644 --- a/planner/memo/group_expr_test.go +++ b/planner/memo/group_expr_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/group_test.go b/planner/memo/group_test.go index 9d45b3b091e60..73ac5f4e351d1 100644 --- a/planner/memo/group_test.go +++ b/planner/memo/group_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/implementation.go b/planner/memo/implementation.go index 542fde64cd577..5d3166e602789 100644 --- a/planner/memo/implementation.go +++ b/planner/memo/implementation.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/main_test.go b/planner/memo/main_test.go index 1cba8d55c6153..784f011a9ddee 100644 --- a/planner/memo/main_test.go +++ b/planner/memo/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/pattern.go b/planner/memo/pattern.go index b16b937b1b72f..8edca36eee497 100644 --- a/planner/memo/pattern.go +++ b/planner/memo/pattern.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/memo/pattern_test.go b/planner/memo/pattern_test.go index cedbc35f76b22..9d0ee17039d49 100644 --- a/planner/memo/pattern_test.go +++ b/planner/memo/pattern_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/optimize.go b/planner/optimize.go index 05ba86f3bbce7..531ee924c395f 100644 --- a/planner/optimize.go +++ b/planner/optimize.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/property/logical_property.go b/planner/property/logical_property.go index 2a45e55c73c23..786185aa940fd 100644 --- a/planner/property/logical_property.go +++ b/planner/property/logical_property.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/property/physical_property.go b/planner/property/physical_property.go index 05cc12cbde3fc..4a48e091c4d56 100644 --- a/planner/property/physical_property.go +++ b/planner/property/physical_property.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/property/stats_info.go b/planner/property/stats_info.go index e8340d3fe9a1e..79dff7a41d091 100644 --- a/planner/property/stats_info.go +++ b/planner/property/stats_info.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/property/task_type.go b/planner/property/task_type.go index 3e60947f4b02d..1bc825795ed5f 100644 --- a/planner/property/task_type.go +++ b/planner/property/task_type.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/util/byitem.go b/planner/util/byitem.go index 550bb93572cbe..d6a58a91c5d41 100644 --- a/planner/util/byitem.go +++ b/planner/util/byitem.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/planner/util/path.go b/planner/util/path.go index 5a29d007c29db..2aa38ac2da718 100644 --- a/planner/util/path.go +++ b/planner/util/path.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/audit.go b/plugin/audit.go index 2150cd83c03aa..c64255e1b293d 100644 --- a/plugin/audit.go +++ b/plugin/audit.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/conn_ip_example/conn_ip_example.go b/plugin/conn_ip_example/conn_ip_example.go index 182b3b7432324..ed9fb40c04c3e 100644 --- a/plugin/conn_ip_example/conn_ip_example.go +++ b/plugin/conn_ip_example/conn_ip_example.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/conn_ip_example/conn_ip_example_test.go b/plugin/conn_ip_example/conn_ip_example_test.go index 9af700b6ae1db..811722123cbe1 100644 --- a/plugin/conn_ip_example/conn_ip_example_test.go +++ b/plugin/conn_ip_example/conn_ip_example_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/conn_ip_example/main_test.go b/plugin/conn_ip_example/main_test.go index b03fb8b49fa34..640b8d3aa5108 100644 --- a/plugin/conn_ip_example/main_test.go +++ b/plugin/conn_ip_example/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/const.go b/plugin/const.go index 88ba5432110d6..ca285e4436492 100644 --- a/plugin/const.go +++ b/plugin/const.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/const_test.go b/plugin/const_test.go index f75ca4d4138b7..89985068bc8a2 100644 --- a/plugin/const_test.go +++ b/plugin/const_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/errors.go b/plugin/errors.go index 721129edee23c..7b7fe758dd430 100644 --- a/plugin/errors.go +++ b/plugin/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/helper.go b/plugin/helper.go index 1d81cd9ac952b..394d8e4928c07 100644 --- a/plugin/helper.go +++ b/plugin/helper.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/helper_test.go b/plugin/helper_test.go index d0701ea789099..3bf7d14cc600c 100644 --- a/plugin/helper_test.go +++ b/plugin/helper_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/integration_test.go b/plugin/integration_test.go index 9015a9be276e0..d00e8587bba98 100644 --- a/plugin/integration_test.go +++ b/plugin/integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/main_test.go b/plugin/main_test.go index 25773ec64f3c5..48633eff506ae 100644 --- a/plugin/main_test.go +++ b/plugin/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/plugin.go b/plugin/plugin.go index 613dc06dbc4e7..368cb79e785c8 100644 --- a/plugin/plugin.go +++ b/plugin/plugin.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/plugin_test.go b/plugin/plugin_test.go index f07e9d1fcac8a..cfcc85ef310f3 100644 --- a/plugin/plugin_test.go +++ b/plugin/plugin_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/spi.go b/plugin/spi.go index ad8b89dc9dd6e..a4633008f3554 100644 --- a/plugin/spi.go +++ b/plugin/spi.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/plugin/spi_test.go b/plugin/spi_test.go index 08ca1c0c28a85..02cd623f01c5b 100644 --- a/plugin/spi_test.go +++ b/plugin/spi_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privilege.go b/privilege/privilege.go index c4051e91c6375..2b77e53069ab7 100644 --- a/privilege/privilege.go +++ b/privilege/privilege.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privileges/cache.go b/privilege/privileges/cache.go index 8dae461be63fd..ce7538508a011 100644 --- a/privilege/privileges/cache.go +++ b/privilege/privileges/cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privileges/cache_test.go b/privilege/privileges/cache_test.go index 01685af8c4271..5d03b8bf6e1e6 100644 --- a/privilege/privileges/cache_test.go +++ b/privilege/privileges/cache_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privileges/errors.go b/privilege/privileges/errors.go index daadc33b43c2a..e1f995840771f 100644 --- a/privilege/privileges/errors.go +++ b/privilege/privileges/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privileges/main_test.go b/privilege/privileges/main_test.go index 0ec8d11995c16..0d43ce5c21a4a 100644 --- a/privilege/privileges/main_test.go +++ b/privilege/privileges/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privileges/privileges.go b/privilege/privileges/privileges.go index 1e8aaf882fcba..32edb4c214e18 100644 --- a/privilege/privileges/privileges.go +++ b/privilege/privileges/privileges.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/privilege/privileges/privileges_test.go b/privilege/privileges/privileges_test.go index 83cff430317b2..bde166daedab7 100644 --- a/privilege/privileges/privileges_test.go +++ b/privilege/privileges/privileges_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/buffered_read_conn.go b/server/buffered_read_conn.go index 3eced761b2f0c..cbd932ff74eb9 100644 --- a/server/buffered_read_conn.go +++ b/server/buffered_read_conn.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/column.go b/server/column.go index 677dc702eec13..425e8d60b40e0 100644 --- a/server/column.go +++ b/server/column.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/column_test.go b/server/column_test.go index c87f972811aed..97445b470b51a 100644 --- a/server/column_test.go +++ b/server/column_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/conn.go b/server/conn.go index 110b5c292d83f..400a6bf57b55f 100644 --- a/server/conn.go +++ b/server/conn.go @@ -29,6 +29,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/conn_stmt.go b/server/conn_stmt.go index 237c1f599e6b1..b9ecfd150418c 100644 --- a/server/conn_stmt.go +++ b/server/conn_stmt.go @@ -29,6 +29,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/conn_stmt_test.go b/server/conn_stmt_test.go index 038e05cb348eb..3157d1925855d 100644 --- a/server/conn_stmt_test.go +++ b/server/conn_stmt_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/conn_test.go b/server/conn_test.go index b5c11bef4a5e8..1676d28764afe 100644 --- a/server/conn_test.go +++ b/server/conn_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/driver.go b/server/driver.go index 405c879f3093e..c937cf07f963b 100644 --- a/server/driver.go +++ b/server/driver.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/driver_tidb.go b/server/driver_tidb.go index 581b7525d3ca9..c0e0a811c4e6b 100644 --- a/server/driver_tidb.go +++ b/server/driver_tidb.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/driver_tidb_test.go b/server/driver_tidb_test.go index 9f49d6a58c806..14726f8d40b7c 100644 --- a/server/driver_tidb_test.go +++ b/server/driver_tidb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/http_handler.go b/server/http_handler.go index bbcaaa4e229c7..c2788788b311f 100644 --- a/server/http_handler.go +++ b/server/http_handler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/http_handler_test.go b/server/http_handler_test.go index 37384f99daab9..81ae3ce570053 100644 --- a/server/http_handler_test.go +++ b/server/http_handler_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/http_status.go b/server/http_status.go index ae1cdf6434e47..d55d04c043a5f 100644 --- a/server/http_status.go +++ b/server/http_status.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/packetio.go b/server/packetio.go index 9958ae3c3f675..4fb41556650e1 100644 --- a/server/packetio.go +++ b/server/packetio.go @@ -29,6 +29,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/packetio_test.go b/server/packetio_test.go index b5aaa8267f13d..ddf1dc1daaa6e 100644 --- a/server/packetio_test.go +++ b/server/packetio_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/rpc_server.go b/server/rpc_server.go index b0120b424f043..67965ac381f4d 100644 --- a/server/rpc_server.go +++ b/server/rpc_server.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/server.go b/server/server.go index 97de74075c4f6..db593ad0c608d 100644 --- a/server/server.go +++ b/server/server.go @@ -23,6 +23,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/server_test.go b/server/server_test.go index 49f0baff52335..f2d0b54792f66 100644 --- a/server/server_test.go +++ b/server/server_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/sql_info_fetcher.go b/server/sql_info_fetcher.go index 57f51f544b90b..4f4fe6e02344f 100644 --- a/server/sql_info_fetcher.go +++ b/server/sql_info_fetcher.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/stat.go b/server/stat.go index 7e1f115fa8a57..9725a7ec5e480 100644 --- a/server/stat.go +++ b/server/stat.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/statistics_handler.go b/server/statistics_handler.go index 034cbd8c24339..256e8e610128d 100644 --- a/server/statistics_handler.go +++ b/server/statistics_handler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/statistics_handler_test.go b/server/statistics_handler_test.go index 4eb1e35f89752..d3a1af67e1c0d 100644 --- a/server/statistics_handler_test.go +++ b/server/statistics_handler_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/tidb_test.go b/server/tidb_test.go index b6da1ace593f5..6ef3050fba3ed 100644 --- a/server/tidb_test.go +++ b/server/tidb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build !race diff --git a/server/tokenlimiter.go b/server/tokenlimiter.go index a1993779bf053..57f917479fae2 100644 --- a/server/tokenlimiter.go +++ b/server/tokenlimiter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/util.go b/server/util.go index 561f352513a9d..2022b405bfbdb 100644 --- a/server/util.go +++ b/server/util.go @@ -29,6 +29,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/server/util_test.go b/server/util_test.go index 475b7b78ce02a..2702fa856c51e 100644 --- a/server/util_test.go +++ b/server/util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/bench_test.go b/session/bench_test.go index df0fbec0fceb3..3fd67eb7b9b1f 100644 --- a/session/bench_test.go +++ b/session/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/bootstrap.go b/session/bootstrap.go index 01ea22012b02b..3ea5cf1c655d5 100644 --- a/session/bootstrap.go +++ b/session/bootstrap.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/bootstrap_test.go b/session/bootstrap_test.go index 26208f6e91aaa..379af1a905dae 100644 --- a/session/bootstrap_test.go +++ b/session/bootstrap_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/clustered_index_test.go b/session/clustered_index_test.go index 24efe49f26334..06554e9baef73 100644 --- a/session/clustered_index_test.go +++ b/session/clustered_index_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/isolation_test.go b/session/isolation_test.go index 59049c2633a47..fcac60418aa4c 100644 --- a/session/isolation_test.go +++ b/session/isolation_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/pessimistic_test.go b/session/pessimistic_test.go index 46f7763a708af..2ac4e19175f34 100644 --- a/session/pessimistic_test.go +++ b/session/pessimistic_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/schema_amender.go b/session/schema_amender.go index 2f62e57acf103..52b150837f224 100644 --- a/session/schema_amender.go +++ b/session/schema_amender.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/schema_amender_test.go b/session/schema_amender_test.go index 6bd55fcf8f74f..e5341cc04b363 100644 --- a/session/schema_amender_test.go +++ b/session/schema_amender_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/session.go b/session/session.go index ed6c565e0c993..c5542e781ac1b 100644 --- a/session/session.go +++ b/session/session.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/session_fail_test.go b/session/session_fail_test.go index 45725c37a4cd9..2e293f106ff6d 100644 --- a/session/session_fail_test.go +++ b/session/session_fail_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/session_test.go b/session/session_test.go index 0b1a35aa3aa86..6b87fb554342e 100644 --- a/session/session_test.go +++ b/session/session_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/tidb.go b/session/tidb.go index 583c5074e6805..d7c0046fe485a 100644 --- a/session/tidb.go +++ b/session/tidb.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/tidb_test.go b/session/tidb_test.go index 836c3bd2d96d5..a66707bd3fc33 100644 --- a/session/tidb_test.go +++ b/session/tidb_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/txn.go b/session/txn.go index 9a99a1f8dd343..edb778427b064 100644 --- a/session/txn.go +++ b/session/txn.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/session/txninfo/txn_info.go b/session/txninfo/txn_info.go index 25633bf2e7c85..c82612bd64235 100644 --- a/session/txninfo/txn_info.go +++ b/session/txninfo/txn_info.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/binloginfo/binloginfo.go b/sessionctx/binloginfo/binloginfo.go index a2d1047e93c65..3404181730239 100644 --- a/sessionctx/binloginfo/binloginfo.go +++ b/sessionctx/binloginfo/binloginfo.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/binloginfo/binloginfo_test.go b/sessionctx/binloginfo/binloginfo_test.go index 4e52d2b100da6..305af7ecf0256 100644 --- a/sessionctx/binloginfo/binloginfo_test.go +++ b/sessionctx/binloginfo/binloginfo_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/context.go b/sessionctx/context.go index 2a25292b3a17b..3a16be864ed47 100644 --- a/sessionctx/context.go +++ b/sessionctx/context.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/context_test.go b/sessionctx/context_test.go index a06ee540796c3..073ee65b76d89 100644 --- a/sessionctx/context_test.go +++ b/sessionctx/context_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/stmtctx/stmtctx.go b/sessionctx/stmtctx/stmtctx.go index c77fcd4d9d211..0689c4551b197 100644 --- a/sessionctx/stmtctx/stmtctx.go +++ b/sessionctx/stmtctx/stmtctx.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/stmtctx/stmtctx_test.go b/sessionctx/stmtctx/stmtctx_test.go index 5614691c903f2..0bdfa43647db8 100644 --- a/sessionctx/stmtctx/stmtctx_test.go +++ b/sessionctx/stmtctx/stmtctx_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/error.go b/sessionctx/variable/error.go index c3029447b00b7..e21489ede15b7 100644 --- a/sessionctx/variable/error.go +++ b/sessionctx/variable/error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/mock_globalaccessor.go b/sessionctx/variable/mock_globalaccessor.go index 525ce9fa9efff..c1a09361380fc 100644 --- a/sessionctx/variable/mock_globalaccessor.go +++ b/sessionctx/variable/mock_globalaccessor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/noop.go b/sessionctx/variable/noop.go index 4c7694a642564..da418df174696 100644 --- a/sessionctx/variable/noop.go +++ b/sessionctx/variable/noop.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/sequence_state.go b/sessionctx/variable/sequence_state.go index 65e2a364d5ab4..bb8b468da2de9 100644 --- a/sessionctx/variable/sequence_state.go +++ b/sessionctx/variable/sequence_state.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/session.go b/sessionctx/variable/session.go index 949d1a494fdc5..d7f97e657318c 100644 --- a/sessionctx/variable/session.go +++ b/sessionctx/variable/session.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/session_test.go b/sessionctx/variable/session_test.go index e3b0c146b1116..d2f850cb0f435 100644 --- a/sessionctx/variable/session_test.go +++ b/sessionctx/variable/session_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/statusvar.go b/sessionctx/variable/statusvar.go index ce7d17de09705..ff004f84566a2 100644 --- a/sessionctx/variable/statusvar.go +++ b/sessionctx/variable/statusvar.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/statusvar_test.go b/sessionctx/variable/statusvar_test.go index 5e00500634be8..aac63a89cdb3e 100644 --- a/sessionctx/variable/statusvar_test.go +++ b/sessionctx/variable/statusvar_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/sysvar.go b/sessionctx/variable/sysvar.go index ddfff2133a71f..44a449a95e289 100644 --- a/sessionctx/variable/sysvar.go +++ b/sessionctx/variable/sysvar.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/sysvar_test.go b/sessionctx/variable/sysvar_test.go index ecea3c494ad2a..9d2696bc04917 100644 --- a/sessionctx/variable/sysvar_test.go +++ b/sessionctx/variable/sysvar_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/tidb_vars.go b/sessionctx/variable/tidb_vars.go index e4d41d0772c0d..06e1e37fc06e3 100644 --- a/sessionctx/variable/tidb_vars.go +++ b/sessionctx/variable/tidb_vars.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/varsutil.go b/sessionctx/variable/varsutil.go index 3682235528e4d..caa3967881222 100644 --- a/sessionctx/variable/varsutil.go +++ b/sessionctx/variable/varsutil.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/sessionctx/variable/varsutil_test.go b/sessionctx/variable/varsutil_test.go index 84cfe36f24337..f9e6504caa29f 100644 --- a/sessionctx/variable/varsutil_test.go +++ b/sessionctx/variable/varsutil_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/analyze.go b/statistics/analyze.go index c4780dcd69281..eb6fc26ace963 100644 --- a/statistics/analyze.go +++ b/statistics/analyze.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/analyze_jobs.go b/statistics/analyze_jobs.go index d74a2f9dffca7..07b9bd8769fce 100644 --- a/statistics/analyze_jobs.go +++ b/statistics/analyze_jobs.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/analyze_jobs_test.go b/statistics/analyze_jobs_test.go index 559d284f51296..cd73cfa7bd6a1 100644 --- a/statistics/analyze_jobs_test.go +++ b/statistics/analyze_jobs_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/builder.go b/statistics/builder.go index d3d66294650b2..13edd2457fd75 100644 --- a/statistics/builder.go +++ b/statistics/builder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/cmsketch.go b/statistics/cmsketch.go index 80a72b77b8c63..87d7848e4042a 100644 --- a/statistics/cmsketch.go +++ b/statistics/cmsketch.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/cmsketch_test.go b/statistics/cmsketch_test.go index 48be1e716e178..65d1d882827bd 100644 --- a/statistics/cmsketch_test.go +++ b/statistics/cmsketch_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/estimate.go b/statistics/estimate.go index 952034186bdb8..5ae12b68f11a7 100644 --- a/statistics/estimate.go +++ b/statistics/estimate.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/feedback.go b/statistics/feedback.go index 5c06cc072e227..74fbfff879e7e 100644 --- a/statistics/feedback.go +++ b/statistics/feedback.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/feedback_test.go b/statistics/feedback_test.go index 12b87ffa57c3f..72fc106b99ded 100644 --- a/statistics/feedback_test.go +++ b/statistics/feedback_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/fmsketch.go b/statistics/fmsketch.go index 9ee68bc1e98e9..a0e81c354ffe8 100644 --- a/statistics/fmsketch.go +++ b/statistics/fmsketch.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/fmsketch_test.go b/statistics/fmsketch_test.go index 91d0bbea69a23..ef7c397b8def8 100644 --- a/statistics/fmsketch_test.go +++ b/statistics/fmsketch_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/bootstrap.go b/statistics/handle/bootstrap.go index 99189221a0444..8107ac1229edb 100644 --- a/statistics/handle/bootstrap.go +++ b/statistics/handle/bootstrap.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/ddl.go b/statistics/handle/ddl.go index 6f7c37556a36c..d7b26bcd5577c 100644 --- a/statistics/handle/ddl.go +++ b/statistics/handle/ddl.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/ddl_test.go b/statistics/handle/ddl_test.go index 6bdd897270b8d..becaea1b29684 100644 --- a/statistics/handle/ddl_test.go +++ b/statistics/handle/ddl_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/dump.go b/statistics/handle/dump.go index 36971076b4644..c9b49397ebe39 100644 --- a/statistics/handle/dump.go +++ b/statistics/handle/dump.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/dump_test.go b/statistics/handle/dump_test.go index f0c7c2fb09110..87a2716745343 100644 --- a/statistics/handle/dump_test.go +++ b/statistics/handle/dump_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/gc.go b/statistics/handle/gc.go index 82c85e3f467f8..02862290d2efd 100644 --- a/statistics/handle/gc.go +++ b/statistics/handle/gc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/gc_test.go b/statistics/handle/gc_test.go index f934f8973fe6c..ac54ea337080a 100644 --- a/statistics/handle/gc_test.go +++ b/statistics/handle/gc_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/handle.go b/statistics/handle/handle.go index a518d6430a279..1b4ffa33d1bcc 100644 --- a/statistics/handle/handle.go +++ b/statistics/handle/handle.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/handle_test.go b/statistics/handle/handle_test.go index ca44f560d6e02..f12a83b5fe440 100644 --- a/statistics/handle/handle_test.go +++ b/statistics/handle/handle_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/update.go b/statistics/handle/update.go index 6038a1c0213a3..7d3f66bf51499 100644 --- a/statistics/handle/update.go +++ b/statistics/handle/update.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/update_list_test.go b/statistics/handle/update_list_test.go index d5e07b7697a74..d8f39af6c9723 100644 --- a/statistics/handle/update_list_test.go +++ b/statistics/handle/update_list_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/handle/update_test.go b/statistics/handle/update_test.go index 39dcdfefb299e..fa6af0def052f 100644 --- a/statistics/handle/update_test.go +++ b/statistics/handle/update_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/histogram.go b/statistics/histogram.go index 7b2c7610b4b7d..9ec1663ff3efc 100644 --- a/statistics/histogram.go +++ b/statistics/histogram.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/histogram_test.go b/statistics/histogram_test.go index 57958fe759279..6ec7047f1eea6 100644 --- a/statistics/histogram_test.go +++ b/statistics/histogram_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/integration_test.go b/statistics/integration_test.go index 865c323510693..8af2818c95d1f 100644 --- a/statistics/integration_test.go +++ b/statistics/integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package statistics_test diff --git a/statistics/row_sampler.go b/statistics/row_sampler.go index db9b0c235cf2c..4263d4f91530e 100644 --- a/statistics/row_sampler.go +++ b/statistics/row_sampler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/sample.go b/statistics/sample.go index 28d40c3af6744..45166d2c8ffca 100644 --- a/statistics/sample.go +++ b/statistics/sample.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/sample_test.go b/statistics/sample_test.go index 3624b233395ae..98a978f7bc0f3 100644 --- a/statistics/sample_test.go +++ b/statistics/sample_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/scalar.go b/statistics/scalar.go index e8f585f450a32..2b3d0ad5d711e 100644 --- a/statistics/scalar.go +++ b/statistics/scalar.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/scalar_test.go b/statistics/scalar_test.go index bf895e908dcf2..a99342cfe57da 100644 --- a/statistics/scalar_test.go +++ b/statistics/scalar_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/selectivity.go b/statistics/selectivity.go index 7e604e509a1bb..f757e5299c1e0 100644 --- a/statistics/selectivity.go +++ b/statistics/selectivity.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/selectivity_test.go b/statistics/selectivity_test.go index f8c551b11d0e6..b5057eba564a5 100644 --- a/statistics/selectivity_test.go +++ b/statistics/selectivity_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/statistics_test.go b/statistics/statistics_test.go index a6f1d31afbec7..a34e4c91fa291 100644 --- a/statistics/statistics_test.go +++ b/statistics/statistics_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/statistics/table.go b/statistics/table.go index 93887b28d0270..34f8d2f0c3ac0 100644 --- a/statistics/table.go +++ b/statistics/table.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/batch_coprocessor_test.go b/store/batch_coprocessor_test.go index 964f07cb8d56d..7f48a35302e6e 100644 --- a/store/batch_coprocessor_test.go +++ b/store/batch_coprocessor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/batch_coprocessor.go b/store/copr/batch_coprocessor.go index 4397a6d025a9e..a6587982cebf6 100644 --- a/store/copr/batch_coprocessor.go +++ b/store/copr/batch_coprocessor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/batch_request_sender.go b/store/copr/batch_request_sender.go index 4d2a9cda36909..256aa5c0dd468 100644 --- a/store/copr/batch_request_sender.go +++ b/store/copr/batch_request_sender.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/coprocessor.go b/store/copr/coprocessor.go index d731176f8ef9f..ca7d84d195a60 100644 --- a/store/copr/coprocessor.go +++ b/store/copr/coprocessor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/coprocessor_cache.go b/store/copr/coprocessor_cache.go index 9de2138ddd7ed..35987347fb0f2 100644 --- a/store/copr/coprocessor_cache.go +++ b/store/copr/coprocessor_cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/coprocessor_cache_test.go b/store/copr/coprocessor_cache_test.go index bb3cd0d526ccd..d95d7e133ede1 100644 --- a/store/copr/coprocessor_cache_test.go +++ b/store/copr/coprocessor_cache_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/coprocessor_test.go b/store/copr/coprocessor_test.go index 41e96c7772503..a5a01ad33e447 100644 --- a/store/copr/coprocessor_test.go +++ b/store/copr/coprocessor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/key_ranges.go b/store/copr/key_ranges.go index 6b26d1026c785..048353df8970b 100644 --- a/store/copr/key_ranges.go +++ b/store/copr/key_ranges.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/key_ranges_test.go b/store/copr/key_ranges_test.go index eb1755c53a32f..a6e125eda002e 100644 --- a/store/copr/key_ranges_test.go +++ b/store/copr/key_ranges_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/mpp.go b/store/copr/mpp.go index 1b8736d0072df..f50e36b89da73 100644 --- a/store/copr/mpp.go +++ b/store/copr/mpp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/region_cache.go b/store/copr/region_cache.go index f8a8268181708..c2ea13ec1885a 100644 --- a/store/copr/region_cache.go +++ b/store/copr/region_cache.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/copr/store.go b/store/copr/store.go index 7545133918d31..1783ee294f8e1 100644 --- a/store/copr/store.go +++ b/store/copr/store.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/backoff/backoff.go b/store/driver/backoff/backoff.go index 6a6e271a08cc8..593c8ebc4c22e 100644 --- a/store/driver/backoff/backoff.go +++ b/store/driver/backoff/backoff.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/error/error.go b/store/driver/error/error.go index ecee025a4f293..b093c4cc968ef 100644 --- a/store/driver/error/error.go +++ b/store/driver/error/error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/options/options.go b/store/driver/options/options.go index bc0000becf9d7..495764a81f29d 100644 --- a/store/driver/options/options.go +++ b/store/driver/options/options.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/sql_fail_test.go b/store/driver/sql_fail_test.go index e873224689afa..cb7f790ae0d8a 100644 --- a/store/driver/sql_fail_test.go +++ b/store/driver/sql_fail_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/tikv_driver.go b/store/driver/tikv_driver.go index 5f3acd02298f5..52285f8de41bf 100644 --- a/store/driver/tikv_driver.go +++ b/store/driver/tikv_driver.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/batch_getter.go b/store/driver/txn/batch_getter.go index 603997e3392bf..272ae0fd9843e 100644 --- a/store/driver/txn/batch_getter.go +++ b/store/driver/txn/batch_getter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/batch_getter_test.go b/store/driver/txn/batch_getter_test.go index f33bf8c24c1ad..20dc3a0a70428 100644 --- a/store/driver/txn/batch_getter_test.go +++ b/store/driver/txn/batch_getter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package txn diff --git a/store/driver/txn/binlog.go b/store/driver/txn/binlog.go index e0668704a9b4b..86989c315d448 100644 --- a/store/driver/txn/binlog.go +++ b/store/driver/txn/binlog.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/driver_test.go b/store/driver/txn/driver_test.go index 30a7ce8a9e034..d639a9062a2ea 100644 --- a/store/driver/txn/driver_test.go +++ b/store/driver/txn/driver_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package txn diff --git a/store/driver/txn/error.go b/store/driver/txn/error.go index f25e0922600d0..0e60d76560d4e 100644 --- a/store/driver/txn/error.go +++ b/store/driver/txn/error.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/scanner.go b/store/driver/txn/scanner.go index f56db6d42a025..33a8f9b468ed6 100644 --- a/store/driver/txn/scanner.go +++ b/store/driver/txn/scanner.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/snapshot.go b/store/driver/txn/snapshot.go index 11f88f24b210f..7cb0e6e946575 100644 --- a/store/driver/txn/snapshot.go +++ b/store/driver/txn/snapshot.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/txn_driver.go b/store/driver/txn/txn_driver.go index 59d99025be862..b76e6d60f16ad 100644 --- a/store/driver/txn/txn_driver.go +++ b/store/driver/txn/txn_driver.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/txn/unionstore_driver.go b/store/driver/txn/unionstore_driver.go index d58eca5fd552d..e074ff9ca09b9 100644 --- a/store/driver/txn/unionstore_driver.go +++ b/store/driver/txn/unionstore_driver.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/driver/util_test.go b/store/driver/util_test.go index 241d134755f1d..e7fa1e0840b6e 100644 --- a/store/driver/util_test.go +++ b/store/driver/util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/gcworker/gc_worker.go b/store/gcworker/gc_worker.go index d90ec6119241e..4103a83bcd5bb 100644 --- a/store/gcworker/gc_worker.go +++ b/store/gcworker/gc_worker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/gcworker/gc_worker_test.go b/store/gcworker/gc_worker_test.go index 0f4e851eabe97..86828f00a8702 100644 --- a/store/gcworker/gc_worker_test.go +++ b/store/gcworker/gc_worker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/helper/helper.go b/store/helper/helper.go index 20437193e2902..df86de66974df 100644 --- a/store/helper/helper.go +++ b/store/helper/helper.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/helper/helper_test.go b/store/helper/helper_test.go index ee9fde944e4a3..332a59a6a9348 100644 --- a/store/helper/helper_test.go +++ b/store/helper/helper_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/cluster_test.go b/store/mockstore/cluster_test.go index be150126b2ea4..5bdfeb2fcff52 100644 --- a/store/mockstore/cluster_test.go +++ b/store/mockstore/cluster_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/aggregate.go b/store/mockstore/mockcopr/aggregate.go index 25f7c84611cbb..0a0dd6d6cfb56 100644 --- a/store/mockstore/mockcopr/aggregate.go +++ b/store/mockstore/mockcopr/aggregate.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/analyze.go b/store/mockstore/mockcopr/analyze.go index b016096314de4..0ece917928b4c 100644 --- a/store/mockstore/mockcopr/analyze.go +++ b/store/mockstore/mockcopr/analyze.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/checksum.go b/store/mockstore/mockcopr/checksum.go index 1ba4e44b400c2..38afdd15ceff6 100644 --- a/store/mockstore/mockcopr/checksum.go +++ b/store/mockstore/mockcopr/checksum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/cop_handler_dag.go b/store/mockstore/mockcopr/cop_handler_dag.go index fb7b6ef1b9607..9814e10ccc8d7 100644 --- a/store/mockstore/mockcopr/cop_handler_dag.go +++ b/store/mockstore/mockcopr/cop_handler_dag.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/cop_handler_dag_test.go b/store/mockstore/mockcopr/cop_handler_dag_test.go index 201980f91e1e4..a6fca2a67d929 100644 --- a/store/mockstore/mockcopr/cop_handler_dag_test.go +++ b/store/mockstore/mockcopr/cop_handler_dag_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/copr_handler.go b/store/mockstore/mockcopr/copr_handler.go index 75aede593e89c..f3c5d19b9d18c 100644 --- a/store/mockstore/mockcopr/copr_handler.go +++ b/store/mockstore/mockcopr/copr_handler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/executor.go b/store/mockstore/mockcopr/executor.go index 9c9cbfe03c973..423ff108caed5 100644 --- a/store/mockstore/mockcopr/executor.go +++ b/store/mockstore/mockcopr/executor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/executor_test.go b/store/mockstore/mockcopr/executor_test.go index a7afced4bfada..882fddd6dd084 100644 --- a/store/mockstore/mockcopr/executor_test.go +++ b/store/mockstore/mockcopr/executor_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/rpc_copr.go b/store/mockstore/mockcopr/rpc_copr.go index e77d0d5f66963..b883106240c8f 100644 --- a/store/mockstore/mockcopr/rpc_copr.go +++ b/store/mockstore/mockcopr/rpc_copr.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockcopr/topn.go b/store/mockstore/mockcopr/topn.go index 7b1d79948e329..68b0c498170e8 100644 --- a/store/mockstore/mockcopr/topn.go +++ b/store/mockstore/mockcopr/topn.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockstorage/storage.go b/store/mockstore/mockstorage/storage.go index 6e2145e4a7e34..83a40661e24d3 100644 --- a/store/mockstore/mockstorage/storage.go +++ b/store/mockstore/mockstorage/storage.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/mockstore.go b/store/mockstore/mockstore.go index c371e3dbdb6fb..3684d8faf5819 100644 --- a/store/mockstore/mockstore.go +++ b/store/mockstore/mockstore.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/redirector.go b/store/mockstore/redirector.go index d92c6a64552a1..2b899d44eae65 100644 --- a/store/mockstore/redirector.go +++ b/store/mockstore/redirector.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/tikv.go b/store/mockstore/tikv.go index e35d1939c19d1..1cac5abd32d5b 100644 --- a/store/mockstore/tikv.go +++ b/store/mockstore/tikv.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/tikv_test.go b/store/mockstore/tikv_test.go index af5c229570ae2..900ccc8d64dd7 100644 --- a/store/mockstore/tikv_test.go +++ b/store/mockstore/tikv_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore.go b/store/mockstore/unistore.go index da4b79d0c90e1..7e04b2a8ae737 100644 --- a/store/mockstore/unistore.go +++ b/store/mockstore/unistore.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/client/client.go b/store/mockstore/unistore/client/client.go index d8ea5e37848b8..ba03029585785 100644 --- a/store/mockstore/unistore/client/client.go +++ b/store/mockstore/unistore/client/client.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cluster.go b/store/mockstore/unistore/cluster.go index c1b2c27144a82..2d2843f2fe041 100644 --- a/store/mockstore/unistore/cluster.go +++ b/store/mockstore/unistore/cluster.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/config/config.go b/store/mockstore/unistore/config/config.go index b91644240c4b9..51f1f2c5d054f 100644 --- a/store/mockstore/unistore/config/config.go +++ b/store/mockstore/unistore/config/config.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/analyze.go b/store/mockstore/unistore/cophandler/analyze.go index 189a558282e8a..94191012696a7 100644 --- a/store/mockstore/unistore/cophandler/analyze.go +++ b/store/mockstore/unistore/cophandler/analyze.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/closure_exec.go b/store/mockstore/unistore/cophandler/closure_exec.go index 696a1497b068e..ad37f86fe156f 100644 --- a/store/mockstore/unistore/cophandler/closure_exec.go +++ b/store/mockstore/unistore/cophandler/closure_exec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/cop_handler.go b/store/mockstore/unistore/cophandler/cop_handler.go index fa3b5ec694aa5..00013d6e97112 100644 --- a/store/mockstore/unistore/cophandler/cop_handler.go +++ b/store/mockstore/unistore/cophandler/cop_handler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/cop_handler_test.go b/store/mockstore/unistore/cophandler/cop_handler_test.go index c013d04c404a3..cf446b63a5f59 100644 --- a/store/mockstore/unistore/cophandler/cop_handler_test.go +++ b/store/mockstore/unistore/cophandler/cop_handler_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/mpp.go b/store/mockstore/unistore/cophandler/mpp.go index bed35eebee01e..5df3c4364b970 100644 --- a/store/mockstore/unistore/cophandler/mpp.go +++ b/store/mockstore/unistore/cophandler/mpp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/mpp_exec.go b/store/mockstore/unistore/cophandler/mpp_exec.go index 956182619ac5d..80466c80403a6 100644 --- a/store/mockstore/unistore/cophandler/mpp_exec.go +++ b/store/mockstore/unistore/cophandler/mpp_exec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/cophandler/topn.go b/store/mockstore/unistore/cophandler/topn.go index d773b9b20c543..c6b766589fbfd 100644 --- a/store/mockstore/unistore/cophandler/topn.go +++ b/store/mockstore/unistore/cophandler/topn.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/lockstore/arena.go b/store/mockstore/unistore/lockstore/arena.go index 5de71fb381727..bf02e5020e935 100644 --- a/store/mockstore/unistore/lockstore/arena.go +++ b/store/mockstore/unistore/lockstore/arena.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/lockstore/iterator.go b/store/mockstore/unistore/lockstore/iterator.go index 257c4655e2292..b812d50d183c8 100644 --- a/store/mockstore/unistore/lockstore/iterator.go +++ b/store/mockstore/unistore/lockstore/iterator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/lockstore/load_dump.go b/store/mockstore/unistore/lockstore/load_dump.go index e3c46d28ea10d..dca102ab0b0ed 100644 --- a/store/mockstore/unistore/lockstore/load_dump.go +++ b/store/mockstore/unistore/lockstore/load_dump.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/lockstore/lockstore.go b/store/mockstore/unistore/lockstore/lockstore.go index d609e409fd5a9..02da0c06aed5a 100644 --- a/store/mockstore/unistore/lockstore/lockstore.go +++ b/store/mockstore/unistore/lockstore/lockstore.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/lockstore/lockstore_test.go b/store/mockstore/unistore/lockstore/lockstore_test.go index 541cd7c8aff87..39191adbb719c 100644 --- a/store/mockstore/unistore/lockstore/lockstore_test.go +++ b/store/mockstore/unistore/lockstore/lockstore_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/metrics/metrics.go b/store/mockstore/unistore/metrics/metrics.go index 95d70fbe99757..a94f938b77cc7 100644 --- a/store/mockstore/unistore/metrics/metrics.go +++ b/store/mockstore/unistore/metrics/metrics.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/mock.go b/store/mockstore/unistore/mock.go index 818016436f922..cb136bf6bf079 100644 --- a/store/mockstore/unistore/mock.go +++ b/store/mockstore/unistore/mock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/pd.go b/store/mockstore/unistore/pd.go index 3254d6c1d0bfb..cb56bcbfc778f 100644 --- a/store/mockstore/unistore/pd.go +++ b/store/mockstore/unistore/pd.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/pd/client.go b/store/mockstore/unistore/pd/client.go index 39da0df04ab01..bd37bfa2ede2e 100644 --- a/store/mockstore/unistore/pd/client.go +++ b/store/mockstore/unistore/pd/client.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/raw_handler.go b/store/mockstore/unistore/raw_handler.go index 3d405d05868d9..3e8aa30423ec7 100644 --- a/store/mockstore/unistore/raw_handler.go +++ b/store/mockstore/unistore/raw_handler.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/raw_handler_test.go b/store/mockstore/unistore/raw_handler_test.go index 5396cc2dadad6..f35ca516f0600 100644 --- a/store/mockstore/unistore/raw_handler_test.go +++ b/store/mockstore/unistore/raw_handler_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/rpc.go b/store/mockstore/unistore/rpc.go index 419132e190c9f..0e80e41f7a36e 100644 --- a/store/mockstore/unistore/rpc.go +++ b/store/mockstore/unistore/rpc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/dbreader/db_reader.go b/store/mockstore/unistore/tikv/dbreader/db_reader.go index 6e3909ada740f..78ea3acb09e8c 100644 --- a/store/mockstore/unistore/tikv/dbreader/db_reader.go +++ b/store/mockstore/unistore/tikv/dbreader/db_reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. @@ -21,6 +22,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/deadlock.go b/store/mockstore/unistore/tikv/deadlock.go index de2eaf8fa61d9..da1851f66769e 100644 --- a/store/mockstore/unistore/tikv/deadlock.go +++ b/store/mockstore/unistore/tikv/deadlock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/detector.go b/store/mockstore/unistore/tikv/detector.go index b86804696a670..3b8a636420813 100644 --- a/store/mockstore/unistore/tikv/detector.go +++ b/store/mockstore/unistore/tikv/detector.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // Copyright 2019-present PingCAP, Inc. @@ -20,6 +21,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/detector_test.go b/store/mockstore/unistore/tikv/detector_test.go index c47260f886275..93b781e86a250 100644 --- a/store/mockstore/unistore/tikv/detector_test.go +++ b/store/mockstore/unistore/tikv/detector_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // Copyright 2019-present PingCAP, Inc. @@ -20,6 +21,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/errors.go b/store/mockstore/unistore/tikv/errors.go index bce76319320c9..6043f2fd7a753 100644 --- a/store/mockstore/unistore/tikv/errors.go +++ b/store/mockstore/unistore/tikv/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/inner_server.go b/store/mockstore/unistore/tikv/inner_server.go index de65e67db1d5b..38327558cda44 100644 --- a/store/mockstore/unistore/tikv/inner_server.go +++ b/store/mockstore/unistore/tikv/inner_server.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/mock_region.go b/store/mockstore/unistore/tikv/mock_region.go index 123f2b25d9dea..9233447cf921d 100644 --- a/store/mockstore/unistore/tikv/mock_region.go +++ b/store/mockstore/unistore/tikv/mock_region.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/mvcc.go b/store/mockstore/unistore/tikv/mvcc.go index 3d2f60388de99..47a59a3cb1f75 100644 --- a/store/mockstore/unistore/tikv/mvcc.go +++ b/store/mockstore/unistore/tikv/mvcc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/mvcc/db_writer.go b/store/mockstore/unistore/tikv/mvcc/db_writer.go index f4b97a2b1e097..4b04fca54de52 100644 --- a/store/mockstore/unistore/tikv/mvcc/db_writer.go +++ b/store/mockstore/unistore/tikv/mvcc/db_writer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/mvcc/mvcc.go b/store/mockstore/unistore/tikv/mvcc/mvcc.go index 9c15accaf0517..a8ae16a9321d6 100644 --- a/store/mockstore/unistore/tikv/mvcc/mvcc.go +++ b/store/mockstore/unistore/tikv/mvcc/mvcc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/mvcc/tikv.go b/store/mockstore/unistore/tikv/mvcc/tikv.go index f57ae607a1f0d..ef12e2f9eadb1 100644 --- a/store/mockstore/unistore/tikv/mvcc/tikv.go +++ b/store/mockstore/unistore/tikv/mvcc/tikv.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/mvcc_test.go b/store/mockstore/unistore/tikv/mvcc_test.go index c2564a5b4ebdf..05e061ac55749 100644 --- a/store/mockstore/unistore/tikv/mvcc_test.go +++ b/store/mockstore/unistore/tikv/mvcc_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/pberror/pberror.go b/store/mockstore/unistore/tikv/pberror/pberror.go index ef5859695eee4..2348041f566b7 100644 --- a/store/mockstore/unistore/tikv/pberror/pberror.go +++ b/store/mockstore/unistore/tikv/pberror/pberror.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/region.go b/store/mockstore/unistore/tikv/region.go index 372b39f6dd667..932841c968927 100644 --- a/store/mockstore/unistore/tikv/region.go +++ b/store/mockstore/unistore/tikv/region.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/server.go b/store/mockstore/unistore/tikv/server.go index 58aabc0de638d..8038acac31922 100644 --- a/store/mockstore/unistore/tikv/server.go +++ b/store/mockstore/unistore/tikv/server.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/server_batch.go b/store/mockstore/unistore/tikv/server_batch.go index e8931339320a3..cb2828c4758f7 100644 --- a/store/mockstore/unistore/tikv/server_batch.go +++ b/store/mockstore/unistore/tikv/server_batch.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/util.go b/store/mockstore/unistore/tikv/util.go index 80c1a4e4fc0b0..ad9641e8f9e9e 100644 --- a/store/mockstore/unistore/tikv/util.go +++ b/store/mockstore/unistore/tikv/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/tikv/write.go b/store/mockstore/unistore/tikv/write.go index d518d50e9e2cb..0218e5df51a3c 100644 --- a/store/mockstore/unistore/tikv/write.go +++ b/store/mockstore/unistore/tikv/write.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/util/lockwaiter/lockwaiter.go b/store/mockstore/unistore/util/lockwaiter/lockwaiter.go index b2a40fdb947dc..de8dda34e4068 100644 --- a/store/mockstore/unistore/util/lockwaiter/lockwaiter.go +++ b/store/mockstore/unistore/util/lockwaiter/lockwaiter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/mockstore/unistore/util/lockwaiter/lockwaiter_test.go b/store/mockstore/unistore/util/lockwaiter/lockwaiter_test.go index f7218216b312e..ffbaaf2463be7 100644 --- a/store/mockstore/unistore/util/lockwaiter/lockwaiter_test.go +++ b/store/mockstore/unistore/util/lockwaiter/lockwaiter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/store.go b/store/store.go index 48c6a587ecde0..3cb84f27394a0 100644 --- a/store/store.go +++ b/store/store.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/store/store_test.go b/store/store_test.go index 3f4a44cecc189..98a3acf365289 100644 --- a/store/store_test.go +++ b/store/store_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/structure/hash.go b/structure/hash.go index 1110eb5244440..b0e7b15ca526f 100644 --- a/structure/hash.go +++ b/structure/hash.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/structure/list.go b/structure/list.go index c55109a197b56..63ca285cbc5e3 100644 --- a/structure/list.go +++ b/structure/list.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/structure/string.go b/structure/string.go index 57a1fa4ec2dfe..bdec023107fab 100644 --- a/structure/string.go +++ b/structure/string.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/structure/structure.go b/structure/structure.go index e46160c71d599..7fcf3557bccee 100644 --- a/structure/structure.go +++ b/structure/structure.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/structure/structure_test.go b/structure/structure_test.go index 6781fddd32ca0..993483563427e 100644 --- a/structure/structure_test.go +++ b/structure/structure_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/structure/type.go b/structure/type.go index 8470ff245b416..8e1437c2c4e4b 100644 --- a/structure/type.go +++ b/structure/type.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/column.go b/table/column.go index 6b9c2996b7509..69068c492e7d8 100644 --- a/table/column.go +++ b/table/column.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/column_test.go b/table/column_test.go index 30736ad13c016..e4de47e913e20 100644 --- a/table/column_test.go +++ b/table/column_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/index.go b/table/index.go index 336efb7f574c2..0b64adb484446 100644 --- a/table/index.go +++ b/table/index.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/main_test.go b/table/main_test.go index 71a934ad637fe..91463fb0b5f8c 100644 --- a/table/main_test.go +++ b/table/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/table.go b/table/table.go index cde04d90cc78c..a3440b01f9b4f 100644 --- a/table/table.go +++ b/table/table.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/table_test.go b/table/table_test.go index abb6dbc5ea922..43061568eb2e1 100644 --- a/table/table_test.go +++ b/table/table_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/tables/index.go b/table/tables/index.go index afb9275c2dad9..b592c894f74ad 100644 --- a/table/tables/index.go +++ b/table/tables/index.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/tables/index_test.go b/table/tables/index_test.go index 2c0a417746d42..426e5e488d28c 100644 --- a/table/tables/index_test.go +++ b/table/tables/index_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/tables/partition.go b/table/tables/partition.go index 603c83bcd05b4..de0a778b5a2ca 100644 --- a/table/tables/partition.go +++ b/table/tables/partition.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/tables/partition_test.go b/table/tables/partition_test.go index 8e8449013217c..f6a4fc5fc3ef4 100644 --- a/table/tables/partition_test.go +++ b/table/tables/partition_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/tables/tables.go b/table/tables/tables.go index b43110c2e4a05..0a957a659b27a 100644 --- a/table/tables/tables.go +++ b/table/tables/tables.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/table/tables/tables_test.go b/table/tables/tables_test.go index ad33599ac7d8c..cfcc00d35f937 100644 --- a/table/tables/tables_test.go +++ b/table/tables/tables_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tablecodec/bench_test.go b/tablecodec/bench_test.go index b6e4afc663d1b..8175fedc2df38 100644 --- a/tablecodec/bench_test.go +++ b/tablecodec/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tablecodec/tablecodec.go b/tablecodec/tablecodec.go index de766831bc245..2fca105e8e259 100644 --- a/tablecodec/tablecodec.go +++ b/tablecodec/tablecodec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tablecodec/tablecodec_test.go b/tablecodec/tablecodec_test.go index ada284edc0bca..88f001ef5b173 100644 --- a/tablecodec/tablecodec_test.go +++ b/tablecodec/tablecodec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/cte_test/cte_test.go b/telemetry/cte_test/cte_test.go index 4278f4740a937..6eaff23ee88e2 100644 --- a/telemetry/cte_test/cte_test.go +++ b/telemetry/cte_test/cte_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data.go b/telemetry/data.go index fa1de90efe092..374551df7dd30 100644 --- a/telemetry/data.go +++ b/telemetry/data.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_cluster_hardware.go b/telemetry/data_cluster_hardware.go index 9070f06f024e5..611ae2e005384 100644 --- a/telemetry/data_cluster_hardware.go +++ b/telemetry/data_cluster_hardware.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_cluster_hardware_test.go b/telemetry/data_cluster_hardware_test.go index 0dbf0183a82fa..9980f08dc6b54 100644 --- a/telemetry/data_cluster_hardware_test.go +++ b/telemetry/data_cluster_hardware_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_cluster_info.go b/telemetry/data_cluster_info.go index 5497170e2794d..a1569c3e67634 100644 --- a/telemetry/data_cluster_info.go +++ b/telemetry/data_cluster_info.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_feature_usage.go b/telemetry/data_feature_usage.go index 7f6787f9a2120..a85dc3fd238aa 100644 --- a/telemetry/data_feature_usage.go +++ b/telemetry/data_feature_usage.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_feature_usage_test.go b/telemetry/data_feature_usage_test.go index 0c1b71f5e9cdf..bf1727b58e11f 100644 --- a/telemetry/data_feature_usage_test.go +++ b/telemetry/data_feature_usage_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_slow_query.go b/telemetry/data_slow_query.go index e3023e5211561..6a5b388021891 100644 --- a/telemetry/data_slow_query.go +++ b/telemetry/data_slow_query.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_telemetry_host_extra.go b/telemetry/data_telemetry_host_extra.go index 33c64a5654086..ad200dd1b2a3a 100644 --- a/telemetry/data_telemetry_host_extra.go +++ b/telemetry/data_telemetry_host_extra.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/data_window.go b/telemetry/data_window.go index 54e7f8bcc3daf..0da4d9bd4d82a 100644 --- a/telemetry/data_window.go +++ b/telemetry/data_window.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/id.go b/telemetry/id.go index c9369b05f514f..dac130826596a 100644 --- a/telemetry/id.go +++ b/telemetry/id.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/main_test.go b/telemetry/main_test.go index 7aa7be2965a79..f498d16a2d564 100644 --- a/telemetry/main_test.go +++ b/telemetry/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/status.go b/telemetry/status.go index b1ed12d7d762a..b41a59ebbe55d 100644 --- a/telemetry/status.go +++ b/telemetry/status.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/telemetry.go b/telemetry/telemetry.go index 85e6554ab5296..481d077087cba 100644 --- a/telemetry/telemetry.go +++ b/telemetry/telemetry.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/telemetry_test.go b/telemetry/telemetry_test.go index 28b976c2e33c2..6978c0ef42da3 100644 --- a/telemetry/telemetry_test.go +++ b/telemetry/telemetry_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/util.go b/telemetry/util.go index e53db64cd722b..bdbe8816201fc 100644 --- a/telemetry/util.go +++ b/telemetry/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/telemetry/util_test.go b/telemetry/util_test.go index f2f5c43ffe48b..a9c374d35ca52 100644 --- a/telemetry/util_test.go +++ b/telemetry/util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/testkit/asynctestkit.go b/testkit/asynctestkit.go index ffa1d86429643..907b940c4b378 100644 --- a/testkit/asynctestkit.go +++ b/testkit/asynctestkit.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/testkit/handle.go b/testkit/handle.go index 1082671d34c2f..f4a6befcd2d75 100644 --- a/testkit/handle.go +++ b/testkit/handle.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/testkit/mockstore.go b/testkit/mockstore.go index 7bad3b1caeb3b..8dc2152e52fad 100644 --- a/testkit/mockstore.go +++ b/testkit/mockstore.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/testkit/result.go b/testkit/result.go index a889334557c90..72ad99baf56de 100644 --- a/testkit/result.go +++ b/testkit/result.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/testkit/testdata/testdata.go b/testkit/testdata/testdata.go index 39d40ae18fdf4..7db57eb1dcbfb 100644 --- a/testkit/testdata/testdata.go +++ b/testkit/testdata/testdata.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/testkit/testkit.go b/testkit/testkit.go index acad311033517..19d515fb2eba7 100644 --- a/testkit/testkit.go +++ b/testkit/testkit.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tests/globalkilltest/Makefile b/tests/globalkilltest/Makefile index 82509521acd72..f64515f09d1ca 100644 --- a/tests/globalkilltest/Makefile +++ b/tests/globalkilltest/Makefile @@ -8,6 +8,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/tests/globalkilltest/global_kill_test.go b/tests/globalkilltest/global_kill_test.go index 2386a794e984f..1681fefe5b737 100644 --- a/tests/globalkilltest/global_kill_test.go +++ b/tests/globalkilltest/global_kill_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tests/globalkilltest/run-tests.sh b/tests/globalkilltest/run-tests.sh index 8b884e8b6c5f4..32216631d9624 100755 --- a/tests/globalkilltest/run-tests.sh +++ b/tests/globalkilltest/run-tests.sh @@ -9,6 +9,7 @@ # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/tests/graceshutdown/Makefile b/tests/graceshutdown/Makefile index f1f028514b1c0..01af95528e402 100644 --- a/tests/graceshutdown/Makefile +++ b/tests/graceshutdown/Makefile @@ -8,6 +8,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/tests/graceshutdown/graceshutdown_test.go b/tests/graceshutdown/graceshutdown_test.go index 9fd448435aa84..060a47e9a55e8 100644 --- a/tests/graceshutdown/graceshutdown_test.go +++ b/tests/graceshutdown/graceshutdown_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tests/graceshutdown/run-tests.sh b/tests/graceshutdown/run-tests.sh index a4def89eaf845..41b0a84bab8ee 100755 --- a/tests/graceshutdown/run-tests.sh +++ b/tests/graceshutdown/run-tests.sh @@ -9,6 +9,7 @@ # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/tidb-server/main.go b/tidb-server/main.go index 2e3315a0511e5..e65ef97ad1ef3 100644 --- a/tidb-server/main.go +++ b/tidb-server/main.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tidb-server/main_test.go b/tidb-server/main_test.go index 0ca87addaabb0..5ad6e1e32d004 100644 --- a/tidb-server/main_test.go +++ b/tidb-server/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/tools/check/check-errdoc.sh b/tools/check/check-errdoc.sh index 56d64ba282ca9..db1695bd9f976 100755 --- a/tools/check/check-errdoc.sh +++ b/tools/check/check-errdoc.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # diff --git a/tools/check/check-gogenerate.sh b/tools/check/check-gogenerate.sh index fb55ae571c753..e700d49a85927 100755 --- a/tools/check/check-gogenerate.sh +++ b/tools/check/check-gogenerate.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/tools/check/check-tidy.sh b/tools/check/check-tidy.sh index bb4e789db82c4..7c818fa05124a 100755 --- a/tools/check/check-tidy.sh +++ b/tools/check/check-tidy.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # diff --git a/tools/check/check_parser_replace.sh b/tools/check/check_parser_replace.sh index efb7ca27f4d6a..7ee27dd78dcad 100755 --- a/tools/check/check_parser_replace.sh +++ b/tools/check/check_parser_replace.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/tools/check/check_testSuite.sh b/tools/check/check_testSuite.sh index 5d9766ddf24fa..efe24decbce1f 100755 --- a/tools/check/check_testSuite.sh +++ b/tools/check/check_testSuite.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. diff --git a/types/benchmark_test.go b/types/benchmark_test.go index 91d3d5cce9f0e..1b1cfc1a24a07 100644 --- a/types/benchmark_test.go +++ b/types/benchmark_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/binary_literal.go b/types/binary_literal.go index 0da3e5c0bb982..93a0d59d4e873 100644 --- a/types/binary_literal.go +++ b/types/binary_literal.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/binary_literal_test.go b/types/binary_literal_test.go index 4847477f748d3..2e50e48d38185 100644 --- a/types/binary_literal_test.go +++ b/types/binary_literal_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/compare.go b/types/compare.go index f9fb7f84054c5..f43314c9185d3 100644 --- a/types/compare.go +++ b/types/compare.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/compare_test.go b/types/compare_test.go index 4e509ec55c2ee..df060e7e6ffd4 100644 --- a/types/compare_test.go +++ b/types/compare_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/const_test.go b/types/const_test.go index 131df7dd6f464..f2714d9cb8dfb 100644 --- a/types/const_test.go +++ b/types/const_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/convert.go b/types/convert.go index f3ab3c69ad807..f6b88597e9964 100644 --- a/types/convert.go +++ b/types/convert.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/convert_test.go b/types/convert_test.go index 664b919170c58..4f17cb2012420 100644 --- a/types/convert_test.go +++ b/types/convert_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/core_time.go b/types/core_time.go index 482156a44582e..161180dd3b166 100644 --- a/types/core_time.go +++ b/types/core_time.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/core_time_test.go b/types/core_time_test.go index f45dac6f58bd4..af0aab6c6d2f2 100644 --- a/types/core_time_test.go +++ b/types/core_time_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/datum.go b/types/datum.go index 02188dfc2dbe0..4368a6631e6f1 100644 --- a/types/datum.go +++ b/types/datum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/datum_eval.go b/types/datum_eval.go index a2d4d744b4d60..5e36248f24d0c 100644 --- a/types/datum_eval.go +++ b/types/datum_eval.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/datum_test.go b/types/datum_test.go index ef3dc177b0a16..eac684ba1c783 100644 --- a/types/datum_test.go +++ b/types/datum_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/enum.go b/types/enum.go index f80e3c3e6b07c..d21c63ab18c7b 100644 --- a/types/enum.go +++ b/types/enum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/enum_test.go b/types/enum_test.go index df97b649a72df..b37457368e0f7 100644 --- a/types/enum_test.go +++ b/types/enum_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/errors.go b/types/errors.go index bb006c921ff04..4df07a28b362a 100644 --- a/types/errors.go +++ b/types/errors.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/errors_test.go b/types/errors_test.go index ef472b702c0d1..93a46618e4f94 100644 --- a/types/errors_test.go +++ b/types/errors_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/etc.go b/types/etc.go index db1bc53c8e012..91563ba321aeb 100644 --- a/types/etc.go +++ b/types/etc.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/etc_test.go b/types/etc_test.go index aa15804185ff5..c4d8448d7c4e6 100644 --- a/types/etc_test.go +++ b/types/etc_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/eval_type.go b/types/eval_type.go index 3eb17cae856f9..798d7da7943e7 100644 --- a/types/eval_type.go +++ b/types/eval_type.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/explain_format.go b/types/explain_format.go index e574912308790..0a44d0ffa583a 100644 --- a/types/explain_format.go +++ b/types/explain_format.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/export_test.go b/types/export_test.go index ab09c4de70fa4..3f1b3c8d12345 100644 --- a/types/export_test.go +++ b/types/export_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/field_name.go b/types/field_name.go index 330c26041e544..f7d6771321714 100644 --- a/types/field_name.go +++ b/types/field_name.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/field_type.go b/types/field_type.go index 706d7cf595a7e..1799ec19392af 100644 --- a/types/field_type.go +++ b/types/field_type.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/field_type_test.go b/types/field_type_test.go index caab2e2df7b86..76cc46c33b04e 100644 --- a/types/field_type_test.go +++ b/types/field_type_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/format_test.go b/types/format_test.go index 269b1741d2028..e4b7149c3e8f5 100644 --- a/types/format_test.go +++ b/types/format_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/fsp.go b/types/fsp.go index a3b15c61389b6..ffad73c42a48c 100644 --- a/types/fsp.go +++ b/types/fsp.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/fsp_test.go b/types/fsp_test.go index f8e3b210b6300..dc62206e68b36 100644 --- a/types/fsp_test.go +++ b/types/fsp_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/helper.go b/types/helper.go index 4a12467fbc495..2da6bd7275d5f 100644 --- a/types/helper.go +++ b/types/helper.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/helper_test.go b/types/helper_test.go index 935b49c0ade69..6523f7af65cb9 100644 --- a/types/helper_test.go +++ b/types/helper_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/binary.go b/types/json/binary.go index 80647dabe7e85..8e51470a44496 100644 --- a/types/json/binary.go +++ b/types/json/binary.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/binary_functions.go b/types/json/binary_functions.go index 3e587bec08c85..897cc3e5d6e9a 100644 --- a/types/json/binary_functions.go +++ b/types/json/binary_functions.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/binary_functions_test.go b/types/json/binary_functions_test.go index 9b1662599bfc3..375a6100ed3a6 100644 --- a/types/json/binary_functions_test.go +++ b/types/json/binary_functions_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package json diff --git a/types/json/binary_test.go b/types/json/binary_test.go index d6a8c0bcf1c02..2d7fe58ee4eb8 100644 --- a/types/json/binary_test.go +++ b/types/json/binary_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/constants.go b/types/json/constants.go index 5a9d7cec19109..64abfe32a19a9 100644 --- a/types/json/constants.go +++ b/types/json/constants.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/main_test.go b/types/json/main_test.go index d80d8796a849f..a8cf27b5e9331 100644 --- a/types/json/main_test.go +++ b/types/json/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/path_expr.go b/types/json/path_expr.go index ede4ce11aa89b..9500d759daa9b 100644 --- a/types/json/path_expr.go +++ b/types/json/path_expr.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/json/path_expr_test.go b/types/json/path_expr_test.go index 5fa79dc5f4546..c4aa96333d719 100644 --- a/types/json/path_expr_test.go +++ b/types/json/path_expr_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/mydecimal.go b/types/mydecimal.go index b9428c5fef3ef..73fc0a346529b 100644 --- a/types/mydecimal.go +++ b/types/mydecimal.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/mydecimal_benchmark_test.go b/types/mydecimal_benchmark_test.go index 6f747c7913c83..206c30a383e5a 100644 --- a/types/mydecimal_benchmark_test.go +++ b/types/mydecimal_benchmark_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/mydecimal_test.go b/types/mydecimal_test.go index d4d4021a676d2..df2dfca5632a7 100644 --- a/types/mydecimal_test.go +++ b/types/mydecimal_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/overflow.go b/types/overflow.go index c1533d4a4451c..4b17c79984fd1 100644 --- a/types/overflow.go +++ b/types/overflow.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/overflow_test.go b/types/overflow_test.go index 78d214f39bf3b..dadb4848a57b8 100644 --- a/types/overflow_test.go +++ b/types/overflow_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/parser_driver/main_test.go b/types/parser_driver/main_test.go index 75cdb714aa82f..b1e6a35776689 100644 --- a/types/parser_driver/main_test.go +++ b/types/parser_driver/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/parser_driver/special_cmt_ctrl.go b/types/parser_driver/special_cmt_ctrl.go index 1a8c6d21cd87f..850f57e2b937a 100644 --- a/types/parser_driver/special_cmt_ctrl.go +++ b/types/parser_driver/special_cmt_ctrl.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/parser_driver/value_expr.go b/types/parser_driver/value_expr.go index d3f358994f5be..f89ce7f386df7 100644 --- a/types/parser_driver/value_expr.go +++ b/types/parser_driver/value_expr.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/parser_driver/value_expr_test.go b/types/parser_driver/value_expr_test.go index 695adcc9528dd..8972fe92792de 100644 --- a/types/parser_driver/value_expr_test.go +++ b/types/parser_driver/value_expr_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/set.go b/types/set.go index 9c369d8104d41..2be763951eca6 100644 --- a/types/set.go +++ b/types/set.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/set_test.go b/types/set_test.go index 37188740c2f46..7bd9675c7a115 100644 --- a/types/set_test.go +++ b/types/set_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/time.go b/types/time.go index ba6a52b52e42f..5f20a7b59d9db 100644 --- a/types/time.go +++ b/types/time.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/types/time_test.go b/types/time_test.go index 10dddd672866b..5aed6e42bb939 100644 --- a/types/time_test.go +++ b/types/time_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/admin/admin.go b/util/admin/admin.go index c35b6cd908a5d..040cd43601fe2 100644 --- a/util/admin/admin.go +++ b/util/admin/admin.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/admin/admin_integration_test.go b/util/admin/admin_integration_test.go index a19a31c9d6410..fc222265713ac 100644 --- a/util/admin/admin_integration_test.go +++ b/util/admin/admin_integration_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/admin/admin_test.go b/util/admin/admin_test.go index 889e6f7aa1e4e..9e9a40c64609f 100644 --- a/util/admin/admin_test.go +++ b/util/admin/admin_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/admin/main_test.go b/util/admin/main_test.go index 306c75aed0b32..b4242e21591ee 100644 --- a/util/admin/main_test.go +++ b/util/admin/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/arena/arena.go b/util/arena/arena.go index a8f8e1ab63950..62f83098ad922 100644 --- a/util/arena/arena.go +++ b/util/arena/arena.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/arena/arena_test.go b/util/arena/arena_test.go index a1fdb49677866..696afc5e594af 100644 --- a/util/arena/arena_test.go +++ b/util/arena/arena_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/arena/main_test.go b/util/arena/main_test.go index 31a940b60a3c5..020d3424cc9b8 100644 --- a/util/arena/main_test.go +++ b/util/arena/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/bitmap/concurrent.go b/util/bitmap/concurrent.go index cdc65ebcf9671..1ca214588cf78 100644 --- a/util/bitmap/concurrent.go +++ b/util/bitmap/concurrent.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/bitmap/concurrent_test.go b/util/bitmap/concurrent_test.go index 41d8ed270b2b9..41e0c4291f6bc 100644 --- a/util/bitmap/concurrent_test.go +++ b/util/bitmap/concurrent_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/bitmap/main_test.go b/util/bitmap/main_test.go index c6e4ac7842731..c32a6a56b6c2a 100644 --- a/util/bitmap/main_test.go +++ b/util/bitmap/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/checksum/checksum.go b/util/checksum/checksum.go index ef90f44e7cb00..7a3a1672abc9b 100644 --- a/util/checksum/checksum.go +++ b/util/checksum/checksum.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/checksum/checksum_test.go b/util/checksum/checksum_test.go index 3512b5f0dbc7d..6460cf5942208 100644 --- a/util/checksum/checksum_test.go +++ b/util/checksum/checksum_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/checksum/main_test.go b/util/checksum/main_test.go index 401ea56cf4cd1..4212ee3bc431c 100644 --- a/util/checksum/main_test.go +++ b/util/checksum/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/chunk.go b/util/chunk/chunk.go index 7a8b4fb8d7581..8f2323a52e4e1 100644 --- a/util/chunk/chunk.go +++ b/util/chunk/chunk.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/chunk_test.go b/util/chunk/chunk_test.go index 4bdf05c6e9bb9..a6438656b250a 100644 --- a/util/chunk/chunk_test.go +++ b/util/chunk/chunk_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/chunk_util.go b/util/chunk/chunk_util.go index b0d20b2c2af67..5e96d73e71fe9 100644 --- a/util/chunk/chunk_util.go +++ b/util/chunk/chunk_util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/chunk_util_test.go b/util/chunk/chunk_util_test.go index 1eaba85c43c53..510b5a482fa94 100644 --- a/util/chunk/chunk_util_test.go +++ b/util/chunk/chunk_util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/codec.go b/util/chunk/codec.go index 2858fb89b55a7..87ef95dafb5d0 100644 --- a/util/chunk/codec.go +++ b/util/chunk/codec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/codec_test.go b/util/chunk/codec_test.go index 3e8f1322e92b2..690cdf319983b 100644 --- a/util/chunk/codec_test.go +++ b/util/chunk/codec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/column.go b/util/chunk/column.go index 0de00f0f45e71..7e3f304df3cbb 100644 --- a/util/chunk/column.go +++ b/util/chunk/column.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/column_test.go b/util/chunk/column_test.go index d123498ab4c71..991425e8bfbfe 100644 --- a/util/chunk/column_test.go +++ b/util/chunk/column_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/compare.go b/util/chunk/compare.go index 2c93082ab7351..8b74a7051bb3c 100644 --- a/util/chunk/compare.go +++ b/util/chunk/compare.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/disk.go b/util/chunk/disk.go index a9f7eecec3641..d69f76fb623e3 100644 --- a/util/chunk/disk.go +++ b/util/chunk/disk.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/disk_test.go b/util/chunk/disk_test.go index a3cd929a4886f..f789d38750168 100644 --- a/util/chunk/disk_test.go +++ b/util/chunk/disk_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/iterator.go b/util/chunk/iterator.go index 7f01faf944c77..9b253b4bc576a 100644 --- a/util/chunk/iterator.go +++ b/util/chunk/iterator.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/iterator_test.go b/util/chunk/iterator_test.go index 3f757acc91ff9..59f40da0fe22e 100644 --- a/util/chunk/iterator_test.go +++ b/util/chunk/iterator_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/list.go b/util/chunk/list.go index 8ab7d27d86948..4f0b8417583b4 100644 --- a/util/chunk/list.go +++ b/util/chunk/list.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/list_test.go b/util/chunk/list_test.go index fc33341abaa62..6cd698274ed29 100644 --- a/util/chunk/list_test.go +++ b/util/chunk/list_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/main_test.go b/util/chunk/main_test.go index 23406b9689292..bc9a0900ec180 100644 --- a/util/chunk/main_test.go +++ b/util/chunk/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/mutrow.go b/util/chunk/mutrow.go index 46a9a3a1fe850..301bfcd70832c 100644 --- a/util/chunk/mutrow.go +++ b/util/chunk/mutrow.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/mutrow_test.go b/util/chunk/mutrow_test.go index d55603ff848c6..88184cf87ed6a 100644 --- a/util/chunk/mutrow_test.go +++ b/util/chunk/mutrow_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/pool.go b/util/chunk/pool.go index 2ae410000b852..4debe388157c2 100644 --- a/util/chunk/pool.go +++ b/util/chunk/pool.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/pool_test.go b/util/chunk/pool_test.go index 0cdc34a2ab96f..c36f00ac2381d 100644 --- a/util/chunk/pool_test.go +++ b/util/chunk/pool_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/row.go b/util/chunk/row.go index 8494df6f8d4c9..b16c24fcd2bd6 100644 --- a/util/chunk/row.go +++ b/util/chunk/row.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/row_container.go b/util/chunk/row_container.go index 0ef0b573e1bb2..9059cb665b7e7 100644 --- a/util/chunk/row_container.go +++ b/util/chunk/row_container.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/chunk/row_container_test.go b/util/chunk/row_container_test.go index a39346e34ff80..0e192950cdd6f 100644 --- a/util/chunk/row_container_test.go +++ b/util/chunk/row_container_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/bench_test.go b/util/codec/bench_test.go index 6e6034f73760c..5273325f44231 100644 --- a/util/codec/bench_test.go +++ b/util/codec/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/bytes.go b/util/codec/bytes.go index 118c01ba0d1c8..c061146ba191a 100644 --- a/util/codec/bytes.go +++ b/util/codec/bytes.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/bytes_test.go b/util/codec/bytes_test.go index 0c75dfc49d847..5f108367074b4 100644 --- a/util/codec/bytes_test.go +++ b/util/codec/bytes_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/codec.go b/util/codec/codec.go index 2f9ce666ed643..4c09f9dc5ec89 100644 --- a/util/codec/codec.go +++ b/util/codec/codec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/codec_test.go b/util/codec/codec_test.go index 204590421a91e..dd5b582b0cb43 100644 --- a/util/codec/codec_test.go +++ b/util/codec/codec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/collation_test.go b/util/codec/collation_test.go index dfc37ccb2367b..2713133168fdc 100644 --- a/util/codec/collation_test.go +++ b/util/codec/collation_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/decimal.go b/util/codec/decimal.go index 92cdb04f2f662..68f0bd31799e8 100644 --- a/util/codec/decimal.go +++ b/util/codec/decimal.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/decimal_test.go b/util/codec/decimal_test.go index d9d0441b61a75..1c01914e90092 100644 --- a/util/codec/decimal_test.go +++ b/util/codec/decimal_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/float.go b/util/codec/float.go index 39ce634459cc6..df8d697463cbe 100644 --- a/util/codec/float.go +++ b/util/codec/float.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/main_test.go b/util/codec/main_test.go index c8bac25ed92ab..cdc978b14d253 100644 --- a/util/codec/main_test.go +++ b/util/codec/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/codec/number.go b/util/codec/number.go index 47912e813b2fc..02d2c02d43003 100644 --- a/util/codec/number.go +++ b/util/codec/number.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/bin.go b/util/collate/bin.go index 637ef745248e5..c43767ee88971 100644 --- a/util/collate/bin.go +++ b/util/collate/bin.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/collate.go b/util/collate/collate.go index 78540ea48f220..84ea1856f9fe2 100644 --- a/util/collate/collate.go +++ b/util/collate/collate.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/collate_test.go b/util/collate/collate_test.go index 103a74e46cbac..0b779cfc2fcaa 100644 --- a/util/collate/collate_test.go +++ b/util/collate/collate_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/general_ci.go b/util/collate/general_ci.go index bfa94148610d4..ee1cb4980f4bf 100644 --- a/util/collate/general_ci.go +++ b/util/collate/general_ci.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/main_test.go b/util/collate/main_test.go index 08be28cdf654a..e82127b7013c9 100644 --- a/util/collate/main_test.go +++ b/util/collate/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/pinyin_tidb_as_cs.go b/util/collate/pinyin_tidb_as_cs.go index 565680e2cff56..c0b2bab04f380 100644 --- a/util/collate/pinyin_tidb_as_cs.go +++ b/util/collate/pinyin_tidb_as_cs.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/unicode_ci.go b/util/collate/unicode_ci.go index aceffeafd9783..0e80669531f4f 100644 --- a/util/collate/unicode_ci.go +++ b/util/collate/unicode_ci.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/collate/unicode_ci_data.go b/util/collate/unicode_ci_data.go index 5248c02a96732..36d81cca64e76 100644 --- a/util/collate/unicode_ci_data.go +++ b/util/collate/unicode_ci_data.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/cteutil/main_test.go b/util/cteutil/main_test.go index 774e099c33e13..f882348ac05cc 100644 --- a/util/cteutil/main_test.go +++ b/util/cteutil/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/cteutil/storage.go b/util/cteutil/storage.go index d2607892db62c..19b1bd5151fdc 100644 --- a/util/cteutil/storage.go +++ b/util/cteutil/storage.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/cteutil/storage_test.go b/util/cteutil/storage_test.go index 0ec29a691026f..8e553544dcefb 100644 --- a/util/cteutil/storage_test.go +++ b/util/cteutil/storage_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/dbterror/main_test.go b/util/dbterror/main_test.go index 43bbc23005455..7879e9d1a6904 100644 --- a/util/dbterror/main_test.go +++ b/util/dbterror/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/dbterror/terror.go b/util/dbterror/terror.go index 3f8918efa9ddf..c66b9cea665c8 100644 --- a/util/dbterror/terror.go +++ b/util/dbterror/terror.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/dbterror/terror_test.go b/util/dbterror/terror_test.go index da507f34c5b9a..aae2d9688549d 100644 --- a/util/dbterror/terror_test.go +++ b/util/dbterror/terror_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/deadlockhistory/deadlock_history.go b/util/deadlockhistory/deadlock_history.go index 5509c883f50e6..97bab64928775 100644 --- a/util/deadlockhistory/deadlock_history.go +++ b/util/deadlockhistory/deadlock_history.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/deadlockhistory/deadlock_history_test.go b/util/deadlockhistory/deadlock_history_test.go index 63d4e05ae01fd..ccd10b6c1f493 100644 --- a/util/deadlockhistory/deadlock_history_test.go +++ b/util/deadlockhistory/deadlock_history_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/deadlockhistory/main_test.go b/util/deadlockhistory/main_test.go index 3327030a8ac87..f5d8af7b1f799 100644 --- a/util/deadlockhistory/main_test.go +++ b/util/deadlockhistory/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/disjointset/int_set.go b/util/disjointset/int_set.go index 0881b4aa1b03f..05846e3840850 100644 --- a/util/disjointset/int_set.go +++ b/util/disjointset/int_set.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/disjointset/int_set_test.go b/util/disjointset/int_set_test.go index 3c6072c2414f6..4f6753a255d4d 100644 --- a/util/disjointset/int_set_test.go +++ b/util/disjointset/int_set_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/disjointset/main_test.go b/util/disjointset/main_test.go index 2d5559e618905..9ae4a8269842b 100644 --- a/util/disjointset/main_test.go +++ b/util/disjointset/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/disk/tempDir.go b/util/disk/tempDir.go index 7c0a1a9d45239..bb56d3338aadc 100644 --- a/util/disk/tempDir.go +++ b/util/disk/tempDir.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/disk/tempDir_test.go b/util/disk/tempDir_test.go index 436f53a4c4a7f..9081d83d759be 100644 --- a/util/disk/tempDir_test.go +++ b/util/disk/tempDir_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/disk/tracker.go b/util/disk/tracker.go index bcdd13720a8fe..57502ebeab7fc 100644 --- a/util/disk/tracker.go +++ b/util/disk/tracker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/domainutil/repair_vars.go b/util/domainutil/repair_vars.go index f45081e96fa53..da41d53254665 100644 --- a/util/domainutil/repair_vars.go +++ b/util/domainutil/repair_vars.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/encrypt/aes.go b/util/encrypt/aes.go index f158c60f2ed66..6a61f85a14d9a 100644 --- a/util/encrypt/aes.go +++ b/util/encrypt/aes.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/encrypt/aes_layer.go b/util/encrypt/aes_layer.go index fe67e659299ed..e2bd80f6ae179 100644 --- a/util/encrypt/aes_layer.go +++ b/util/encrypt/aes_layer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/encrypt/aes_layer_test.go b/util/encrypt/aes_layer_test.go index 4bee05f02546c..9005660fe3caa 100644 --- a/util/encrypt/aes_layer_test.go +++ b/util/encrypt/aes_layer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/encrypt/aes_test.go b/util/encrypt/aes_test.go index 99e491815d946..e0dbce3417c2a 100644 --- a/util/encrypt/aes_test.go +++ b/util/encrypt/aes_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/encrypt/crypt.go b/util/encrypt/crypt.go index 3531fada7c34f..0adc2e419166f 100644 --- a/util/encrypt/crypt.go +++ b/util/encrypt/crypt.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/encrypt/crypt_test.go b/util/encrypt/crypt_test.go index d99136f6209dd..e168d7482c45f 100644 --- a/util/encrypt/crypt_test.go +++ b/util/encrypt/crypt_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/execdetails/execdetails.go b/util/execdetails/execdetails.go index e17e12ffdac78..4c3b1d9ddfd51 100644 --- a/util/execdetails/execdetails.go +++ b/util/execdetails/execdetails.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/execdetails/execdetails_test.go b/util/execdetails/execdetails_test.go index 47829fab53952..2fa5f4dd50df4 100644 --- a/util/execdetails/execdetails_test.go +++ b/util/execdetails/execdetails_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/execdetails/main_test.go b/util/execdetails/main_test.go index 6e15bd2767c81..a55b06c98e775 100644 --- a/util/execdetails/main_test.go +++ b/util/execdetails/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package execdetails diff --git a/util/expensivequery/expensivequerey_test.go b/util/expensivequery/expensivequerey_test.go index 71ce4793d6fb1..dc7ab46282f54 100644 --- a/util/expensivequery/expensivequerey_test.go +++ b/util/expensivequery/expensivequerey_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/expensivequery/expensivequery.go b/util/expensivequery/expensivequery.go index 38ef0379183ef..f30bca5db29ce 100644 --- a/util/expensivequery/expensivequery.go +++ b/util/expensivequery/expensivequery.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/expensivequery/memory_usage_alarm.go b/util/expensivequery/memory_usage_alarm.go index dbe13ccb973bc..391893e928bdd 100644 --- a/util/expensivequery/memory_usage_alarm.go +++ b/util/expensivequery/memory_usage_alarm.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/fastrand/main_test.go b/util/fastrand/main_test.go index 97a85d8376992..fb2255c79e252 100644 --- a/util/fastrand/main_test.go +++ b/util/fastrand/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/fastrand/random.go b/util/fastrand/random.go index 2766d90d176b9..efab152a19d3a 100644 --- a/util/fastrand/random.go +++ b/util/fastrand/random.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/fastrand/random_test.go b/util/fastrand/random_test.go index 4d5d18e932bb3..57587a63c6f5b 100644 --- a/util/fastrand/random_test.go +++ b/util/fastrand/random_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/filesort/filesort.go b/util/filesort/filesort.go index 509ab0f876adc..f7f77ac1b9c8a 100644 --- a/util/filesort/filesort.go +++ b/util/filesort/filesort.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/filesort/filesort_test.go b/util/filesort/filesort_test.go index d518f28e9ac1d..7d71c55337813 100644 --- a/util/filesort/filesort_test.go +++ b/util/filesort/filesort_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/format/format.go b/util/format/format.go index 0a14a6d362650..4e19244a42cb6 100644 --- a/util/format/format.go +++ b/util/format/format.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/format/format_test.go b/util/format/format_test.go index b0ea2061e18f2..efe33b75f11c8 100644 --- a/util/format/format_test.go +++ b/util/format/format_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/format/main_test.go b/util/format/main_test.go index bcb6bc03de850..66294a0dbadfb 100644 --- a/util/format/main_test.go +++ b/util/format/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/gcutil/gcutil.go b/util/gcutil/gcutil.go index f3537889fb8e0..ab88f840dded6 100644 --- a/util/gcutil/gcutil.go +++ b/util/gcutil/gcutil.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/generatedexpr/gen_expr_test.go b/util/generatedexpr/gen_expr_test.go index 51c28e7d069cc..1c0493e30cd49 100644 --- a/util/generatedexpr/gen_expr_test.go +++ b/util/generatedexpr/gen_expr_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/generatedexpr/generated_expr.go b/util/generatedexpr/generated_expr.go index 3414296baf66b..7a07ea31b9eab 100644 --- a/util/generatedexpr/generated_expr.go +++ b/util/generatedexpr/generated_expr.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/generatedexpr/main_test.go b/util/generatedexpr/main_test.go index b30d0f5d32e23..d5418deebddcf 100644 --- a/util/generatedexpr/main_test.go +++ b/util/generatedexpr/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/gogc.go b/util/gogc.go index 67d69a476848b..044fb45131573 100644 --- a/util/gogc.go +++ b/util/gogc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/hack/hack.go b/util/hack/hack.go index 849b64e8c0e4e..60ad6aab9adf4 100644 --- a/util/hack/hack.go +++ b/util/hack/hack.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/hack/hack_test.go b/util/hack/hack_test.go index 9443115eb9cf8..bc6e2dffc7d51 100644 --- a/util/hack/hack_test.go +++ b/util/hack/hack_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/hack/main_test.go b/util/hack/main_test.go index 7ba1c66748f4f..aaa708c42a033 100644 --- a/util/hack/main_test.go +++ b/util/hack/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/hint/hint_processor.go b/util/hint/hint_processor.go index 0cf43f7d01e33..e61e1846132e0 100644 --- a/util/hint/hint_processor.go +++ b/util/hint/hint_processor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/israce/israce.go b/util/israce/israce.go index b85e49b2597ff..0e2bd2580159f 100644 --- a/util/israce/israce.go +++ b/util/israce/israce.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/israce/norace.go b/util/israce/norace.go index 2b5fc74abeca9..8043db3cd3ac2 100644 --- a/util/israce/norace.go +++ b/util/israce/norace.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/keydecoder/keydecoder.go b/util/keydecoder/keydecoder.go index f5c84d9c6627c..185fd6077499d 100644 --- a/util/keydecoder/keydecoder.go +++ b/util/keydecoder/keydecoder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/keydecoder/keydecoder_test.go b/util/keydecoder/keydecoder_test.go index 691f084bbe3b9..3d6e7ebad27a0 100644 --- a/util/keydecoder/keydecoder_test.go +++ b/util/keydecoder/keydecoder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/keydecoder/main_test.go b/util/keydecoder/main_test.go index 4f4ed6bc7b73f..6900f8e304ec0 100644 --- a/util/keydecoder/main_test.go +++ b/util/keydecoder/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/kvcache/main_test.go b/util/kvcache/main_test.go index caefb0eeb4beb..90e09a3a45e77 100644 --- a/util/kvcache/main_test.go +++ b/util/kvcache/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/kvcache/simple_lru.go b/util/kvcache/simple_lru.go index aec402adb09ed..eb6ed426f02f3 100644 --- a/util/kvcache/simple_lru.go +++ b/util/kvcache/simple_lru.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/kvcache/simple_lru_test.go b/util/kvcache/simple_lru_test.go index 98f92cc686b5f..3498be84174b3 100644 --- a/util/kvcache/simple_lru_test.go +++ b/util/kvcache/simple_lru_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/localpool/localpool.go b/util/localpool/localpool.go index 0f77e6f02c17b..ec7bba4547396 100644 --- a/util/localpool/localpool.go +++ b/util/localpool/localpool.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/localpool/localpool_norace.go b/util/localpool/localpool_norace.go index c509ae5c552e1..ffb875c800d4f 100644 --- a/util/localpool/localpool_norace.go +++ b/util/localpool/localpool_norace.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/localpool/localpool_race.go b/util/localpool/localpool_race.go index e204557d0d9bb..da45876634b40 100644 --- a/util/localpool/localpool_race.go +++ b/util/localpool/localpool_race.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/localpool/localpool_test.go b/util/localpool/localpool_test.go index 938e30b5d6284..7a0530b89db1a 100644 --- a/util/localpool/localpool_test.go +++ b/util/localpool/localpool_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/localpool/main_test.go b/util/localpool/main_test.go index 9b1110e85c45d..fb21dcc42f4f5 100644 --- a/util/localpool/main_test.go +++ b/util/localpool/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/logutil/hex.go b/util/logutil/hex.go index 1bff4ec591404..2794fa87a206c 100644 --- a/util/logutil/hex.go +++ b/util/logutil/hex.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/logutil/hex_test.go b/util/logutil/hex_test.go index 6ed350517924a..c9ce8713fe7ea 100644 --- a/util/logutil/hex_test.go +++ b/util/logutil/hex_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/logutil/log.go b/util/logutil/log.go index 66bee73e69fb3..5f522ee098e6b 100644 --- a/util/logutil/log.go +++ b/util/logutil/log.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/logutil/log_test.go b/util/logutil/log_test.go index 4c5232c50cd1f..c8c4c89c3f4f2 100644 --- a/util/logutil/log_test.go +++ b/util/logutil/log_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/logutil/main_test.go b/util/logutil/main_test.go index 2a8d44c950f3a..7d833f0bd86ef 100644 --- a/util/logutil/main_test.go +++ b/util/logutil/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/main_test.go b/util/main_test.go index 75990b684f303..1b930670688d0 100644 --- a/util/main_test.go +++ b/util/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/math/main_test.go b/util/math/main_test.go index b280d55f3fddd..c10b457e497a8 100644 --- a/util/math/main_test.go +++ b/util/math/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/math/math.go b/util/math/math.go index a23f88110d1b5..68ed5f9c7ae77 100644 --- a/util/math/math.go +++ b/util/math/math.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/math/math_test.go b/util/math/math_test.go index 28048844dac1c..39d3e4241d7e1 100644 --- a/util/math/math_test.go +++ b/util/math/math_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/memory/action.go b/util/memory/action.go index fbbcae15fdca1..b4c9fb18f4277 100644 --- a/util/memory/action.go +++ b/util/memory/action.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/memory/bench_test.go b/util/memory/bench_test.go index 3de9a5f24c748..10e4b312de565 100644 --- a/util/memory/bench_test.go +++ b/util/memory/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/memory/main_test.go b/util/memory/main_test.go index 77294993e5a4c..03d7f7d266e77 100644 --- a/util/memory/main_test.go +++ b/util/memory/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/memory/meminfo.go b/util/memory/meminfo.go index 3ba93e826ad5e..5392f4956d944 100644 --- a/util/memory/meminfo.go +++ b/util/memory/meminfo.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/memory/tracker.go b/util/memory/tracker.go index 64b5552debefc..cda7a67ad278b 100644 --- a/util/memory/tracker.go +++ b/util/memory/tracker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/memory/tracker_test.go b/util/memory/tracker_test.go index 1ae045eb2a6c3..a49ffe6e5d1c3 100644 --- a/util/memory/tracker_test.go +++ b/util/memory/tracker_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/misc.go b/util/misc.go index aab8605f452e6..5555e257d69c7 100644 --- a/util/misc.go +++ b/util/misc.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/misc_test.go b/util/misc_test.go index b16c547e37fcb..fdd6e2b5ca341 100644 --- a/util/misc_test.go +++ b/util/misc_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mock/client.go b/util/mock/client.go index 72a8422be7509..5dc4c8f90945d 100644 --- a/util/mock/client.go +++ b/util/mock/client.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mock/context.go b/util/mock/context.go index 55909570e4b89..64009a6f967d6 100644 --- a/util/mock/context.go +++ b/util/mock/context.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mock/main_test.go b/util/mock/main_test.go index 5eb43faf2259f..11d845761a1ec 100644 --- a/util/mock/main_test.go +++ b/util/mock/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mock/mock_test.go b/util/mock/mock_test.go index 2a41d3b6c681b..764fc9c2f32f1 100644 --- a/util/mock/mock_test.go +++ b/util/mock/mock_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mock/store.go b/util/mock/store.go index cec973c9d386f..1037a763591fb 100644 --- a/util/mock/store.go +++ b/util/mock/store.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mvmap/fnv.go b/util/mvmap/fnv.go index d9e27aaafd107..c67637a41d3c1 100644 --- a/util/mvmap/fnv.go +++ b/util/mvmap/fnv.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mvmap/mvmap.go b/util/mvmap/mvmap.go index c26e95a1e9c2b..055397a26809b 100644 --- a/util/mvmap/mvmap.go +++ b/util/mvmap/mvmap.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/mvmap/mvmap_test.go b/util/mvmap/mvmap_test.go index b3a241919c9fa..75817d74692b7 100644 --- a/util/mvmap/mvmap_test.go +++ b/util/mvmap/mvmap_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/parser/ast.go b/util/parser/ast.go index de460f24378fd..b05b13b6a4945 100644 --- a/util/parser/ast.go +++ b/util/parser/ast.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/parser/ast_test.go b/util/parser/ast_test.go index 177caf16f1978..276a2b7c31767 100644 --- a/util/parser/ast_test.go +++ b/util/parser/ast_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/parser/parser.go b/util/parser/parser.go index 101b4bd6f5a7a..441ddbcf26183 100644 --- a/util/parser/parser.go +++ b/util/parser/parser.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/parser/parser_test.go b/util/parser/parser_test.go index c92fa76a11620..9d5f8d4646103 100644 --- a/util/parser/parser_test.go +++ b/util/parser/parser_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/pdapi/const.go b/util/pdapi/const.go index 314cffcc8887b..29428b477c878 100644 --- a/util/pdapi/const.go +++ b/util/pdapi/const.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/plancodec/codec.go b/util/plancodec/codec.go index 65fd2c64b899f..28284020aca16 100644 --- a/util/plancodec/codec.go +++ b/util/plancodec/codec.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/plancodec/codec_test.go b/util/plancodec/codec_test.go index 67a8a89787c90..1b8af9f0b14dc 100644 --- a/util/plancodec/codec_test.go +++ b/util/plancodec/codec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/plancodec/id.go b/util/plancodec/id.go index b0e8e16e2de62..b6f699c3b9837 100644 --- a/util/plancodec/id.go +++ b/util/plancodec/id.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/plancodec/id_test.go b/util/plancodec/id_test.go index 860aa9eb43580..8c2590f5e28b9 100644 --- a/util/plancodec/id_test.go +++ b/util/plancodec/id_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/plancodec/main_test.go b/util/plancodec/main_test.go index 18a8e69e36290..31620cb293173 100644 --- a/util/plancodec/main_test.go +++ b/util/plancodec/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/prefix_helper.go b/util/prefix_helper.go index 3bb74d07f1c49..89553065d3bcb 100644 --- a/util/prefix_helper.go +++ b/util/prefix_helper.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/prefix_helper_test.go b/util/prefix_helper_test.go index 374f5064d6e28..d4fd2b539cc7c 100644 --- a/util/prefix_helper_test.go +++ b/util/prefix_helper_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/printer/main_test.go b/util/printer/main_test.go index e2346d73db26a..ae6fbd3e45509 100644 --- a/util/printer/main_test.go +++ b/util/printer/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/printer/printer.go b/util/printer/printer.go index 3c5217503896f..38c8441f5c324 100644 --- a/util/printer/printer.go +++ b/util/printer/printer.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/printer/printer_test.go b/util/printer/printer_test.go index 51002490fddec..38c73fabbd7eb 100644 --- a/util/printer/printer_test.go +++ b/util/printer/printer_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/processinfo.go b/util/processinfo.go index 64f98a6c06abb..61f918e6dc2a8 100644 --- a/util/processinfo.go +++ b/util/processinfo.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/processinfo_test.go b/util/processinfo_test.go index eca0c7ac998d5..8edaeb7f4e6a2 100644 --- a/util/processinfo_test.go +++ b/util/processinfo_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/flamegraph.go b/util/profile/flamegraph.go index 9a0d60c7e5a0c..2e356279725e7 100644 --- a/util/profile/flamegraph.go +++ b/util/profile/flamegraph.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/flamegraph_test.go b/util/profile/flamegraph_test.go index 8594308b0d549..634e1286ef8cf 100644 --- a/util/profile/flamegraph_test.go +++ b/util/profile/flamegraph_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/main_test.go b/util/profile/main_test.go index aaa8444f2c9fe..cd5b368a787de 100644 --- a/util/profile/main_test.go +++ b/util/profile/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/profile.go b/util/profile/profile.go index ff817032617fe..3746aa4947d63 100644 --- a/util/profile/profile.go +++ b/util/profile/profile.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/profile_test.go b/util/profile/profile_test.go index 78e6586412534..e8cff9c8daaaa 100644 --- a/util/profile/profile_test.go +++ b/util/profile/profile_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/trackerRecorder.go b/util/profile/trackerRecorder.go index 7c449ffa9113c..c8caeb161acf7 100644 --- a/util/profile/trackerRecorder.go +++ b/util/profile/trackerRecorder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/profile/trackerrecorder_test.go b/util/profile/trackerrecorder_test.go index ef0cb34c779ec..d1936673cfef8 100644 --- a/util/profile/trackerrecorder_test.go +++ b/util/profile/trackerrecorder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/checker.go b/util/ranger/checker.go index 60f651af1945d..926a953d65e5c 100644 --- a/util/ranger/checker.go +++ b/util/ranger/checker.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/detacher.go b/util/ranger/detacher.go index 6a07c531275cf..454e4bce7ea93 100644 --- a/util/ranger/detacher.go +++ b/util/ranger/detacher.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/main_test.go b/util/ranger/main_test.go index c14df41990630..461eb57e7393b 100644 --- a/util/ranger/main_test.go +++ b/util/ranger/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/points.go b/util/ranger/points.go index 92b2aafca814a..672af5d8bcc94 100644 --- a/util/ranger/points.go +++ b/util/ranger/points.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/ranger.go b/util/ranger/ranger.go index 44f07be6fe69b..a41aa9c34dd77 100644 --- a/util/ranger/ranger.go +++ b/util/ranger/ranger.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/ranger_test.go b/util/ranger/ranger_test.go index 23f46afbaa7a4..53ac42e26d3f9 100644 --- a/util/ranger/ranger_test.go +++ b/util/ranger/ranger_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/types.go b/util/ranger/types.go index 26548ac1815bb..4452e88ee6784 100644 --- a/util/ranger/types.go +++ b/util/ranger/types.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/ranger/types_test.go b/util/ranger/types_test.go index a229e3889a532..99cca8336932e 100644 --- a/util/ranger/types_test.go +++ b/util/ranger/types_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/resourcegrouptag/main_test.go b/util/resourcegrouptag/main_test.go index 7880492b5ef13..9bd1c8df16cd4 100644 --- a/util/resourcegrouptag/main_test.go +++ b/util/resourcegrouptag/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/resourcegrouptag/resource_group_tag_test.go b/util/resourcegrouptag/resource_group_tag_test.go index 19ecb8ac3578a..51ab5223f5e86 100644 --- a/util/resourcegrouptag/resource_group_tag_test.go +++ b/util/resourcegrouptag/resource_group_tag_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowDecoder/decoder.go b/util/rowDecoder/decoder.go index 35413904fe3d8..0de9e91ce5f76 100644 --- a/util/rowDecoder/decoder.go +++ b/util/rowDecoder/decoder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowDecoder/decoder_test.go b/util/rowDecoder/decoder_test.go index f9c0d92e28250..5ecfa5282e414 100644 --- a/util/rowDecoder/decoder_test.go +++ b/util/rowDecoder/decoder_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowDecoder/main_test.go b/util/rowDecoder/main_test.go index f3ed3ee715f43..0e93bf3104a9b 100644 --- a/util/rowDecoder/main_test.go +++ b/util/rowDecoder/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/bench_test.go b/util/rowcodec/bench_test.go index 9602f7fa0adfa..8a8d9b3adb782 100644 --- a/util/rowcodec/bench_test.go +++ b/util/rowcodec/bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/common.go b/util/rowcodec/common.go index 0df891024ddfb..5e8e54e83f45a 100644 --- a/util/rowcodec/common.go +++ b/util/rowcodec/common.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/decoder.go b/util/rowcodec/decoder.go index 0efd50ecaf27c..87909c1445267 100644 --- a/util/rowcodec/decoder.go +++ b/util/rowcodec/decoder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/encoder.go b/util/rowcodec/encoder.go index 1c222f3104beb..c89b0b4a519d6 100644 --- a/util/rowcodec/encoder.go +++ b/util/rowcodec/encoder.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/export_test.go b/util/rowcodec/export_test.go index 39862dc91a5dc..47cd7b73eee6f 100644 --- a/util/rowcodec/export_test.go +++ b/util/rowcodec/export_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/row.go b/util/rowcodec/row.go index 8eb07dfbde9e9..2cafab6c875a9 100644 --- a/util/rowcodec/row.go +++ b/util/rowcodec/row.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/rowcodec/rowcodec_test.go b/util/rowcodec/rowcodec_test.go index b676127abf379..c7ff304705721 100644 --- a/util/rowcodec/rowcodec_test.go +++ b/util/rowcodec/rowcodec_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/selection/main_test.go b/util/selection/main_test.go index a3e8b9afa5ecc..91e31ed6c5bb3 100644 --- a/util/selection/main_test.go +++ b/util/selection/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/selection/selection.go b/util/selection/selection.go index db1a801cec44f..987e798d77096 100644 --- a/util/selection/selection.go +++ b/util/selection/selection.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/selection/selection_test.go b/util/selection/selection_test.go index ad23d9d2ca82a..e8eb5ffed0336 100644 --- a/util/selection/selection_test.go +++ b/util/selection/selection_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sem/main_test.go b/util/sem/main_test.go index 608f6625343df..81af71ff59d39 100644 --- a/util/sem/main_test.go +++ b/util/sem/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sem/sem.go b/util/sem/sem.go index 6a29c81c24a93..0012b24927cab 100644 --- a/util/sem/sem.go +++ b/util/sem/sem.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sem/sem_test.go b/util/sem/sem_test.go index 0025dd9109ac0..b9eb1a7400135 100644 --- a/util/sem/sem_test.go +++ b/util/sem/sem_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/float64_set.go b/util/set/float64_set.go index 31760962317f3..b8d3cee2a9c82 100644 --- a/util/set/float64_set.go +++ b/util/set/float64_set.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/float64_set_test.go b/util/set/float64_set_test.go index b6f48384f405f..062f3ad918568 100644 --- a/util/set/float64_set_test.go +++ b/util/set/float64_set_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/int_set.go b/util/set/int_set.go index 9fde4ebc06c9d..c83707004eb80 100644 --- a/util/set/int_set.go +++ b/util/set/int_set.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/int_set_test.go b/util/set/int_set_test.go index 8c760380b566b..d4cbcd8a6006e 100644 --- a/util/set/int_set_test.go +++ b/util/set/int_set_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/main_test.go b/util/set/main_test.go index 47e1233f5cc6f..d119da45ccb6b 100644 --- a/util/set/main_test.go +++ b/util/set/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/set_with_memory_usage.go b/util/set/set_with_memory_usage.go index da4047a0c52b6..1b078122123cd 100644 --- a/util/set/set_with_memory_usage.go +++ b/util/set/set_with_memory_usage.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/string_set.go b/util/set/string_set.go index 1bd0dbf77dce5..a008612b6ee12 100644 --- a/util/set/string_set.go +++ b/util/set/string_set.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/set/string_set_test.go b/util/set/string_set_test.go index 35a56662f2691..4f16f834020c8 100644 --- a/util/set/string_set_test.go +++ b/util/set/string_set_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/signal/signal_posix.go b/util/signal/signal_posix.go index 83036c57999c2..c36f8605bb600 100644 --- a/util/signal/signal_posix.go +++ b/util/signal/signal_posix.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build linux darwin freebsd unix diff --git a/util/signal/signal_wasm.go b/util/signal/signal_wasm.go index e177c5ef1845a..69c19c73b1da0 100644 --- a/util/signal/signal_wasm.go +++ b/util/signal/signal_wasm.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/signal/signal_windows.go b/util/signal/signal_windows.go index b93382f5ebaf7..a6bf2da1fe547 100644 --- a/util/signal/signal_windows.go +++ b/util/signal/signal_windows.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build windows diff --git a/util/sli/sli.go b/util/sli/sli.go index 056a31a645b2c..3332e06464e47 100644 --- a/util/sli/sli.go +++ b/util/sli/sli.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/slice/main_test.go b/util/slice/main_test.go index 7abf6551f28f7..2da7631bca34f 100644 --- a/util/slice/main_test.go +++ b/util/slice/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/slice/slice.go b/util/slice/slice.go index 9aded94ffc6fc..078772d58c15a 100644 --- a/util/slice/slice.go +++ b/util/slice/slice.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/slice/slice_test.go b/util/slice/slice_test.go index 9905d5604ffa1..318309f46d3d1 100644 --- a/util/slice/slice_test.go +++ b/util/slice/slice_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sqlexec/main_test.go b/util/sqlexec/main_test.go index 1a7091e6b32b1..7aa194b084bf0 100644 --- a/util/sqlexec/main_test.go +++ b/util/sqlexec/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sqlexec/restricted_sql_executor.go b/util/sqlexec/restricted_sql_executor.go index 296d53d612237..2ccfe1762c011 100644 --- a/util/sqlexec/restricted_sql_executor.go +++ b/util/sqlexec/restricted_sql_executor.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sqlexec/utils.go b/util/sqlexec/utils.go index 1ffc29b72d8e0..8fa6bdd4d804a 100644 --- a/util/sqlexec/utils.go +++ b/util/sqlexec/utils.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sqlexec/utils_test.go b/util/sqlexec/utils_test.go index 2f46682b0f07d..ef74f9d633436 100644 --- a/util/sqlexec/utils_test.go +++ b/util/sqlexec/utils_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/evicted.go b/util/stmtsummary/evicted.go index 4d79bb5d57e11..8a48739e93777 100644 --- a/util/stmtsummary/evicted.go +++ b/util/stmtsummary/evicted.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/evicted_test.go b/util/stmtsummary/evicted_test.go index b47bc04a1545e..728b0818f4dd5 100644 --- a/util/stmtsummary/evicted_test.go +++ b/util/stmtsummary/evicted_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/main_test.go b/util/stmtsummary/main_test.go index be7863aa4a711..99143834fd420 100644 --- a/util/stmtsummary/main_test.go +++ b/util/stmtsummary/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/reader.go b/util/stmtsummary/reader.go index 0296344f99c14..16e88550656be 100644 --- a/util/stmtsummary/reader.go +++ b/util/stmtsummary/reader.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/statement_summary.go b/util/stmtsummary/statement_summary.go index 3177a4f76592b..f611121d847dd 100644 --- a/util/stmtsummary/statement_summary.go +++ b/util/stmtsummary/statement_summary.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/statement_summary_test.go b/util/stmtsummary/statement_summary_test.go index 55df8489ed7a0..35a3aa18a4cae 100644 --- a/util/stmtsummary/statement_summary_test.go +++ b/util/stmtsummary/statement_summary_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/variables.go b/util/stmtsummary/variables.go index 96f6b0fac7076..f1d82d0158448 100644 --- a/util/stmtsummary/variables.go +++ b/util/stmtsummary/variables.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stmtsummary/variables_test.go b/util/stmtsummary/variables_test.go index 167de5cf0d7e8..2927f4bd96fc6 100644 --- a/util/stmtsummary/variables_test.go +++ b/util/stmtsummary/variables_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stringutil/main_test.go b/util/stringutil/main_test.go index da7082999621f..7f012cc923dba 100644 --- a/util/stringutil/main_test.go +++ b/util/stringutil/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stringutil/string_util.go b/util/stringutil/string_util.go index 1647911729811..b42373e3d796d 100644 --- a/util/stringutil/string_util.go +++ b/util/stringutil/string_util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/stringutil/string_util_test.go b/util/stringutil/string_util_test.go index 60acb31c20387..f9451a4a9918a 100644 --- a/util/stringutil/string_util_test.go +++ b/util/stringutil/string_util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sys/linux/main_test.go b/util/sys/linux/main_test.go index cc471a893af75..4c190736347de 100644 --- a/util/sys/linux/main_test.go +++ b/util/sys/linux/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sys/linux/sys_linux.go b/util/sys/linux/sys_linux.go index 9768159562408..35aa33a4a6f2e 100644 --- a/util/sys/linux/sys_linux.go +++ b/util/sys/linux/sys_linux.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build linux diff --git a/util/sys/linux/sys_other.go b/util/sys/linux/sys_other.go index d049a88c5782f..b984c528dc074 100644 --- a/util/sys/linux/sys_other.go +++ b/util/sys/linux/sys_other.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build !linux diff --git a/util/sys/linux/sys_test.go b/util/sys/linux/sys_test.go index c22928f284a74..6522df0d2e08d 100644 --- a/util/sys/linux/sys_test.go +++ b/util/sys/linux/sys_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package linux_test diff --git a/util/sys/storage/main_test.go b/util/sys/storage/main_test.go index bdc947996bd59..846992285e92a 100644 --- a/util/sys/storage/main_test.go +++ b/util/sys/storage/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sys/storage/sys_other.go b/util/sys/storage/sys_other.go index 6b71082b9c8f7..b90a942b39169 100644 --- a/util/sys/storage/sys_other.go +++ b/util/sys/storage/sys_other.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sys/storage/sys_posix.go b/util/sys/storage/sys_posix.go index eca79d44c7223..3e6f3c4c6cc06 100644 --- a/util/sys/storage/sys_posix.go +++ b/util/sys/storage/sys_posix.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sys/storage/sys_test.go b/util/sys/storage/sys_test.go index 28d2d1c858b6e..fd73c81c07dcf 100644 --- a/util/sys/storage/sys_test.go +++ b/util/sys/storage/sys_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/sys/storage/sys_windows.go b/util/sys/storage/sys_windows.go index b78a26c163675..21b2f0f744d59 100644 --- a/util/sys/storage/sys_windows.go +++ b/util/sys/storage/sys_windows.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/systimemon/main_test.go b/util/systimemon/main_test.go index f01d62e29ce85..2d5053b2b2a93 100644 --- a/util/systimemon/main_test.go +++ b/util/systimemon/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/systimemon/systime_mon.go b/util/systimemon/systime_mon.go index f7e89a86b4bbe..67b23ed894b5b 100644 --- a/util/systimemon/systime_mon.go +++ b/util/systimemon/systime_mon.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/systimemon/systime_mon_test.go b/util/systimemon/systime_mon_test.go index 4ac43dc21af92..3950db9a9c52e 100644 --- a/util/systimemon/systime_mon_test.go +++ b/util/systimemon/systime_mon_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/tableutil/tableutil.go b/util/tableutil/tableutil.go index 446cd170333aa..106c162a3915e 100644 --- a/util/tableutil/tableutil.go +++ b/util/tableutil/tableutil.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/testbridge/bridge.go b/util/testbridge/bridge.go index e792bfbb879ac..383de45fe495a 100644 --- a/util/testbridge/bridge.go +++ b/util/testbridge/bridge.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/testkit/testkit.go b/util/testkit/testkit.go index 1e3ac0947aaf1..e82dfd60296e8 100644 --- a/util/testkit/testkit.go +++ b/util/testkit/testkit.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/testkit/testkit_test.go b/util/testkit/testkit_test.go index f90554d6fc416..21aceedf868c5 100644 --- a/util/testkit/testkit_test.go +++ b/util/testkit/testkit_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/testleak/add-leaktest.sh b/util/testleak/add-leaktest.sh index 18b23d6da4f58..1ebb778655fb8 100755 --- a/util/testleak/add-leaktest.sh +++ b/util/testleak/add-leaktest.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # diff --git a/util/testleak/check-leaktest.sh b/util/testleak/check-leaktest.sh index 62083b9014363..add7f923cd0cb 100755 --- a/util/testleak/check-leaktest.sh +++ b/util/testleak/check-leaktest.sh @@ -9,6 +9,7 @@ # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # diff --git a/util/testleak/fake.go b/util/testleak/fake.go index 5d4ad573f69d6..1ee90fb62b9ff 100644 --- a/util/testleak/fake.go +++ b/util/testleak/fake.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build !leak diff --git a/util/testleak/leaktest.go b/util/testleak/leaktest.go index 2180263f00266..b3e860dd0a4f4 100644 --- a/util/testleak/leaktest.go +++ b/util/testleak/leaktest.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // +build leak diff --git a/util/testutil/testutil.go b/util/testutil/testutil.go index dcd654497ce34..29aababcb08f1 100644 --- a/util/testutil/testutil.go +++ b/util/testutil/testutil.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/testutil/testutil_test.go b/util/testutil/testutil_test.go index 07dbc917c60c3..7503e79b135a8 100644 --- a/util/testutil/testutil_test.go +++ b/util/testutil/testutil_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/texttree/main_test.go b/util/texttree/main_test.go index 26bafa5524311..af4e400aeaa61 100644 --- a/util/texttree/main_test.go +++ b/util/texttree/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/texttree/texttree.go b/util/texttree/texttree.go index 0d910fb6f2e06..13aa7e0408467 100644 --- a/util/texttree/texttree.go +++ b/util/texttree/texttree.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/texttree/texttree_test.go b/util/texttree/texttree_test.go index 8375361397151..6a3646c6596eb 100644 --- a/util/texttree/texttree_test.go +++ b/util/texttree/texttree_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/timeutil/main_test.go b/util/timeutil/main_test.go index a864bc11d613e..910501d567d05 100644 --- a/util/timeutil/main_test.go +++ b/util/timeutil/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/timeutil/time.go b/util/timeutil/time.go index e9914ba4ef350..e2524485b4a76 100644 --- a/util/timeutil/time.go +++ b/util/timeutil/time.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/timeutil/time_test.go b/util/timeutil/time_test.go index 9a15938d01b25..59f3a2c0d390f 100644 --- a/util/timeutil/time_test.go +++ b/util/timeutil/time_test.go @@ -12,6 +12,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/main_test.go b/util/topsql/main_test.go index 3772615add3a3..8b2fb2640a028 100644 --- a/util/topsql/main_test.go +++ b/util/topsql/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/reporter/client.go b/util/topsql/reporter/client.go index efc33c71e6088..994189250e52b 100644 --- a/util/topsql/reporter/client.go +++ b/util/topsql/reporter/client.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/reporter/main_test.go b/util/topsql/reporter/main_test.go index 84505af739be9..a828a948fb4fd 100644 --- a/util/topsql/reporter/main_test.go +++ b/util/topsql/reporter/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/reporter/reporter.go b/util/topsql/reporter/reporter.go index 03e4fb673f27d..4449d2d4a7297 100644 --- a/util/topsql/reporter/reporter.go +++ b/util/topsql/reporter/reporter.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/reporter/reporter_test.go b/util/topsql/reporter/reporter_test.go index 34d454aca3280..6001212a766a2 100644 --- a/util/topsql/reporter/reporter_test.go +++ b/util/topsql/reporter/reporter_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/topsql.go b/util/topsql/topsql.go index c7f1ec0705872..cfec946a9e194 100644 --- a/util/topsql/topsql.go +++ b/util/topsql/topsql.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/topsql_test.go b/util/topsql/topsql_test.go index ce0776b3f6ac7..bb4562a98258d 100644 --- a/util/topsql/topsql_test.go +++ b/util/topsql/topsql_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/tracecpu/mock/mock.go b/util/topsql/tracecpu/mock/mock.go index c0546a5528b1f..cbc7397a25c04 100644 --- a/util/topsql/tracecpu/mock/mock.go +++ b/util/topsql/tracecpu/mock/mock.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/topsql/tracecpu/profile.go b/util/topsql/tracecpu/profile.go index c068278b26169..2fe6697dd4ff9 100644 --- a/util/topsql/tracecpu/profile.go +++ b/util/topsql/tracecpu/profile.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/tracing/main_test.go b/util/tracing/main_test.go index 54845f9fdc98f..17e67ecd40ea8 100644 --- a/util/tracing/main_test.go +++ b/util/tracing/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/tracing/noop_bench_test.go b/util/tracing/noop_bench_test.go index 76b940231c195..4fcc8d28d1be0 100644 --- a/util/tracing/noop_bench_test.go +++ b/util/tracing/noop_bench_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/tracing/util.go b/util/tracing/util.go index 4f6f8327131fa..34953c72482a6 100644 --- a/util/tracing/util.go +++ b/util/tracing/util.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/tracing/util_test.go b/util/tracing/util_test.go index 34d60e7551073..7b54289041723 100644 --- a/util/tracing/util_test.go +++ b/util/tracing/util_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/versioninfo/versioninfo.go b/util/versioninfo/versioninfo.go index 6673d8eba00b9..563a97e6356d9 100644 --- a/util/versioninfo/versioninfo.go +++ b/util/versioninfo/versioninfo.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/vitess/main_test.go b/util/vitess/main_test.go index ca0d6adae2a3f..a66f334f9bba9 100644 --- a/util/vitess/main_test.go +++ b/util/vitess/main_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/vitess/vitess_hash.go b/util/vitess/vitess_hash.go index 53e5e4e6435a7..c2ccb14408110 100644 --- a/util/vitess/vitess_hash.go +++ b/util/vitess/vitess_hash.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. diff --git a/util/vitess/vitess_hash_test.go b/util/vitess/vitess_hash_test.go index 95f32db444df5..769c0d5c0cc4f 100644 --- a/util/vitess/vitess_hash_test.go +++ b/util/vitess/vitess_hash_test.go @@ -8,6 +8,7 @@ // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. From 255fa351b349b6e4735e727ffdfd94c000d9cb61 Mon Sep 17 00:00:00 2001 From: xiongjiwei Date: Mon, 16 Aug 2021 19:15:59 +0800 Subject: [PATCH 16/27] ddl: fix time column accuracy in alter table (#27149) --- ddl/column.go | 4 ++-- ddl/db_integration_test.go | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/ddl/column.go b/ddl/column.go index c8b7a4fd055e3..94339088d8c70 100644 --- a/ddl/column.go +++ b/ddl/column.go @@ -1855,9 +1855,9 @@ func generateOriginDefaultValue(col *model.ColumnInfo) (interface{}, error) { if odValue == strings.ToUpper(ast.CurrentTimestamp) { if col.Tp == mysql.TypeTimestamp { - odValue = time.Now().UTC().Format(types.TimeFormat) + odValue = types.NewTime(types.FromGoTime(time.Now().UTC()), col.Tp, int8(col.Decimal)).String() } else if col.Tp == mysql.TypeDatetime { - odValue = time.Now().Format(types.TimeFormat) + odValue = types.NewTime(types.FromGoTime(time.Now()), col.Tp, int8(col.Decimal)).String() } } return odValue, nil diff --git a/ddl/db_integration_test.go b/ddl/db_integration_test.go index c66920a7b91da..37d21efbf084d 100644 --- a/ddl/db_integration_test.go +++ b/ddl/db_integration_test.go @@ -1728,6 +1728,18 @@ func (s *testIntegrationSuite3) TestAlterColumn(c *C) { tk.MustExec("drop table multi_unique") tk.MustExec("create table multi_unique (a serial serial default value serial default value)") tk.MustExec("drop table multi_unique") + + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1(id int)") + tk.MustExec("insert into t1(id) values (1);") + tk.MustExec("alter table t1 add column update_time3 datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3);") + tk.MustExec("alter table t1 add column update_time6 datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6);") + rows := tk.MustQuery("select * from t1").Rows() + c.Assert(rows[0][0], Equals, "1") + updateTime3 := rows[0][1].(string) + c.Assert(updateTime3[len(updateTime3)-3:], Not(Equals), "000") + updateTime6 := rows[0][2].(string) + c.Assert(updateTime6[len(updateTime6)-6:], Not(Equals), "000000") } func (s *testIntegrationSuite) assertWarningExec(tk *testkit.TestKit, c *C, sql string, expectedWarn *terror.Error) { From 0de541c1849e84c3a32cbb6203d90cfae488b853 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E8=B6=85?= Date: Mon, 16 Aug 2021 20:09:59 +0800 Subject: [PATCH 17/27] ddl: Check create table options for local temporary table (#27150) --- ddl/db_integration_test.go | 3 +++ ddl/db_partition_test.go | 28 ++++++++++++++++++++++++++++ ddl/db_test.go | 38 +++++++++++++++++++++++++++++++++++++- executor/executor_test.go | 2 +- 4 files changed, 69 insertions(+), 2 deletions(-) diff --git a/ddl/db_integration_test.go b/ddl/db_integration_test.go index 37d21efbf084d..d1dc3de437294 100644 --- a/ddl/db_integration_test.go +++ b/ddl/db_integration_test.go @@ -2935,6 +2935,9 @@ func (s *testIntegrationSuite3) TestCreateTemporaryTable(c *C) { c.Assert(infoschema.ErrTableExists.Equal(err), IsTrue) tk.MustExec("create temporary table if not exists b_local_temp_table (id int)") + // Engine type can only be 'memory' or empty for now. + tk.MustGetErrCode("create temporary table te (id int) engine = 'innodb'", errno.ErrUnsupportedDDLOperation) + // Stale read see the local temporary table but can't read on it. tk.MustExec("START TRANSACTION READ ONLY AS OF TIMESTAMP NOW(3)") tk.MustGetErrMsg("select * from overlap", "can not stale read temporary table") diff --git a/ddl/db_partition_test.go b/ddl/db_partition_test.go index cfb9d6d443cee..6a7a6175492c6 100644 --- a/ddl/db_partition_test.go +++ b/ddl/db_partition_test.go @@ -3390,6 +3390,7 @@ func (s *testSerialDBSuite1) TestPartitionListWithNewCollation(c *C) { } func (s *testSerialDBSuite1) TestAddTableWithPartition(c *C) { + // for global temporary table tk := testkit.NewTestKitWithInit(c, s.store) tk.MustExec("set tidb_enable_global_temporary_table=true") tk.MustExec("use test;") @@ -3416,6 +3417,33 @@ func (s *testSerialDBSuite1) TestAddTableWithPartition(c *C) { partition p3 values in (5,null) ) ON COMMIT DELETE ROWS;`, errno.ErrPartitionNoTemporary) tk.MustExec("drop table if exists partition_list_table;") + + // for local temporary table + tk.MustExec("set tidb_enable_noop_functions=1") + tk.MustExec("use test;") + tk.MustExec("drop table if exists local_partition_table;") + tk.MustGetErrCode("create temporary table local_partition_table (a int, b int) partition by hash(a) partitions 3;", errno.ErrPartitionNoTemporary) + tk.MustExec("drop table if exists local_partition_table;") + tk.MustExec("drop table if exists partition_table;") + _, err = tk.Exec("create table partition_table (a int, b int) partition by hash(a) partitions 3;") + c.Assert(err, IsNil) + tk.MustExec("drop table if exists partition_table;") + tk.MustExec("drop table if exists local_partition_range_table;") + tk.MustGetErrCode(`create temporary table local_partition_range_table (c1 smallint(6) not null, c2 char(5) default null) partition by range ( c1 ) ( + partition p0 values less than (10), + partition p1 values less than (20), + partition p2 values less than (30), + partition p3 values less than (MAXVALUE) + );`, errno.ErrPartitionNoTemporary) + tk.MustExec("drop table if exists local_partition_range_table;") + tk.MustExec("drop table if exists local_partition_list_table;") + tk.MustExec("set @@session.tidb_enable_list_partition = ON") + tk.MustGetErrCode(`create temporary table local_partition_list_table (id int) partition by list (id) ( + partition p0 values in (1,2), + partition p1 values in (3,4), + partition p3 values in (5,null) + );`, errno.ErrPartitionNoTemporary) + tk.MustExec("drop table if exists local_partition_list_table;") } func (s *testSerialDBSuite1) TestTruncatePartitionMultipleTimes(c *C) { diff --git a/ddl/db_test.go b/ddl/db_test.go index d6c8e72fc9d3f..f671d8f219fea 100644 --- a/ddl/db_test.go +++ b/ddl/db_test.go @@ -3329,16 +3329,22 @@ func (s *testDBSuite2) TestTemporaryTableForeignKey(c *C) { tk.MustExec("create table t1 (a int, b int);") tk.MustExec("drop table if exists t1_tmp;") tk.MustExec("set tidb_enable_global_temporary_table=true") + tk.MustExec("set tidb_enable_noop_functions=1") tk.MustExec("create global temporary table t1_tmp (a int, b int) on commit delete rows;") + tk.MustExec("create temporary table t2_tmp (a int, b int)") // test add foreign key. tk.MustExec("drop table if exists t2;") tk.MustExec("create table t2 (a int, b int);") failSQL := "alter table t1_tmp add foreign key (c) REFERENCES t2(a);" tk.MustGetErrCode(failSQL, mysql.ErrCannotAddForeign) + failSQL = "alter table t2_tmp add foreign key (c) REFERENCES t2(a);" + tk.MustGetErrCode(failSQL, errno.ErrUnsupportedDDLOperation) // Test drop column with foreign key. failSQL = "create global temporary table t3 (c int,d int,foreign key (d) references t1 (b)) on commit delete rows;" tk.MustGetErrCode(failSQL, mysql.ErrCannotAddForeign) - tk.MustExec("drop table if exists t1,t2,t3,t1_tmp;") + failSQL = "create temporary table t4(c int,d int,foreign key (d) references t1 (b));" + tk.MustGetErrCode(failSQL, mysql.ErrCannotAddForeign) + tk.MustExec("drop table if exists t1,t2,t3, t4,t1_tmp,t2_tmp;") } func (s *testDBSuite8) TestFKOnGeneratedColumns(c *C) { @@ -3834,6 +3840,26 @@ func (s *testDBSuite3) TestVirtualColumnDDL(c *C) { tk.MustQuery("select * from test_gv_ddl").Check(testkit.Rows("1 9 11")) _, err = tk.Exec("commit") c.Assert(err, IsNil) + + // for local temporary table + tk.MustExec("set @@tidb_enable_noop_functions=1;") + tk.MustExec(`create temporary table test_local_gv_ddl(a int, b int as (a+8) virtual, c int as (b + 2) stored);`) + defer tk.MustExec("drop table if exists test_local_gv_ddl") + is = tk.Se.(sessionctx.Context).GetInfoSchema().(infoschema.InfoSchema) + table, err = is.TableByName(model.NewCIStr("test"), model.NewCIStr("test_local_gv_ddl")) + c.Assert(err, IsNil) + for i, column := range table.Meta().Columns { + c.Assert(column.GeneratedExprString, Equals, testCases[i].generatedExprString) + c.Assert(column.GeneratedStored, Equals, testCases[i].generatedStored) + } + result = tk.MustQuery(`DESC test_local_gv_ddl`) + result.Check(testkit.Rows(`a int(11) YES `, `b int(11) YES VIRTUAL GENERATED`, `c int(11) YES STORED GENERATED`)) + tk.MustExec("begin;") + tk.MustExec("insert into test_local_gv_ddl values (1, default, default)") + tk.MustQuery("select * from test_local_gv_ddl").Check(testkit.Rows("1 9 11")) + _, err = tk.Exec("commit") + c.Assert(err, IsNil) + tk.MustQuery("select * from test_local_gv_ddl").Check(testkit.Rows("1 9 11")) } func (s *testDBSuite3) TestGeneratedColumnDDL(c *C) { @@ -5761,6 +5787,7 @@ func (s *testSerialDBSuite) TestAlterShardRowIDBits(c *C) { func (s *testSerialDBSuite) TestShardRowIDBitsOnTemporaryTable(c *C) { tk := testkit.NewTestKit(c, s.store) tk.MustExec("use test") + // for global temporary table tk.MustExec("drop table if exists shard_row_id_temporary") tk.MustExec("set tidb_enable_global_temporary_table=true") _, err := tk.Exec("create global temporary table shard_row_id_temporary (a int) shard_row_id_bits = 5 on commit delete rows;") @@ -5769,6 +5796,15 @@ func (s *testSerialDBSuite) TestShardRowIDBitsOnTemporaryTable(c *C) { defer tk.MustExec("drop table if exists shard_row_id_temporary") _, err = tk.Exec("alter table shard_row_id_temporary shard_row_id_bits = 4;") c.Assert(err.Error(), Equals, ddl.ErrOptOnTemporaryTable.GenWithStackByArgs("shard_row_id_bits").Error()) + // for local temporary table + tk.MustExec("set tidb_enable_noop_functions=true") + tk.MustExec("drop table if exists local_shard_row_id_temporary") + _, err = tk.Exec("create temporary table local_shard_row_id_temporary (a int) shard_row_id_bits = 5;") + c.Assert(err.Error(), Equals, core.ErrOptOnTemporaryTable.GenWithStackByArgs("shard_row_id_bits").Error()) + tk.MustExec("create temporary table local_shard_row_id_temporary (a int);") + defer tk.MustExec("drop table if exists local_shard_row_id_temporary") + _, err = tk.Exec("alter table local_shard_row_id_temporary shard_row_id_bits = 4;") + c.Assert(err.Error(), Equals, ddl.ErrUnsupportedLocalTempTableDDL.GenWithStackByArgs("ALTER TABLE").Error()) } // port from mysql diff --git a/executor/executor_test.go b/executor/executor_test.go index 47c57da0c52e1..a078c8c68e517 100644 --- a/executor/executor_test.go +++ b/executor/executor_test.go @@ -5218,7 +5218,7 @@ func (s *testSplitTable) TestShowTableRegion(c *C) { tk.MustQuery(`split table t_regions between (-10000) and (10000) regions 4;`).Check(testkit.Rows("4 1")) re := tk.MustQuery("show table t_regions regions") - // Test show table regions and split table on temporary table. + // Test show table regions and split table on global temporary table. tk.MustExec("drop table if exists t_regions_temporary_table") tk.MustExec("set tidb_enable_global_temporary_table=true") tk.MustExec("create global temporary table t_regions_temporary_table (a int key, b int, c int, index idx(b), index idx2(c)) ON COMMIT DELETE ROWS;") From 09ebd0d703c16d846e1aefa4329bb9a6679d471c Mon Sep 17 00:00:00 2001 From: Zhuomin Liu Date: Mon, 16 Aug 2021 20:29:59 +0800 Subject: [PATCH 18/27] planner: fix wrong selection push down when having above agg (#27021) --- executor/aggregate_test.go | 9 +++++++++ planner/core/logical_plan_builder.go | 6 +++--- planner/core/logical_plans.go | 3 +++ planner/core/rule_predicate_push_down.go | 13 ++++++++++--- .../testdata/ordered_result_mode_suite_out.json | 12 ++++++------ .../core/testdata/plan_suite_unexported_out.json | 12 ++++++------ statistics/testdata/stats_suite_out.json | 8 ++++---- 7 files changed, 41 insertions(+), 22 deletions(-) diff --git a/executor/aggregate_test.go b/executor/aggregate_test.go index 3d981ed9fdf12..055676a4f248c 100644 --- a/executor/aggregate_test.go +++ b/executor/aggregate_test.go @@ -920,6 +920,15 @@ func (s *testSuiteAgg) TestHaving(c *C) { tk.MustQuery("select 1 from t group by c1 having sum(abs(c2 + c3)) = c1").Check(testkit.Rows("1")) } +func (s *testSuiteAgg) TestIssue26496(c *C) { + tk := testkit.NewTestKitWithInit(c, s.store) + + tk.MustExec("drop table if exists UK_NSPRE_19416") + tk.MustExec("CREATE TABLE `UK_NSPRE_19416` ( `COL1` binary(20) DEFAULT NULL, `COL2` varchar(20) DEFAULT NULL, `COL4` datetime DEFAULT NULL, `COL3` bigint(20) DEFAULT NULL, `COL5` float DEFAULT NULL, UNIQUE KEY `UK_COL1` (`COL1`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin") + tk.MustExec("insert into `UK_NSPRE_19416`(col1) values (0xc5b428e2ebc1b78f0b183899a8df55c88a333f86), (0x004dad637b37cc4a9742484ab93f97ede2ab8bd5), (0x550c4a4390ba14fd6d382dd29063e10210c99381)") + tk.MustQuery("select t1.col1, count(t2.col1) from UK_NSPRE_19416 as t1 left join UK_NSPRE_19416 as t2 on t1.col1 = t2.col1 where t1.col1 in (0x550C4A4390BA14FD6D382DD29063E10210C99381, 0x004DAD637B37CC4A9742484AB93F97EDE2AB8BD5, 0xC5B428E2EBC1B78F0B183899A8DF55C88A333F86) group by t1.col1, t2.col1 having t1.col1 in (0x9B4B48FEBA9225BACF8F9ADEAEE810AEC26DC7A2, 0x25A6C4FAD832F8E0267AAA504CFAE767565C8B84, 0xE26E5B0080EC5A8156DACE67D13B239500E540E6)").Check(nil) +} + func (s *testSuiteAgg) TestAggEliminator(c *C) { tk := testkit.NewTestKitWithInit(c, s.store) diff --git a/planner/core/logical_plan_builder.go b/planner/core/logical_plan_builder.go index e8407a5b15190..51e14463db742 100644 --- a/planner/core/logical_plan_builder.go +++ b/planner/core/logical_plan_builder.go @@ -956,7 +956,7 @@ func (b *PlanBuilder) coalesceCommonColumns(p *LogicalJoin, leftPlan, rightPlan return nil } -func (b *PlanBuilder) buildSelection(ctx context.Context, p LogicalPlan, where ast.ExprNode, AggMapper map[*ast.AggregateFuncExpr]int) (LogicalPlan, error) { +func (b *PlanBuilder) buildSelection(ctx context.Context, p LogicalPlan, where ast.ExprNode, aggMapper map[*ast.AggregateFuncExpr]int) (LogicalPlan, error) { b.optFlag |= flagPredicatePushDown if b.curClause != havingClause { b.curClause = whereClause @@ -964,9 +964,9 @@ func (b *PlanBuilder) buildSelection(ctx context.Context, p LogicalPlan, where a conditions := splitWhere(where) expressions := make([]expression.Expression, 0, len(conditions)) - selection := LogicalSelection{}.Init(b.ctx, b.getSelectOffset()) + selection := LogicalSelection{buildByHaving: aggMapper != nil}.Init(b.ctx, b.getSelectOffset()) for _, cond := range conditions { - expr, np, err := b.rewrite(ctx, cond, p, AggMapper, false) + expr, np, err := b.rewrite(ctx, cond, p, aggMapper, false) if err != nil { return nil, err } diff --git a/planner/core/logical_plans.go b/planner/core/logical_plans.go index 54f5690879ed1..6a7fbd89dca6f 100644 --- a/planner/core/logical_plans.go +++ b/planner/core/logical_plans.go @@ -423,6 +423,9 @@ type LogicalSelection struct { // but after we converted to CNF(Conjunctive normal form), it can be // split into a list of AND conditions. Conditions []expression.Expression + + // having selection can't be pushed down, because it must above the aggregation. + buildByHaving bool } // ExtractCorrelatedCols implements LogicalPlan interface. diff --git a/planner/core/rule_predicate_push_down.go b/planner/core/rule_predicate_push_down.go index 1776a119378e0..d566c0d549564 100644 --- a/planner/core/rule_predicate_push_down.go +++ b/planner/core/rule_predicate_push_down.go @@ -82,9 +82,16 @@ func splitSetGetVarFunc(filters []expression.Expression) ([]expression.Expressio func (p *LogicalSelection) PredicatePushDown(predicates []expression.Expression) ([]expression.Expression, LogicalPlan) { predicates = DeleteTrueExprs(p, predicates) p.Conditions = DeleteTrueExprs(p, p.Conditions) - canBePushDown, canNotBePushDown := splitSetGetVarFunc(p.Conditions) - retConditions, child := p.children[0].PredicatePushDown(append(canBePushDown, predicates...)) - retConditions = append(retConditions, canNotBePushDown...) + var child LogicalPlan + var retConditions []expression.Expression + if p.buildByHaving { + retConditions, child = p.children[0].PredicatePushDown(predicates) + retConditions = append(retConditions, p.Conditions...) + } else { + canBePushDown, canNotBePushDown := splitSetGetVarFunc(p.Conditions) + retConditions, child = p.children[0].PredicatePushDown(append(canBePushDown, predicates...)) + retConditions = append(retConditions, canNotBePushDown...) + } if len(retConditions) > 0 { p.Conditions = expression.PropagateConstant(p.ctx, retConditions) // Return table dual when filter is constant false or null. diff --git a/planner/core/testdata/ordered_result_mode_suite_out.json b/planner/core/testdata/ordered_result_mode_suite_out.json index 9fffea09ded93..80d8b06a86fd6 100644 --- a/planner/core/testdata/ordered_result_mode_suite_out.json +++ b/planner/core/testdata/ordered_result_mode_suite_out.json @@ -417,12 +417,12 @@ }, { "Plan": [ - "Sort_9 6400.00 root Column#5, Column#6, Column#7", - "└─Selection_11 6400.00 root lt(Column#6, 20)", - " └─HashAgg_16 8000.00 root group by:test.t1.d, funcs:min(Column#11)->Column#5, funcs:max(Column#12)->Column#6, funcs:sum(Column#13)->Column#7", - " └─TableReader_17 8000.00 root data:HashAgg_12", - " └─HashAgg_12 8000.00 cop[tikv] group by:test.t1.d, funcs:min(test.t1.a)->Column#11, funcs:max(test.t1.b)->Column#12, funcs:sum(test.t1.c)->Column#13", - " └─TableFullScan_15 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo" + "Selection_8 6400.00 root lt(Column#6, 20)", + "└─Sort_9 8000.00 root Column#5, Column#6, Column#7", + " └─HashAgg_15 8000.00 root group by:test.t1.d, funcs:min(Column#11)->Column#5, funcs:max(Column#12)->Column#6, funcs:sum(Column#13)->Column#7", + " └─TableReader_16 8000.00 root data:HashAgg_11", + " └─HashAgg_11 8000.00 cop[tikv] group by:test.t1.d, funcs:min(test.t1.a)->Column#11, funcs:max(test.t1.b)->Column#12, funcs:sum(test.t1.c)->Column#13", + " └─TableFullScan_14 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo" ] }, { diff --git a/planner/core/testdata/plan_suite_unexported_out.json b/planner/core/testdata/plan_suite_unexported_out.json index e835d0b3f66a6..6401df6aa9264 100644 --- a/planner/core/testdata/plan_suite_unexported_out.json +++ b/planner/core/testdata/plan_suite_unexported_out.json @@ -3,7 +3,7 @@ "Name": "TestEagerAggregation", "Cases": [ "DataScan(t)->Aggr(sum(test.t.a),sum(plus(test.t.a, 1)),count(test.t.a))->Projection", - "DataScan(t)->Aggr(sum(plus(test.t.a, test.t.b)),sum(plus(test.t.a, test.t.c)),count(test.t.a))->Sel([gt(Column#13, 0)])->Projection->Sort->Projection", + "DataScan(t)->Aggr(sum(plus(test.t.a, test.t.b)),sum(plus(test.t.a, test.t.c)),count(test.t.a))->Projection->Sel([gt(Column#13, 0)])->Sort->Projection", "Join{DataScan(a)->Aggr(sum(test.t.a),firstrow(test.t.c))->DataScan(b)}(test.t.c,test.t.c)->Aggr(sum(Column#26))->Projection", "Join{DataScan(a)->DataScan(b)->Aggr(sum(test.t.a),firstrow(test.t.c))}(test.t.c,test.t.c)->Aggr(sum(Column#26))->Projection", "Join{DataScan(a)->DataScan(b)->Aggr(sum(test.t.a),firstrow(test.t.c))}(test.t.c,test.t.c)->Aggr(sum(Column#26),firstrow(test.t.a))->Projection", @@ -89,7 +89,7 @@ "DataScan(t)->Aggr(sum(test.t.b),firstrow(test.t.a))->Sel([gt(cast(test.t.a, decimal(20,0) BINARY), Column#13)])->Projection->Projection", "DataScan(t)->Aggr(sum(test.t.b),firstrow(test.t.a))->Sel([gt(test.t.a, 1)])->Projection->Projection", "Dual->Sel([gt(test.t.a, 1)])->Projection", - "DataScan(t)->Aggr(count(test.t.a),firstrow(test.t.a))->Sel([lt(Column#13, 1)])->Projection", + "DataScan(t)->Aggr(count(test.t.a),firstrow(test.t.a))->Projection->Sel([lt(Column#13, 1)])", "Join{DataScan(t1)->DataScan(t2)}(test.t.a,test.t.a)->Projection", "Dual->Projection", "DataScan(t)->Projection->Projection->Window(min(test.t.a)->Column#14)->Sel([lt(test.t.a, 10) eq(test.t.b, Column#14)])->Projection->Projection", @@ -194,7 +194,7 @@ "TableReader(Table(t))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#14 over())->Sort->Projection", "TableReader(Table(t))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#14 over(partition by test.t.a))->Sort->Projection", "TableReader(Table(t)->StreamAgg)->StreamAgg->Window(sum(Column#13)->Column#15 over())->Sort->Projection", - "Apply{IndexReader(Index(t.f)[[NULL,+inf]])->IndexReader(Index(t.f)[[NULL,+inf]]->Sel([gt(test.t.a, test.t.a)]))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#38 over())->MaxOneRow->Sel([Column#38])}->Projection", + "Apply{IndexReader(Index(t.f)[[NULL,+inf]])->IndexReader(Index(t.f)[[NULL,+inf]]->Sel([gt(test.t.a, test.t.a)]))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#38 over())->MaxOneRow}->Sel([Column#38])->Projection", "[planner:3594]You cannot use the alias 'w' of an expression containing a window function in this context.'", "[planner:1247]Reference 'sum_a' not supported (reference to window function)", "[planner:3579]Window name 'w2' is not defined.", @@ -267,7 +267,7 @@ "TableReader(Table(t))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#14 over())->Sort->Projection", "TableReader(Table(t))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#14 over(partition by test.t.a))->Sort->Projection", "TableReader(Table(t)->StreamAgg)->StreamAgg->Window(sum(Column#13)->Column#15 over())->Sort->Projection", - "Apply{IndexReader(Index(t.f)[[NULL,+inf]])->IndexReader(Index(t.f)[[NULL,+inf]]->Sel([gt(test.t.a, test.t.a)]))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#38 over())->MaxOneRow->Sel([Column#38])}->Projection", + "Apply{IndexReader(Index(t.f)[[NULL,+inf]])->IndexReader(Index(t.f)[[NULL,+inf]]->Sel([gt(test.t.a, test.t.a)]))->Window(sum(cast(test.t.a, decimal(65,0) BINARY))->Column#38 over())->MaxOneRow}->Sel([Column#38])->Projection", "[planner:3594]You cannot use the alias 'w' of an expression containing a window function in this context.'", "[planner:1247]Reference 'sum_a' not supported (reference to window function)", "[planner:3579]Window name 'w2' is not defined.", @@ -482,12 +482,12 @@ "test.t.f" ] ], - "5": [ + "4": [ [ "test.t.f" ] ], - "6": [ + "5": [ [ "test.t.f" ] diff --git a/statistics/testdata/stats_suite_out.json b/statistics/testdata/stats_suite_out.json index c4135c1f8b0b3..2897c02fb3df2 100644 --- a/statistics/testdata/stats_suite_out.json +++ b/statistics/testdata/stats_suite_out.json @@ -656,7 +656,7 @@ { "Start": 800, "End": 900, - "Count": 743.004166655054 + "Count": 761.004166655054 }, { "Start": 900, @@ -706,12 +706,12 @@ { "Start": 300, "End": 899, - "Count": 4498.5 + "Count": 4500 }, { "Start": 800, "End": 1000, - "Count": 1201.196869573942 + "Count": 1219.196869573942 }, { "Start": 900, @@ -736,7 +736,7 @@ { "Start": 200, "End": 400, - "Count": 1211.5288209899081 + "Count": 1186.5288209899081 }, { "Start": 200, From eb418f3b5a5a54edc2e19379c28fcf8f77b734cc Mon Sep 17 00:00:00 2001 From: zhaoxugang <956308585@qq.com> Date: Mon, 16 Aug 2021 20:47:59 +0800 Subject: [PATCH 19/27] bindinfo: fix SPM doesn't work for CTE (#25583) --- bindinfo/bind_test.go | 67 +++++++++++++++++++++++++++++++++++++++++++ bindinfo/handle.go | 18 +++++++++++- executor/adapter.go | 3 -- planner/core/hints.go | 5 ++++ 4 files changed, 89 insertions(+), 4 deletions(-) diff --git a/bindinfo/bind_test.go b/bindinfo/bind_test.go index 94aca56b62a42..9e1642978d868 100644 --- a/bindinfo/bind_test.go +++ b/bindinfo/bind_test.go @@ -2295,6 +2295,73 @@ func (s *testSuite) TestTemporaryTable(c *C) { tk.MustGetErrCode("create binding for delete from t where b = 1 and c > 1 using delete /*+ use_index(t, c) */ from t where b = 1 and c > 1", errno.ErrOptOnTemporaryTable) } +func (s *testSuite) TestIssue25505(c *C) { + tk := testkit.NewTestKit(c, s.store) + stmtsummary.StmtSummaryByDigestMap.Clear() + s.cleanBindingEnv(tk) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + defer func() { + tk.MustExec("set tidb_slow_log_threshold = 300") + }() + tk.MustExec("set tidb_slow_log_threshold = 0") + tk.MustExec("create table t (a int(11) default null,b int(11) default null,key b (b),key ba (b))") + tk.MustExec("create table t1 (a int(11) default null,b int(11) default null,key idx_ab (a,b),key idx_a (a),key idx_b (b))") + tk.MustExec("create table t2 (a int(11) default null,b int(11) default null,key idx_ab (a,b),key idx_a (a),key idx_b (b))") + c.Assert(tk.Se.Auth(&auth.UserIdentity{Username: "root", Hostname: "%"}, nil, nil), IsTrue) + + spmMap := map[string]string{} + spmMap["with recursive `cte` ( `a` ) as ( select ? union select `a` + ? from `test` . `t1` where `a` < ? ) select * from `cte`"] = + "WITH RECURSIVE `cte` (`a`) AS (SELECT 2 UNION SELECT `a` + 1 FROM `test`.`t1` WHERE `a` < 5) SELECT /*+ use_index(@`sel_3` `test`.`t1` `idx_ab`), hash_agg(@`sel_1`)*/ * FROM `cte`" + spmMap["with recursive `cte1` ( `a` , `b` ) as ( select * from `test` . `t` where `b` = ? union select `a` + ? , `b` + ? from `cte1` where `a` < ? ) select * from `test` . `t`"] = + "WITH RECURSIVE `cte1` (`a`, `b`) AS (SELECT * FROM `test`.`t` WHERE `b` = 1 UNION SELECT `a` + 1,`b` + 1 FROM `cte1` WHERE `a` < 2) SELECT /*+ use_index(@`sel_1` `test`.`t` )*/ * FROM `test`.`t`" + spmMap["with `cte1` as ( select * from `test` . `t` ) , `cte2` as ( select ? ) select * from `test` . `t`"] = + "WITH `cte1` AS (SELECT * FROM `test`.`t`), `cte2` AS (SELECT 4) SELECT /*+ use_index(@`sel_1` `test`.`t` )*/ * FROM `test`.`t`" + spmMap["with `cte` as ( select * from `test` . `t` where `b` = ? ) select * from `test` . `t`"] = + "WITH `cte` AS (SELECT * FROM `test`.`t` WHERE `b` = 6) SELECT /*+ use_index(@`sel_1` `test`.`t` )*/ * FROM `test`.`t`" + spmMap["with recursive `cte` ( `a` ) as ( select ? union select `a` + ? from `test` . `t1` where `a` > ? ) select * from `cte`"] = + "WITH RECURSIVE `cte` (`a`) AS (SELECT 2 UNION SELECT `a` + 1 FROM `test`.`t1` WHERE `a` > 5) SELECT /*+ use_index(@`sel_3` `test`.`t1` `idx_b`), hash_agg(@`sel_1`)*/ * FROM `cte`" + spmMap["with `cte` as ( with `cte1` as ( select * from `test` . `t2` where `a` > ? and `b` > ? ) select * from `cte1` ) select * from `cte` join `test` . `t1` on `t1` . `a` = `cte` . `a`"] = + "WITH `cte` AS (WITH `cte1` AS (SELECT * FROM `test`.`t2` WHERE `a` > 1 AND `b` > 1) SELECT * FROM `cte1`) SELECT /*+ use_index(@`sel_3` `test`.`t2` `idx_ab`), use_index(@`sel_1` `test`.`t1` `idx_ab`), inl_join(@`sel_1` `test`.`t1`)*/ * FROM `cte` JOIN `test`.`t1` ON `t1`.`a` = `cte`.`a`" + spmMap["with `cte` as ( with `cte1` as ( select * from `test` . `t2` where `a` = ? and `b` = ? ) select * from `cte1` ) select * from `cte` join `test` . `t1` on `t1` . `a` = `cte` . `a`"] = + "WITH `cte` AS (WITH `cte1` AS (SELECT * FROM `test`.`t2` WHERE `a` = 1 AND `b` = 1) SELECT * FROM `cte1`) SELECT /*+ use_index(@`sel_3` `test`.`t2` `idx_a`), use_index(@`sel_1` `test`.`t1` `idx_a`), inl_join(@`sel_1` `test`.`t1`)*/ * FROM `cte` JOIN `test`.`t1` ON `t1`.`a` = `cte`.`a`" + + tk.MustExec("with cte as (with cte1 as (select /*+use_index(t2 idx_a)*/ * from t2 where a = 1 and b = 1) select * from cte1) select /*+use_index(t1 idx_a)*/ * from cte join t1 on t1.a=cte.a;") + tk.MustExec("with cte as (with cte1 as (select /*+use_index(t2 idx_a)*/ * from t2 where a = 1 and b = 1) select * from cte1) select /*+use_index(t1 idx_a)*/ * from cte join t1 on t1.a=cte.a;") + tk.MustExec("with cte as (with cte1 as (select /*+use_index(t2 idx_a)*/ * from t2 where a = 1 and b = 1) select * from cte1) select /*+use_index(t1 idx_a)*/ * from cte join t1 on t1.a=cte.a;") + + tk.MustExec("with cte as (with cte1 as (select * from t2 use index(idx_ab) where a > 1 and b > 1) select * from cte1) select /*+use_index(t1 idx_ab)*/ * from cte join t1 on t1.a=cte.a;") + tk.MustExec("with cte as (with cte1 as (select * from t2 use index(idx_ab) where a > 1 and b > 1) select * from cte1) select /*+use_index(t1 idx_ab)*/ * from cte join t1 on t1.a=cte.a;") + tk.MustExec("with cte as (with cte1 as (select * from t2 use index(idx_ab) where a > 1 and b > 1) select * from cte1) select /*+use_index(t1 idx_ab)*/ * from cte join t1 on t1.a=cte.a;") + + tk.MustExec("WITH RECURSIVE cte(a) AS (SELECT 2 UNION SELECT a+1 FROM t1 use index(idx_ab) WHERE a < 5) SELECT * FROM cte;") + tk.MustExec("WITH RECURSIVE cte(a) AS (SELECT 2 UNION SELECT a+1 FROM t1 use index(idx_ab) WHERE a < 5) SELECT * FROM cte;") + tk.MustExec("WITH RECURSIVE cte(a) AS (SELECT 2 UNION SELECT a+1 FROM t1 use index(idx_ab) WHERE a < 5) SELECT * FROM cte;") + + tk.MustExec("WITH RECURSIVE cte(a) AS (SELECT 2 UNION SELECT /*+use_index(t1 idx_b)*/ a+1 FROM t1 WHERE a > 5) SELECT * FROM cte;") + tk.MustExec("WITH RECURSIVE cte(a) AS (SELECT 2 UNION SELECT /*+use_index(t1 idx_b)*/ a+1 FROM t1 WHERE a > 5) SELECT * FROM cte;") + tk.MustExec("WITH RECURSIVE cte(a) AS (SELECT 2 UNION SELECT /*+use_index(t1 idx_b)*/ a+1 FROM t1 WHERE a > 5) SELECT * FROM cte;") + + tk.MustExec("with cte as (select * from t where b=6) select * from t") + tk.MustExec("with cte as (select * from t where b=6) select * from t") + tk.MustExec("with cte as (select * from t where b=6) select * from t") + + tk.MustExec("with cte1 as (select * from t), cte2 as (select 4) select * from t") + tk.MustExec("with cte1 as (select * from t), cte2 as (select 5) select * from t") + tk.MustExec("with cte1 as (select * from t), cte2 as (select 6) select * from t") + + tk.MustExec("with recursive cte1(a,b) as (select * from t where b = 1 union select a+1,b+1 from cte1 where a < 2) select * from t") + tk.MustExec("with recursive cte1(a,b) as (select * from t where b = 1 union select a+1,b+1 from cte1 where a < 2) select * from t") + tk.MustExec("with recursive cte1(a,b) as (select * from t where b = 1 union select a+1,b+1 from cte1 where a < 2) select * from t") + tk.MustExec("admin capture bindings") + rows := tk.MustQuery("show global bindings").Rows() + c.Assert(len(rows), Equals, 7) + for _, row := range rows { + str := fmt.Sprintf("%s", row[0]) + c.Assert(row[1], Equals, spmMap[str]) + } +} + func (s *testSuite) TestBindingLastUpdateTime(c *C) { tk := testkit.NewTestKit(c, s.store) s.cleanBindingEnv(tk) diff --git a/bindinfo/handle.go b/bindinfo/handle.go index ad0372fa74a9e..d4adb21a81683 100644 --- a/bindinfo/handle.go +++ b/bindinfo/handle.go @@ -26,6 +26,7 @@ import ( "github.com/pingcap/parser" "github.com/pingcap/parser/ast" + "github.com/pingcap/parser/format" "github.com/pingcap/parser/mysql" "github.com/pingcap/parser/terror" "github.com/pingcap/tidb/metrics" @@ -753,7 +754,22 @@ func GenerateBindSQL(ctx context.Context, stmtNode ast.StmtNode, planHint string bindSQL = bindSQL[updateIdx:] return strings.Replace(bindSQL, "UPDATE", fmt.Sprintf("UPDATE /*+ %s*/", planHint), 1) case *ast.SelectStmt: - selectIdx := strings.Index(bindSQL, "SELECT") + var selectIdx int + if n.With != nil { + var withSb strings.Builder + withIdx := strings.Index(bindSQL, "WITH") + restoreCtx := format.NewRestoreCtx(format.RestoreStringSingleQuotes|format.RestoreSpacesAroundBinaryOperation|format.RestoreStringWithoutCharset|format.RestoreNameBackQuotes, &withSb) + restoreCtx.DefaultDB = defaultDB + err := n.With.Restore(restoreCtx) + if err != nil { + logutil.BgLogger().Debug("[sql-bind] restore SQL failed", zap.Error(err)) + return "" + } + withEnd := withIdx + len(withSb.String()) + tmp := strings.Replace(bindSQL[withEnd:], "SELECT", fmt.Sprintf("SELECT /*+ %s*/", planHint), 1) + return strings.Join([]string{bindSQL[withIdx:withEnd], tmp}, "") + } + selectIdx = strings.Index(bindSQL, "SELECT") // Remove possible `explain` prefix. bindSQL = bindSQL[selectIdx:] return strings.Replace(bindSQL, "SELECT", fmt.Sprintf("SELECT /*+ %s*/", planHint), 1) diff --git a/executor/adapter.go b/executor/adapter.go index 008bba051dda1..2b86471b998f9 100644 --- a/executor/adapter.go +++ b/executor/adapter.go @@ -1086,9 +1086,6 @@ func getEncodedPlan(sctx sessionctx.Context, p plannercore.Plan, genHint bool, n } if genHint { hints := plannercore.GenHintsFromPhysicalPlan(p) - if n != nil { - hints = append(hints, hint.ExtractTableHintsFromStmtNode(n, nil)...) - } hintStr = hint.RestoreOptimizerHints(hints) sctx.GetSessionVars().StmtCtx.SetPlanHint(hintStr) } diff --git a/planner/core/hints.go b/planner/core/hints.go index 91b2ed01ac62a..2c0a23ba8bcf0 100644 --- a/planner/core/hints.go +++ b/planner/core/hints.go @@ -125,6 +125,11 @@ func genHintsFromPhysicalPlan(p PhysicalPlan, nodeType utilhint.NodeType) (res [ for _, child := range p.Children() { res = append(res, genHintsFromPhysicalPlan(child, nodeType)...) } + if phCte, ok := p.(*PhysicalCTE); ok { + res = append(res, genHintsFromPhysicalPlan(phCte.CTE.seedPartPhysicalPlan, nodeType)...) + res = append(res, genHintsFromPhysicalPlan(phCte.CTE.recursivePartPhysicalPlan, nodeType)...) + } + qbName, err := utilhint.GenerateQBName(nodeType, p.SelectBlockOffset()) if err != nil { return res From e4dcef943cec26fe66d59f8fc9a76b24e072cef5 Mon Sep 17 00:00:00 2001 From: Chengpeng Yan <41809508+Reminiscent@users.noreply.github.com> Date: Mon, 16 Aug 2021 21:53:59 +0800 Subject: [PATCH 20/27] planner: do not merge the generated column stats to global stats (#27256) --- statistics/handle/handle.go | 20 +++++++++++++++----- statistics/handle/handle_test.go | 19 +++++++++++++++++++ 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/statistics/handle/handle.go b/statistics/handle/handle.go index 1b4ffa33d1bcc..48e4997c56cf7 100644 --- a/statistics/handle/handle.go +++ b/statistics/handle/handle.go @@ -345,8 +345,17 @@ func (h *Handle) mergePartitionStats2GlobalStats(sc sessionctx.Context, opts map // initialized the globalStats globalStats = new(GlobalStats) + var validColStatsIdx []int if isIndex == 0 { - globalStats.Num = len(globalTableInfo.Columns) + validColStatsIdx = make([]int, 0, len(globalTableInfo.Columns)) + for i, col := range globalTableInfo.Columns { + // The virtual generated column stats can not be merged to the global stats. + if col.IsGenerated() && !col.GeneratedStored { + continue + } + validColStatsIdx = append(validColStatsIdx, i) + } + globalStats.Num = len(validColStatsIdx) } else { globalStats.Num = 1 } @@ -403,10 +412,11 @@ func (h *Handle) mergePartitionStats2GlobalStats(sc sessionctx.Context, opts map return } for i := 0; i < globalStats.Num; i++ { - ID := tableInfo.Columns[i].ID - if isIndex != 0 { - // If the statistics is the index stats, we should use the index ID to replace the column ID. - ID = idxID + // If the statistics is the index stats, we should use the index ID. + ID := idxID + if isIndex == 0 { + // If the statistics is the column stats, we should use the column ID to replace the index ID. + ID = tableInfo.Columns[validColStatsIdx[i]].ID } count, hg, cms, topN, fms := partitionStats.GetStatsInfo(ID, isIndex == 1) if i == 0 { diff --git a/statistics/handle/handle_test.go b/statistics/handle/handle_test.go index f12a83b5fe440..9cfd06447792f 100644 --- a/statistics/handle/handle_test.go +++ b/statistics/handle/handle_test.go @@ -2957,6 +2957,25 @@ func (s *testStatsSuite) TestIssues24401(c *C) { c.Assert(len(rows), Equals, lenRows) } +func (s *testStatsSuite) TestIssues27147(c *C) { + defer cleanEnv(c, s.store, s.do) + testKit := testkit.NewTestKit(c, s.store) + testKit.MustExec("use test") + + testKit.MustExec("set @@tidb_partition_prune_mode='dynamic'") + testKit.MustExec("drop table if exists t") + testKit.MustExec("create table t (a int, b int) partition by range (a) (partition p0 values less than (10), partition p1 values less than (20), partition p2 values less than maxvalue);") + testKit.MustExec("alter table t add index idx((a+5));") + err := testKit.ExecToErr("analyze table t;") + c.Assert(err, Equals, nil) + + testKit.MustExec("drop table if exists t1") + testKit.MustExec("create table t1 (a int, b int as (a+1) virtual, c int) partition by range (a) (partition p0 values less than (10), partition p1 values less than (20), partition p2 values less than maxvalue);") + testKit.MustExec("alter table t1 add index idx((a+5));") + err = testKit.ExecToErr("analyze table t1;") + c.Assert(err, Equals, nil) +} + func (s *testStatsSuite) TestColumnCountFromStorage(c *C) { defer cleanEnv(c, s.store, s.do) testKit := testkit.NewTestKit(c, s.store) From 462c9dc5ca8e7d9fc1fc970f8a3a09051ee75968 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E8=B6=85?= Date: Mon, 16 Aug 2021 22:19:59 +0800 Subject: [PATCH 21/27] *: Add `temp_table_size` support for local temporary table (#27205) --- executor/batch_point_get.go | 6 +-- executor/ddl.go | 10 ++-- kv/kv.go | 3 ++ session/session.go | 4 +- session/session_test.go | 17 +++++++ sessionctx/variable/session.go | 71 +++++++++++++++++++++++++-- store/driver/txn/unionstore_driver.go | 4 ++ table/tables/tables.go | 25 +++++++--- 8 files changed, 120 insertions(+), 20 deletions(-) diff --git a/executor/batch_point_get.go b/executor/batch_point_get.go index ce29c4c49aacc..0b6c0073c946c 100644 --- a/executor/batch_point_get.go +++ b/executor/batch_point_get.go @@ -173,17 +173,17 @@ func (e *BatchPointGetExec) Open(context.Context) error { // temporaryTableSnapshot inherits kv.Snapshot and override the BatchGet methods to return empty. type temporaryTableSnapshot struct { kv.Snapshot - memBuffer kv.MemBuffer + sessionData variable.TemporaryTableData } func (s temporaryTableSnapshot) BatchGet(ctx context.Context, keys []kv.Key) (map[string][]byte, error) { values := make(map[string][]byte) - if s.memBuffer == nil { + if s.sessionData == nil { return values, nil } for _, key := range keys { - val, err := s.memBuffer.Get(ctx, key) + val, err := s.sessionData.Get(ctx, key) if err == kv.ErrNotExist { continue } diff --git a/executor/ddl.go b/executor/ddl.go index dd0ca83fbcc1e..e5172fedd2fdb 100644 --- a/executor/ddl.go +++ b/executor/ddl.go @@ -74,15 +74,15 @@ func (e *DDLExec) toErr(err error) error { } // deleteTemporaryTableRecords delete temporary table data. -func deleteTemporaryTableRecords(memData kv.MemBuffer, tblID int64) error { - if memData == nil { +func deleteTemporaryTableRecords(sessionData variable.TemporaryTableData, tblID int64) error { + if sessionData == nil { return kv.ErrNotExist } tblPrefix := tablecodec.EncodeTablePrefix(tblID) endKey := tablecodec.EncodeTablePrefix(tblID + 1) - iter, err := memData.Iter(tblPrefix, endKey) + iter, err := sessionData.Iter(tblPrefix, endKey) if err != nil { return err } @@ -92,7 +92,7 @@ func deleteTemporaryTableRecords(memData kv.MemBuffer, tblID int64) error { break } - err = memData.Delete(key) + err = sessionData.DeleteTableKey(tblID, key) if err != nil { return err } @@ -365,7 +365,7 @@ func (e *DDLExec) createSessionTemporaryTable(s *ast.CreateTableStmt) error { return err } - sessVars.TemporaryTableData = bufferTxn.GetMemBuffer() + sessVars.TemporaryTableData = variable.NewTemporaryTableData(bufferTxn.GetMemBuffer()) } err = localTempTables.AddTable(dbInfo.Name, tbl) diff --git a/kv/kv.go b/kv/kv.go index 11fe882f38c7a..292d2ed0e069a 100644 --- a/kv/kv.go +++ b/kv/kv.go @@ -133,6 +133,9 @@ type MemBuffer interface { // Len returns the number of entries in the DB. Len() int + + // Size returns sum of keys and values length. + Size() int } // LockCtx contains information for LockKeys method. diff --git a/session/session.go b/session/session.go index c5542e781ac1b..9e1a6bb58768e 100644 --- a/session/session.go +++ b/session/session.go @@ -631,9 +631,9 @@ func (s *session) commitTxnWithTemporaryData(ctx context.Context, txn kv.Transac value := iter.Value() if len(value) == 0 { - err = sessionData.Delete(key) + err = sessionData.DeleteTableKey(tblID, key) } else { - err = sessionData.Set(key, iter.Value()) + err = sessionData.SetTableKey(tblID, key, iter.Value()) } if err != nil { diff --git a/session/session_test.go b/session/session_test.go index 6b87fb554342e..574722fab4dfd 100644 --- a/session/session_test.go +++ b/session/session_test.go @@ -4749,6 +4749,8 @@ func (s *testSessionSuite) TestTMPTableSize(c *C) { tk.MustExec("use test") tk.MustExec("set tidb_enable_global_temporary_table=on") tk.MustExec("create global temporary table t (c1 int, c2 varchar(512)) on commit delete rows") + tk.MustExec("set tidb_enable_noop_functions=on") + tk.MustExec("create temporary table tl (c1 int, c2 varchar(512))") tk.MustQuery("select @@global.tmp_table_size").Check(testkit.Rows(strconv.Itoa(variable.DefTMPTableSize))) c.Assert(tk.Se.GetSessionVars().TMPTableSize, Equals, int64(variable.DefTMPTableSize)) @@ -4771,6 +4773,21 @@ func (s *testSessionSuite) TestTMPTableSize(c *C) { tk.MustExec("insert into t values (1, repeat('x', 512))") tk.MustExec("insert into t values (1, repeat('x', 512))") tk.MustGetErrCode("insert into t values (1, repeat('x', 512))", errno.ErrRecordFileFull) + tk.MustExec("rollback") + + // Check local temporary table + tk.MustExec("begin") + tk.MustExec("insert into tl values (1, repeat('x', 512))") + tk.MustExec("insert into tl values (1, repeat('x', 512))") + tk.MustGetErrCode("insert into tl values (1, repeat('x', 512))", errno.ErrRecordFileFull) + tk.MustExec("rollback") + + // Check local temporary table with some data in session + tk.MustExec("insert into tl values (1, repeat('x', 512))") + tk.MustExec("begin") + tk.MustExec("insert into tl values (1, repeat('x', 512))") + tk.MustGetErrCode("insert into tl values (1, repeat('x', 512))", errno.ErrRecordFileFull) + tk.MustExec("rollback") } func (s *testSessionSuite) TestTiDBEnableGlobalTemporaryTable(c *C) { diff --git a/sessionctx/variable/session.go b/sessionctx/variable/session.go index d7f97e657318c..81ef4cbf1f67c 100644 --- a/sessionctx/variable/session.go +++ b/sessionctx/variable/session.go @@ -357,6 +357,69 @@ func (r *RewritePhaseInfo) Reset() { r.PreprocessSubQueries = 0 } +// TemporaryTableData is a interface to maintain temporary data in session +type TemporaryTableData interface { + kv.Retriever + // Staging create a new staging buffer inside the MemBuffer. + // Subsequent writes will be temporarily stored in this new staging buffer. + // When you think all modifications looks good, you can call `Release` to public all of them to the upper level buffer. + Staging() kv.StagingHandle + // Release publish all modifications in the latest staging buffer to upper level. + Release(kv.StagingHandle) + // Cleanup cleanups the resources referenced by the StagingHandle. + // If the changes are not published by `Release`, they will be discarded. + Cleanup(kv.StagingHandle) + // GetTableSize get the size of a table + GetTableSize(tblID int64) int64 + // DeleteTableKey removes the entry for key k from table + DeleteTableKey(tblID int64, k kv.Key) error + // SetTableKey sets the entry for k from table + SetTableKey(tblID int64, k kv.Key, val []byte) error +} + +// temporaryTableData is used for store temporary table data in session +type temporaryTableData struct { + kv.MemBuffer + tblSize map[int64]int64 +} + +// NewTemporaryTableData creates a new TemporaryTableData +func NewTemporaryTableData(memBuffer kv.MemBuffer) TemporaryTableData { + return &temporaryTableData{ + MemBuffer: memBuffer, + tblSize: make(map[int64]int64), + } +} + +// GetTableSize get the size of a table +func (d *temporaryTableData) GetTableSize(tblID int64) int64 { + if tblSize, ok := d.tblSize[tblID]; ok { + return tblSize + } + return 0 +} + +// DeleteTableKey removes the entry for key k from table +func (d *temporaryTableData) DeleteTableKey(tblID int64, k kv.Key) error { + bufferSize := d.MemBuffer.Size() + defer d.updateTblSize(tblID, bufferSize) + + return d.MemBuffer.Delete(k) +} + +// SetTableKey sets the entry for k from table +func (d *temporaryTableData) SetTableKey(tblID int64, k kv.Key, val []byte) error { + bufferSize := d.MemBuffer.Size() + defer d.updateTblSize(tblID, bufferSize) + + return d.MemBuffer.Set(k, val) +} + +func (d *temporaryTableData) updateTblSize(tblID int64, beforeSize int) { + delta := int64(d.MemBuffer.Size() - beforeSize) + d.tblSize[tblID] = d.GetTableSize(tblID) + delta +} + const ( // oneShotDef means default, that is tx_isolation_one_shot not set. oneShotDef txnIsolationLevelOneShotState = iota @@ -876,7 +939,7 @@ type SessionVars struct { LocalTemporaryTables interface{} // TemporaryTableData stores committed kv values for temporary table for current session. - TemporaryTableData kv.MemBuffer + TemporaryTableData TemporaryTableData // MPPStoreLastFailTime records the lastest fail time that a TiFlash store failed. MPPStoreLastFailTime map[string]time.Time @@ -2251,16 +2314,16 @@ func (s *SessionVars) GetSeekFactor(tbl *model.TableInfo) float64 { // TemporaryTableSnapshotReader can read the temporary table snapshot data type TemporaryTableSnapshotReader struct { - memBuffer kv.MemBuffer + temporaryTableData TemporaryTableData } // Get gets the value for key k from snapshot. func (s *TemporaryTableSnapshotReader) Get(ctx context.Context, k kv.Key) ([]byte, error) { - if s.memBuffer == nil { + if s.temporaryTableData == nil { return nil, kv.ErrNotExist } - v, err := s.memBuffer.Get(ctx, k) + v, err := s.temporaryTableData.Get(ctx, k) if err != nil { return v, err } diff --git a/store/driver/txn/unionstore_driver.go b/store/driver/txn/unionstore_driver.go index e074ff9ca09b9..a60f5ddcf74c5 100644 --- a/store/driver/txn/unionstore_driver.go +++ b/store/driver/txn/unionstore_driver.go @@ -35,6 +35,10 @@ func newMemBuffer(m *tikv.MemDB) kv.MemBuffer { return &memBuffer{MemDB: m} } +func (m *memBuffer) Size() int { + return m.MemDB.Size() +} + func (m *memBuffer) Delete(k kv.Key) error { return m.MemDB.Delete(k) } diff --git a/table/tables/tables.go b/table/tables/tables.go index 0a957a659b27a..da32fcfbcf06c 100644 --- a/table/tables/tables.go +++ b/table/tables/tables.go @@ -331,8 +331,8 @@ func (t *TableCommon) UpdateRecord(ctx context.Context, sctx sessionctx.Context, if m := t.Meta(); m.TempTableType != model.TempTableNone { if tmpTable := addTemporaryTable(sctx, m); tmpTable != nil { - if tmpTable.GetSize() > sctx.GetSessionVars().TMPTableSize { - return table.ErrTempTableFull.GenWithStackByArgs(m.Name.O) + if err := checkTempTableSize(sctx, tmpTable, m); err != nil { + return err } defer handleTempTableSize(tmpTable, txn.Size(), txn) } @@ -617,6 +617,19 @@ func handleTempTableSize(t tableutil.TempTable, txnSizeBefore int, txn kv.Transa t.SetSize(newSize) } +func checkTempTableSize(ctx sessionctx.Context, tmpTable tableutil.TempTable, tblInfo *model.TableInfo) error { + tmpTableSize := tmpTable.GetSize() + if tempTableData := ctx.GetSessionVars().TemporaryTableData; tempTableData != nil { + tmpTableSize += tempTableData.GetTableSize(tblInfo.ID) + } + + if tmpTableSize > ctx.GetSessionVars().TMPTableSize { + return table.ErrTempTableFull.GenWithStackByArgs(tblInfo.Name.O) + } + + return nil +} + // AddRecord implements table.Table AddRecord interface. func (t *TableCommon) AddRecord(sctx sessionctx.Context, r []types.Datum, opts ...table.AddRecordOption) (recordID kv.Handle, err error) { txn, err := sctx.Txn(true) @@ -631,8 +644,8 @@ func (t *TableCommon) AddRecord(sctx sessionctx.Context, r []types.Datum, opts . if m := t.Meta(); m.TempTableType != model.TempTableNone { if tmpTable := addTemporaryTable(sctx, m); tmpTable != nil { - if tmpTable.GetSize() > sctx.GetSessionVars().TMPTableSize { - return nil, table.ErrTempTableFull.GenWithStackByArgs(m.Name.O) + if err := checkTempTableSize(sctx, tmpTable, m); err != nil { + return nil, err } defer handleTempTableSize(tmpTable, txn.Size(), txn) } @@ -1045,8 +1058,8 @@ func (t *TableCommon) RemoveRecord(ctx sessionctx.Context, h kv.Handle, r []type } if m := t.Meta(); m.TempTableType != model.TempTableNone { if tmpTable := addTemporaryTable(ctx, m); tmpTable != nil { - if tmpTable.GetSize() > ctx.GetSessionVars().TMPTableSize { - return table.ErrTempTableFull.GenWithStackByArgs(m.Name.O) + if err := checkTempTableSize(ctx, tmpTable, m); err != nil { + return err } defer handleTempTableSize(tmpTable, txn.Size(), txn) } From f1fd5740c538c65f8f0c4df003a30513da83d20a Mon Sep 17 00:00:00 2001 From: tison Date: Tue, 17 Aug 2021 10:03:59 +0800 Subject: [PATCH 22/27] util/ranger: test data is setup/teardown logic (#27221) --- testkit/testdata/testdata.go | 36 +++++------ util/ranger/main_test.go | 34 +++++++++- util/ranger/ranger_test.go | 118 ++++++++++++++--------------------- 3 files changed, 98 insertions(+), 90 deletions(-) diff --git a/testkit/testdata/testdata.go b/testkit/testdata/testdata.go index 7db57eb1dcbfb..bf6d7aa2b2929 100644 --- a/testkit/testdata/testdata.go +++ b/testkit/testdata/testdata.go @@ -106,6 +106,24 @@ func loadTestSuiteCases(filePath string) (res []testCases, err error) { return res, err } +// OnRecord execute the function to update result. +func OnRecord(updateFunc func()) { + if record { + updateFunc() + } +} + +// ConvertRowsToStrings converts [][]interface{} to []string. +func ConvertRowsToStrings(rows [][]interface{}) (rs []string) { + for _, row := range rows { + s := fmt.Sprintf("%v", row) + // Trim the leftmost `[` and rightmost `]`. + s = s[1 : len(s)-1] + rs = append(rs, s) + } + return rs +} + // GetTestCases gets the test cases for a test function. func (td *TestData) GetTestCases(t *testing.T, in interface{}, out interface{}) { // Extract caller's name. @@ -133,24 +151,6 @@ func (td *TestData) GetTestCases(t *testing.T, in interface{}, out interface{}) td.output[casesIdx].decodedOut = out } -// OnRecord execute the function to update result. -func (td *TestData) OnRecord(updateFunc func()) { - if record { - updateFunc() - } -} - -// ConvertRowsToStrings converts [][]interface{} to []string. -func (td *TestData) ConvertRowsToStrings(rows [][]interface{}) (rs []string) { - for _, row := range rows { - s := fmt.Sprintf("%v", row) - // Trim the leftmost `[` and rightmost `]`. - s = s[1 : len(s)-1] - rs = append(rs, s) - } - return rs -} - // GenerateOutputIfNeeded generate the output file. func (td *TestData) GenerateOutputIfNeeded() error { if !record { diff --git a/util/ranger/main_test.go b/util/ranger/main_test.go index 461eb57e7393b..97509de9087e2 100644 --- a/util/ranger/main_test.go +++ b/util/ranger/main_test.go @@ -15,17 +15,47 @@ package ranger_test import ( + "flag" + "fmt" + "os" "testing" + "github.com/pingcap/tidb/testkit/testdata" "github.com/pingcap/tidb/util/testbridge" "go.uber.org/goleak" ) +var testData testdata.TestData + func TestMain(m *testing.M) { + testbridge.WorkaroundGoCheckFlags() + + flag.Parse() + + var err error + testData, err = testdata.LoadTestSuiteData("testdata", "ranger_suite") + if err != nil { + _, _ = fmt.Fprintf(os.Stderr, "testdata: Errors on loading test data from file: %v\n", err) + os.Exit(1) + } + + if exitCode := m.Run(); exitCode != 0 { + os.Exit(exitCode) + } + + err = testData.GenerateOutputIfNeeded() + if err != nil { + _, _ = fmt.Fprintf(os.Stderr, "testdata: Errors on generating output: %v\n", err) + os.Exit(1) + } + opts := []goleak.Option{ goleak.IgnoreTopFunction("go.etcd.io/etcd/pkg/logutil.(*MergeLogger).outputLoop"), goleak.IgnoreTopFunction("go.opencensus.io/stats/view.(*worker).start"), } - testbridge.WorkaroundGoCheckFlags() - goleak.VerifyTestMain(m, opts...) + + if err := goleak.Find(opts...); err != nil { + _, _ = fmt.Fprintf(os.Stderr, "goleak: Errors on successful test run: %v\n", err) + os.Exit(1) + } } diff --git a/util/ranger/ranger_test.go b/util/ranger/ranger_test.go index 53ac42e26d3f9..6ede26887539c 100644 --- a/util/ranger/ranger_test.go +++ b/util/ranger/ranger_test.go @@ -21,7 +21,6 @@ import ( "testing" "github.com/pingcap/errors" - "github.com/pingcap/parser" "github.com/pingcap/tidb/domain" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/kv" @@ -39,15 +38,6 @@ import ( "github.com/stretchr/testify/require" ) -func TestSetUpTearDown(t *testing.T) { - t.Parallel() - p := parser.New() - require.NotNil(t, *p) - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) - require.Nil(t, testData.GenerateOutputIfNeeded()) -} - func newDomainStoreWithBootstrap(t *testing.T) (*domain.Domain, kv.Storage, error) { store, err := mockstore.NewMockStore() require.NoError(t, err) @@ -65,7 +55,7 @@ func TestTableRange(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -323,7 +313,7 @@ func TestIndexRange(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -669,7 +659,7 @@ func TestIndexRangeForUnsignedAndOverflow(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -860,7 +850,7 @@ func TestColumnRange(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1221,12 +1211,12 @@ func TestColumnRange(t *testing.T) { } } -func TestIndexRangeElimininatedProjection(t *testing.T) { +func TestIndexRangeEliminatedProjection(t *testing.T) { t.Parallel() dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1253,7 +1243,7 @@ func TestCompIndexInExprCorrCol(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1268,14 +1258,11 @@ func TestCompIndexInExprCorrCol(t *testing.T) { SQL string Result []string } - - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) } @@ -1286,7 +1273,7 @@ func TestIndexStringIsTrueRange(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1302,12 +1289,11 @@ func TestIndexStringIsTrueRange(t *testing.T) { SQL string Result []string } - testData, _ := testdata.LoadTestSuiteData("testdata", "ranger_suite") testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) } @@ -1318,7 +1304,7 @@ func TestCompIndexDNFMatch(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1333,14 +1319,12 @@ func TestCompIndexDNFMatch(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) @@ -1352,7 +1336,7 @@ func TestCompIndexMultiColDNF1(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1369,13 +1353,12 @@ func TestCompIndexMultiColDNF1(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) + testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) @@ -1387,7 +1370,7 @@ func TestCompIndexMultiColDNF2(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1404,13 +1387,12 @@ func TestCompIndexMultiColDNF2(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) + testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) @@ -1422,7 +1404,7 @@ func TestPrefixIndexMultiColDNF(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1437,14 +1419,13 @@ func TestPrefixIndexMultiColDNF(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) + testData.GetTestCases(t, &input, &output) inputLen := len(input) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) @@ -1459,7 +1440,7 @@ func TestIndexRangeForBit(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1481,13 +1462,12 @@ func TestIndexRangeForBit(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) + testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) @@ -1499,7 +1479,7 @@ func TestIndexRangeForYear(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1662,7 +1642,7 @@ func TestPrefixIndexRangeScan(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1734,7 +1714,7 @@ func TestIndexRangeForDecimal(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1751,13 +1731,12 @@ func TestIndexRangeForDecimal(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) + testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain format = 'brief' " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain format = 'brief' " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain format = 'brief' " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) @@ -1769,7 +1748,7 @@ func TestPrefixIndexAppendPointRanges(t *testing.T) { dom, store, err := newDomainStoreWithBootstrap(t) defer func() { dom.Close() - store.Close() + require.NoError(t, store.Close()) }() require.NoError(t, err) testKit := testkit.NewTestKit(t, store) @@ -1790,13 +1769,12 @@ func TestPrefixIndexAppendPointRanges(t *testing.T) { Plan []string Result []string } - testData, err := testdata.LoadTestSuiteData("testdata", "ranger_suite") - require.NoError(t, err) + testData.GetTestCases(t, &input, &output) for i, tt := range input { - testData.OnRecord(func() { + testdata.OnRecord(func() { output[i].SQL = tt - output[i].Plan = testData.ConvertRowsToStrings(testKit.MustQuery("explain format = 'brief' " + tt).Rows()) - output[i].Result = testData.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) + output[i].Plan = testdata.ConvertRowsToStrings(testKit.MustQuery("explain format = 'brief' " + tt).Rows()) + output[i].Result = testdata.ConvertRowsToStrings(testKit.MustQuery(tt).Rows()) }) testKit.MustQuery("explain format = 'brief' " + tt).Check(testkit.Rows(output[i].Plan...)) testKit.MustQuery(tt).Check(testkit.Rows(output[i].Result...)) From e4a7c2d8e33c5295c5cd46aa6292362ef6f8cabb Mon Sep 17 00:00:00 2001 From: Ryan Leung Date: Tue, 17 Aug 2021 10:11:59 +0800 Subject: [PATCH 23/27] ddl: support alter table partition attribute to add label rules (#26705) --- ddl/attributes_sql_test.go | 33 +++++++++++++++++++++++ ddl/ddl_api.go | 52 +++++++++++++++++++++++++++++++++++- ddl/ddl_worker.go | 2 ++ ddl/label/attributes.go | 7 ++--- ddl/label/attributes_test.go | 3 ++- ddl/label/rule.go | 42 ++++++++++++++++++++++++----- ddl/label/rule_test.go | 2 +- ddl/table.go | 33 +++++++++++++++++++++++ 8 files changed, 161 insertions(+), 13 deletions(-) diff --git a/ddl/attributes_sql_test.go b/ddl/attributes_sql_test.go index 9d573160f9b0b..e8eef36f80b91 100644 --- a/ddl/attributes_sql_test.go +++ b/ddl/attributes_sql_test.go @@ -45,3 +45,36 @@ func (s *testDBSuite8) TestAlterTableAttributes(c *C) { _, err = tk.Exec(`alter table t1 attributes " nomerge , somethingelse ";`) c.Assert(err, IsNil) } + +func (s *testDBSuite8) TestAlterTablePartitionAttributes(c *C) { + tk := testkit.NewTestKit(c, s.store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t1") + defer tk.MustExec("drop table if exists t1") + + tk.MustExec(`create table t1 (c int) +PARTITION BY RANGE (c) ( + PARTITION p0 VALUES LESS THAN (6), + PARTITION p1 VALUES LESS THAN (11), + PARTITION p2 VALUES LESS THAN (16), + PARTITION p3 VALUES LESS THAN (21) +);`) + + // normal cases + _, err := tk.Exec(`alter table t1 partition p0 attributes="nomerge";`) + c.Assert(err, IsNil) + _, err = tk.Exec(`alter table t1 partition p1 attributes="nomerge,somethingelse";`) + c.Assert(err, IsNil) + + // space cases + _, err = tk.Exec(`alter table t1 partition p2 attributes=" nomerge ";`) + c.Assert(err, IsNil) + _, err = tk.Exec(`alter table t1 partition p3 attributes=" nomerge , somethingelse ";`) + c.Assert(err, IsNil) + + // without equal + _, err = tk.Exec(`alter table t1 partition p1 attributes " nomerge ";`) + c.Assert(err, IsNil) + _, err = tk.Exec(`alter table t1 partition p1 attributes " nomerge , somethingelse ";`) + c.Assert(err, IsNil) +} diff --git a/ddl/ddl_api.go b/ddl/ddl_api.go index 12be456304fdc..5acca14f8cb16 100644 --- a/ddl/ddl_api.go +++ b/ddl/ddl_api.go @@ -2615,6 +2615,8 @@ func (d *ddl) AlterTable(ctx context.Context, sctx sessionctx.Context, ident ast err = d.AlterTableDropStatistics(sctx, ident, spec.Statistics, spec.IfExists) case ast.AlterTableAttributes: err = d.AlterTableAttributes(sctx, ident, spec) + case ast.AlterTablePartitionAttributes: + err = d.AlterTablePartitionAttributes(sctx, ident, spec) default: // Nothing to do now. } @@ -6076,7 +6078,7 @@ func (d *ddl) AlterTableAttributes(ctx sessionctx.Context, ident ast.Ident, spec return ErrInvalidAttributesSpec.GenWithStackByArgs(err) } - rule.ResetTable(meta.ID, schema.Name.L, meta.Name.L) + rule.Reset(meta.ID, schema.Name.L, meta.Name.L) job := &model.Job{ SchemaID: schema.ID, @@ -6095,3 +6097,51 @@ func (d *ddl) AlterTableAttributes(ctx sessionctx.Context, ident ast.Ident, spec err = d.callHookOnChanged(err) return errors.Trace(err) } + +func (d *ddl) AlterTablePartitionAttributes(ctx sessionctx.Context, ident ast.Ident, spec *ast.AlterTableSpec) (err error) { + schema, tb, err := d.getSchemaAndTableByIdent(ctx, ident) + if err != nil { + return errors.Trace(err) + } + + meta := tb.Meta() + if meta.Partition == nil { + return errors.Trace(ErrPartitionMgmtOnNonpartitioned) + } + + partitionID, err := tables.FindPartitionByName(meta, spec.PartitionNames[0].L) + if err != nil { + return errors.Trace(err) + } + + rule := label.NewRule() + err = rule.ApplyAttributesSpec(spec.AttributesSpec) + if err != nil { + var sb strings.Builder + restoreCtx := format.NewRestoreCtx(format.RestoreStringSingleQuotes|format.RestoreKeyWordLowercase|format.RestoreNameBackQuotes, &sb) + + if e := spec.Restore(restoreCtx); e != nil { + return ErrInvalidAttributesSpec.GenWithStackByArgs("", err) + } + return ErrInvalidAttributesSpec.GenWithStackByArgs(sb.String(), err) + } + + rule.Reset(partitionID, schema.Name.L, meta.Name.L, spec.PartitionNames[0].L) + + job := &model.Job{ + SchemaID: schema.ID, + TableID: meta.ID, + SchemaName: schema.Name.L, + Type: model.ActionAlterTablePartitionAttributes, + BinlogInfo: &model.HistoryInfo{}, + Args: []interface{}{partitionID, rule}, + } + + err = d.doDDLJob(ctx, job) + if err != nil { + return errors.Trace(err) + } + + err = d.callHookOnChanged(err) + return errors.Trace(err) +} diff --git a/ddl/ddl_worker.go b/ddl/ddl_worker.go index cf4a2ba3a3588..bef94b4edf91c 100644 --- a/ddl/ddl_worker.go +++ b/ddl/ddl_worker.go @@ -832,6 +832,8 @@ func (w *worker) runDDLJob(d *ddlCtx, t *meta.Meta, job *model.Job) (ver int64, ver, err = onRenameTables(d, t, job) case model.ActionAlterTableAttributes: ver, err = onAlterTableAttributes(t, job) + case model.ActionAlterTablePartitionAttributes: + ver, err = onAlterTablePartitionAttributes(t, job) default: // Invalid job, cancel it. job.State = model.JobStateCancelled diff --git a/ddl/label/attributes.go b/ddl/label/attributes.go index 69f344048bf93..d098d4974d458 100644 --- a/ddl/label/attributes.go +++ b/ddl/label/attributes.go @@ -19,8 +19,9 @@ import ( ) const ( - dbKey = "db" - tableKey = "table" + dbKey = "db" + tableKey = "table" + partitionKey = "partition" ) // Label is used to describe attributes @@ -47,7 +48,7 @@ func (labels *Labels) Restore() string { var sb strings.Builder for i, label := range *labels { switch label.Key { - case dbKey, tableKey: + case dbKey, tableKey, partitionKey: continue default: } diff --git a/ddl/label/attributes_test.go b/ddl/label/attributes_test.go index ede040bf628a4..85e08ce115014 100644 --- a/ddl/label/attributes_test.go +++ b/ddl/label/attributes_test.go @@ -158,6 +158,7 @@ func (t *testLabelsSuite) TestRestore(c *C) { input2 := NewLabel("somethingelse") input3 := NewLabel("db") input4 := NewLabel("table") + input5 := NewLabel("partition") tests := []TestCase{ { @@ -172,7 +173,7 @@ func (t *testLabelsSuite) TestRestore(c *C) { }, { "normal3", - Labels{input3, input4}, + Labels{input3, input4, input5}, "", }, { diff --git a/ddl/label/rule.go b/ddl/label/rule.go index 72bde06f194f6..fe2d5035686fd 100644 --- a/ddl/label/rule.go +++ b/ddl/label/rule.go @@ -83,14 +83,42 @@ func (r *Rule) Clone() *Rule { return newRule } -// ResetTable will reset the label rule for a table with a given ID and names. -func (r *Rule) ResetTable(id int64, dbName, tableName string) *Rule { - r.ID = fmt.Sprintf(TableIDFormat, IDPrefix, dbName, tableName) - r.Labels = append(r.Labels, []Label{ - {Key: dbKey, Value: dbName}, - {Key: tableKey, Value: tableName}, - }...) +// Reset will reset the label rule for a table/partition with a given ID and names. +func (r *Rule) Reset(id int64, dbName, tableName string, partName ...string) *Rule { + isPartition := len(partName) != 0 + if isPartition { + r.ID = fmt.Sprintf(PartitionIDFormat, IDPrefix, dbName, tableName, partName[0]) + } else { + r.ID = fmt.Sprintf(TableIDFormat, IDPrefix, dbName, tableName) + } + + var hasDBKey, hasTableKey, hasPartitionKey bool + for _, label := range r.Labels { + if label.Key == dbKey { + label.Value = dbName + hasDBKey = true + } + if label.Key == tableKey { + label.Value = tableName + hasTableKey = true + } + if isPartition && label.Key == partitionKey { + label.Value = partName[0] + hasPartitionKey = true + } + } + + if !hasDBKey { + r.Labels = append(r.Labels, Label{Key: dbKey, Value: dbName}) + } + + if !hasTableKey { + r.Labels = append(r.Labels, Label{Key: tableKey, Value: tableName}) + } + if isPartition && !hasPartitionKey { + r.Labels = append(r.Labels, Label{Key: partitionKey, Value: partName[0]}) + } r.RuleType = ruleType r.Rule = map[string]string{ "start_key": hex.EncodeToString(codec.EncodeBytes(nil, tablecodec.GenTableRecordPrefix(id))), diff --git a/ddl/label/rule_test.go b/ddl/label/rule_test.go index 57cee23c5b716..21b291425fe95 100644 --- a/ddl/label/rule_test.go +++ b/ddl/label/rule_test.go @@ -34,7 +34,7 @@ func (t *testRuleSuite) TestApplyAttributesSpec(c *C) { func (t *testRuleSuite) TestResetID(c *C) { rule := NewRule() - rule.ResetTable(1, "db1", "t1") + rule.Reset(1, "db1", "t1") c.Assert(rule.ID, Equals, "schema/db1/t1") c.Assert(rule.RuleType, Equals, ruleType) c.Assert(rule.Labels, HasLen, 2) diff --git a/ddl/table.go b/ddl/table.go index 90ed661f62efb..4766b583affab 100644 --- a/ddl/table.go +++ b/ddl/table.go @@ -1148,3 +1148,36 @@ func onAlterTableAttributes(t *meta.Meta, job *model.Job) (ver int64, err error) return ver, nil } + +func onAlterTablePartitionAttributes(t *meta.Meta, job *model.Job) (ver int64, err error) { + var partitionID int64 + rule := label.NewRule() + err = job.DecodeArgs(&partitionID, &rule) + if err != nil { + job.State = model.JobStateCancelled + return 0, errors.Trace(err) + } + tblInfo, err := getTableInfoAndCancelFaultJob(t, job, job.SchemaID) + if err != nil { + return 0, err + } + + ptInfo := tblInfo.GetPartitionInfo() + if ptInfo.GetNameByID(partitionID) == "" { + job.State = model.JobStateCancelled + return 0, errors.Trace(table.ErrUnknownPartition.GenWithStackByArgs("drop?", tblInfo.Name.O)) + } + + err = infosync.PutLabelRule(context.TODO(), rule) + if err != nil { + job.State = model.JobStateCancelled + return 0, errors.Wrapf(err, "failed to notify PD region label") + } + ver, err = updateVersionAndTableInfo(t, job, tblInfo, true) + if err != nil { + return ver, errors.Trace(err) + } + job.FinishTableJob(model.JobStateDone, model.StatePublic, ver, tblInfo) + + return ver, nil +} From caba86a22fdea7b59e8ec3c385496bf71da87986 Mon Sep 17 00:00:00 2001 From: disksing Date: Tue, 17 Aug 2021 11:09:59 +0800 Subject: [PATCH 24/27] store: update tikv/client-go (#27255) --- go.mod | 2 +- go.sum | 4 ++-- store/driver/tikv_driver.go | 2 +- store/mockstore/redirector.go | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/go.mod b/go.mod index e6d440311879d..4f6c7a63edd7a 100644 --- a/go.mod +++ b/go.mod @@ -66,7 +66,7 @@ require ( github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.7.0 github.com/tiancaiamao/appdash v0.0.0-20181126055449-889f96f722a2 - github.com/tikv/client-go/v2 v2.0.0-alpha.0.20210806085616-14892a598eab + github.com/tikv/client-go/v2 v2.0.0-alpha.0.20210816071108-df2119f51be1 github.com/tikv/pd v1.1.0-beta.0.20210609101029-3ba158cf41a4 github.com/twmb/murmur3 v1.1.3 github.com/uber-go/atomic v1.4.0 diff --git a/go.sum b/go.sum index ba85cb81835fc..bc22e6969db99 100644 --- a/go.sum +++ b/go.sum @@ -686,8 +686,8 @@ github.com/tiancaiamao/appdash v0.0.0-20181126055449-889f96f722a2/go.mod h1:2PfK github.com/tidwall/gjson v1.3.5/go.mod h1:P256ACg0Mn+j1RXIDXoss50DeIABTYK1PULOJHhxOls= github.com/tidwall/match v1.0.1/go.mod h1:LujAq0jyVjBy028G1WhWfIzbpQfMO8bBZ6Tyb0+pL9E= github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= -github.com/tikv/client-go/v2 v2.0.0-alpha.0.20210806085616-14892a598eab h1:YkAaROMOAp995r6eA5f2oKpGy21nl/CTWoSyOKLoR90= -github.com/tikv/client-go/v2 v2.0.0-alpha.0.20210806085616-14892a598eab/go.mod h1:KwtZXt0JD+bP9bWW2ka0ir3Wp3oTEfZUTh22bs2sI4o= +github.com/tikv/client-go/v2 v2.0.0-alpha.0.20210816071108-df2119f51be1 h1:/CRgfKWlH9Go5BFoV+dO04oLRWWOgAZ8q1effzEPRMw= +github.com/tikv/client-go/v2 v2.0.0-alpha.0.20210816071108-df2119f51be1/go.mod h1:KwtZXt0JD+bP9bWW2ka0ir3Wp3oTEfZUTh22bs2sI4o= github.com/tikv/pd v1.1.0-beta.0.20210323121136-78679e5e209d/go.mod h1:Jw9KG11C/23Rr7DW4XWQ7H5xOgGZo6DFL1OKAF4+Igw= github.com/tikv/pd v1.1.0-beta.0.20210609101029-3ba158cf41a4 h1:QljEYXHc2krYg6f1zol6f7Ut9QBDtK1UVm9UZOT0YFE= github.com/tikv/pd v1.1.0-beta.0.20210609101029-3ba158cf41a4/go.mod h1:4AiyUYyIG4cA7P+xDU/Mep0yo4Hb+2IfFstiOSKFbJ4= diff --git a/store/driver/tikv_driver.go b/store/driver/tikv_driver.go index 52285f8de41bf..2f2a83ccc2afe 100644 --- a/store/driver/tikv_driver.go +++ b/store/driver/tikv_driver.go @@ -158,7 +158,7 @@ func (d TiKVDriver) OpenWithOptions(path string, options ...Option) (kv.Storage, } pdClient := tikv.CodecPDClient{Client: pdCli} - s, err := tikv.NewKVStore(uuid, &pdClient, spkv, tikv.NewRPCClient(d.security)) + s, err := tikv.NewKVStore(uuid, &pdClient, spkv, tikv.NewRPCClient(tikv.WithSecurity(d.security))) if err != nil { return nil, errors.Trace(err) } diff --git a/store/mockstore/redirector.go b/store/mockstore/redirector.go index 2b899d44eae65..ba7c7813583b3 100644 --- a/store/mockstore/redirector.go +++ b/store/mockstore/redirector.go @@ -54,7 +54,7 @@ func (c *clientRedirector) Close() error { func (c *clientRedirector) SendRequest(ctx context.Context, addr string, req *tikvrpc.Request, timeout time.Duration) (*tikvrpc.Response, error) { if req.StoreTp == tikvrpc.TiDB { c.Once.Do(func() { - c.rpcClient = tikv.NewRPCClient(config.GetGlobalConfig().Security.ClusterSecurity()) + c.rpcClient = tikv.NewRPCClient(tikv.WithSecurity(config.GetGlobalConfig().Security.ClusterSecurity())) }) return c.rpcClient.SendRequest(ctx, addr, req, timeout) } From 1c6c5483341cdc9820e1dcd5306421e1c2742985 Mon Sep 17 00:00:00 2001 From: Shenghui Wu <793703860@qq.com> Date: Tue, 17 Aug 2021 11:49:59 +0800 Subject: [PATCH 25/27] planner: add missing column for Apply convert to Join (#27246) --- expression/integration_test.go | 10 +++++++ planner/core/physical_plan_test.go | 33 +++++++++++++++++++++++ planner/core/rule_decorrelate.go | 32 +++++++++++++--------- planner/core/testdata/plan_suite_in.json | 6 +++++ planner/core/testdata/plan_suite_out.json | 22 +++++++++++++++ 5 files changed, 90 insertions(+), 13 deletions(-) diff --git a/expression/integration_test.go b/expression/integration_test.go index ddc528d4a45ad..65284e05a5ec1 100644 --- a/expression/integration_test.go +++ b/expression/integration_test.go @@ -10208,3 +10208,13 @@ func (s *testIntegrationSuite) TestConstPropNullFunctions(c *C) { tk.MustExec("insert into t2 values (0, 'c', null), (1, null, 0.1), (3, 'b', 0.01), (2, 'q', 0.12), (null, 'a', -0.1), (null, null, null)") tk.MustQuery("select * from t2 where t2.i2=((select count(1) from t1 where t1.i1=t2.i2))").Check(testkit.Rows("1 0.1")) } + +func (s *testIntegrationSuite) TestIssue27233(c *C) { + tk := testkit.NewTestKit(c, s.store) + tk.MustExec("use test;") + tk.MustExec("drop table if exists t;") + tk.MustExec("CREATE TABLE `t` (\n `COL1` tinyint(45) NOT NULL,\n `COL2` tinyint(45) NOT NULL,\n PRIMARY KEY (`COL1`,`COL2`) /*T![clustered_index] NONCLUSTERED */\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;") + tk.MustExec("insert into t values(122,100),(124,-22),(124,34),(127,103);") + tk.MustQuery("SELECT col2 FROM t AS T1 WHERE ( SELECT count(DISTINCT COL1, COL2) FROM t AS T2 WHERE T2.COL1 > T1.COL1 ) > 2 ;"). + Check(testkit.Rows("100")) +} diff --git a/planner/core/physical_plan_test.go b/planner/core/physical_plan_test.go index b93d20501c372..99de15e46825f 100644 --- a/planner/core/physical_plan_test.go +++ b/planner/core/physical_plan_test.go @@ -1740,6 +1740,39 @@ func (s *testPlanSuite) TestEnumIndex(c *C) { } } +func (s *testPlanSuite) TestIssue27233(c *C) { + var ( + input []string + output []struct { + SQL string + Plan []string + Result []string + } + ) + s.testData.GetTestCases(c, &input, &output) + store, dom, err := newStoreWithBootstrap() + c.Assert(err, IsNil) + defer func() { + dom.Close() + store.Close() + }() + tk := testkit.NewTestKit(c, store) + tk.MustExec("use test") + tk.MustExec("drop table if exists t") + tk.MustExec("CREATE TABLE `PK_S_MULTI_31` (\n `COL1` tinyint(45) NOT NULL,\n `COL2` tinyint(45) NOT NULL,\n PRIMARY KEY (`COL1`,`COL2`) /*T![clustered_index] NONCLUSTERED */\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;") + tk.MustExec("insert into PK_S_MULTI_31 values(122,100),(124,-22),(124,34),(127,103);") + + for i, ts := range input { + s.testData.OnRecord(func() { + output[i].SQL = ts + output[i].Plan = s.testData.ConvertRowsToStrings(tk.MustQuery("explain format='brief'" + ts).Rows()) + output[i].Result = s.testData.ConvertRowsToStrings(tk.MustQuery(ts).Sort().Rows()) + }) + tk.MustQuery("explain format='brief' " + ts).Check(testkit.Rows(output[i].Plan...)) + tk.MustQuery(ts).Sort().Check(testkit.Rows(output[i].Result...)) + } +} + func (s *testPlanSuite) TestPossibleProperties(c *C) { store, dom, err := newStoreWithBootstrap() c.Assert(err, IsNil) diff --git a/planner/core/rule_decorrelate.go b/planner/core/rule_decorrelate.go index 6d8480fc8cad8..8071623fd5707 100644 --- a/planner/core/rule_decorrelate.go +++ b/planner/core/rule_decorrelate.go @@ -190,22 +190,28 @@ func (s *decorrelateSolver) optimize(ctx context.Context, p LogicalPlan) (Logica resetNotNullFlag(apply.schema, outerPlan.Schema().Len(), apply.schema.Len()) for i, aggFunc := range agg.AggFuncs { - switch expr := aggFunc.Args[0].(type) { - case *expression.Column: - if idx := apply.schema.ColumnIndex(expr); idx != -1 { - desc, err := aggregation.NewAggFuncDesc(agg.ctx, agg.AggFuncs[i].Name, []expression.Expression{apply.schema.Columns[idx]}, agg.AggFuncs[i].HasDistinct) - if err != nil { - return nil, err + aggArgs := make([]expression.Expression, 0, len(aggFunc.Args)) + for _, arg := range aggFunc.Args { + switch expr := arg.(type) { + case *expression.Column: + if idx := apply.schema.ColumnIndex(expr); idx != -1 { + aggArgs = append(aggArgs, apply.schema.Columns[idx]) + } else { + aggArgs = append(aggArgs, expr) } - newAggFuncs = append(newAggFuncs, desc) + case *expression.ScalarFunction: + expr.RetType = expr.RetType.Clone() + expr.RetType.Flag &= ^mysql.NotNullFlag + aggArgs = append(aggArgs, expr) + default: + aggArgs = append(aggArgs, expr) } - case *expression.ScalarFunction: - expr.RetType = expr.RetType.Clone() - expr.RetType.Flag &= ^mysql.NotNullFlag - newAggFuncs = append(newAggFuncs, aggFunc) - default: - newAggFuncs = append(newAggFuncs, aggFunc) } + desc, err := aggregation.NewAggFuncDesc(agg.ctx, agg.AggFuncs[i].Name, aggArgs, agg.AggFuncs[i].HasDistinct) + if err != nil { + return nil, err + } + newAggFuncs = append(newAggFuncs, desc) } agg.AggFuncs = newAggFuncs np, err := s.optimize(ctx, p) diff --git a/planner/core/testdata/plan_suite_in.json b/planner/core/testdata/plan_suite_in.json index e56576d82cfbc..297afb32bebc5 100644 --- a/planner/core/testdata/plan_suite_in.json +++ b/planner/core/testdata/plan_suite_in.json @@ -716,5 +716,11 @@ "select e from t where e = ''", "select e from t where e != ''" ] + }, + { + "name": "TestIssue27233", + "cases": [ + "SELECT col2 FROM PK_S_MULTI_31 AS T1 WHERE (SELECT count(DISTINCT COL1, COL2) FROM PK_S_MULTI_31 AS T2 WHERE T2.COL1>T1.COL1)>2 order by col2;" + ] } ] diff --git a/planner/core/testdata/plan_suite_out.json b/planner/core/testdata/plan_suite_out.json index 9b1d035c10814..e47ca25783af5 100644 --- a/planner/core/testdata/plan_suite_out.json +++ b/planner/core/testdata/plan_suite_out.json @@ -2559,5 +2559,27 @@ ] } ] + }, + { + "Name": "TestIssue27233", + "Cases": [ + { + "SQL": "SELECT col2 FROM PK_S_MULTI_31 AS T1 WHERE (SELECT count(DISTINCT COL1, COL2) FROM PK_S_MULTI_31 AS T2 WHERE T2.COL1>T1.COL1)>2 order by col2;", + "Plan": [ + "Sort 0.80 root test.pk_s_multi_31.col2", + "└─Projection 0.80 root test.pk_s_multi_31.col2", + " └─Selection 0.80 root gt(Column#7, 2)", + " └─HashAgg 1.00 root group by:test.pk_s_multi_31.col1, test.pk_s_multi_31.col2, funcs:firstrow(test.pk_s_multi_31.col2)->test.pk_s_multi_31.col2, funcs:count(distinct test.pk_s_multi_31.col1, test.pk_s_multi_31.col2)->Column#7", + " └─HashJoin 100000000.00 root CARTESIAN left outer join, other cond:gt(test.pk_s_multi_31.col1, test.pk_s_multi_31.col1)", + " ├─IndexReader(Build) 10000.00 root index:IndexFullScan", + " │ └─IndexFullScan 10000.00 cop[tikv] table:T2, index:PRIMARY(COL1, COL2) keep order:false, stats:pseudo", + " └─IndexReader(Probe) 10000.00 root index:IndexFullScan", + " └─IndexFullScan 10000.00 cop[tikv] table:T1, index:PRIMARY(COL1, COL2) keep order:false, stats:pseudo" + ], + "Result": [ + "100" + ] + } + ] } ] From 4d5350c718d902dcd84bb5237c6a66635b0ff11e Mon Sep 17 00:00:00 2001 From: rebelice Date: Tue, 17 Aug 2021 12:37:59 +0800 Subject: [PATCH 26/27] planner: fix the problem of using `enum like 'x%'` to build the wrong range (#27267) --- planner/core/integration_test.go | 39 ++++++++++++++++++++++++++++++++ util/ranger/checker.go | 11 +++++++++ 2 files changed, 50 insertions(+) diff --git a/planner/core/integration_test.go b/planner/core/integration_test.go index f52f75b5cd33f..e37ef484391f9 100644 --- a/planner/core/integration_test.go +++ b/planner/core/integration_test.go @@ -4216,3 +4216,42 @@ func (s *testIntegrationSuite) TestOutputSkylinePruningInfo(c *C) { tk.MustQuery("show warnings").Check(testkit.Rows(output[i].Warnings...)) } } + +func (s *testIntegrationSuite) TestIssues27130(c *C) { + tk := testkit.NewTestKit(c, s.store) + tk.MustExec("use test") + + tk.MustExec("drop table if exists t1") + tk.MustExec("create table t1( a enum('y','b','Abc','null'),b enum('y','b','Abc','null'),key(a));") + tk.MustQuery(`explain format=brief select * from t1 where a like "A%"`).Check(testkit.Rows( + "TableReader 8000.00 root data:Selection", + "└─Selection 8000.00 cop[tikv] like(test.t1.a, \"A%\", 92)", + " └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + )) + tk.MustQuery(`explain format=brief select * from t1 where b like "A%"`).Check(testkit.Rows( + "TableReader 8000.00 root data:Selection", + "└─Selection 8000.00 cop[tikv] like(test.t1.b, \"A%\", 92)", + " └─TableFullScan 10000.00 cop[tikv] table:t1 keep order:false, stats:pseudo", + )) + + tk.MustExec("drop table if exists t2") + tk.MustExec("create table t2( a enum('y','b','Abc','null'),b enum('y','b','Abc','null'),key(a, b));") + tk.MustQuery(`explain format=brief select * from t2 where a like "A%"`).Check(testkit.Rows( + "TableReader 8000.00 root data:Selection", + "└─Selection 8000.00 cop[tikv] like(test.t2.a, \"A%\", 92)", + " └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + )) + tk.MustQuery(`explain format=brief select * from t2 where a like "A%" and b like "A%"`).Check(testkit.Rows( + "TableReader 8000.00 root data:Selection", + "└─Selection 8000.00 cop[tikv] like(test.t2.a, \"A%\", 92), like(test.t2.b, \"A%\", 92)", + " └─TableFullScan 10000.00 cop[tikv] table:t2 keep order:false, stats:pseudo", + )) + + tk.MustExec("drop table if exists t3") + tk.MustExec("create table t3( a int,b enum('y','b','Abc','null'), c enum('y','b','Abc','null'),key(a, b, c));") + tk.MustQuery(`explain format=brief select * from t3 where a = 1 and b like "A%"`).Check(testkit.Rows( + "IndexReader 8.00 root index:Selection", + "└─Selection 8.00 cop[tikv] like(test.t3.b, \"A%\", 92)", + " └─IndexRangeScan 10.00 cop[tikv] table:t3, index:a(a, b, c) range:[1,1], keep order:false, stats:pseudo", + )) +} diff --git a/util/ranger/checker.go b/util/ranger/checker.go index 926a953d65e5c..7a25a92706037 100644 --- a/util/ranger/checker.go +++ b/util/ranger/checker.go @@ -16,6 +16,7 @@ package ranger import ( "github.com/pingcap/parser/ast" + "github.com/pingcap/parser/mysql" "github.com/pingcap/tidb/expression" "github.com/pingcap/tidb/types" "github.com/pingcap/tidb/util/collate" @@ -145,12 +146,22 @@ func (c *conditionChecker) checkLikeFunc(scalar *expression.ScalarFunction) bool return false } if patternStr[i] == '%' { + // We currently do not support using `enum like 'xxx%'` to build range + // see https://github.com/pingcap/tidb/issues/27130 for more details + if scalar.GetArgs()[0].GetType().Tp == mysql.TypeEnum { + return false + } if i != len(patternStr)-1 { c.shouldReserve = true } break } if patternStr[i] == '_' { + // We currently do not support using `enum like 'xxx_'` to build range + // see https://github.com/pingcap/tidb/issues/27130 for more details + if scalar.GetArgs()[0].GetType().Tp == mysql.TypeEnum { + return false + } c.shouldReserve = true break } From 50572f1ab66aea7e4a49721e982a78adf28b0a5a Mon Sep 17 00:00:00 2001 From: Morgan Tocker Date: Mon, 16 Aug 2021 22:59:59 -0600 Subject: [PATCH 27/27] server: remove unused status api (master) (#27262) --- server/http_handler_test.go | 61 ------- server/http_status.go | 2 - server/sql_info_fetcher.go | 339 ------------------------------------ 3 files changed, 402 deletions(-) delete mode 100644 server/sql_info_fetcher.go diff --git a/server/http_handler_test.go b/server/http_handler_test.go index 81ae3ce570053..940c2abb80603 100644 --- a/server/http_handler_test.go +++ b/server/http_handler_test.go @@ -1442,67 +1442,6 @@ func (ts *HTTPHandlerTestSuite) TestCheckCN(c *C) { c.Assert(err, NotNil) } -func (ts *HTTPHandlerTestSuite) TestZipInfoForSQL(c *C) { - ts.startServer(c) - defer ts.stopServer(c) - - db, err := sql.Open("mysql", ts.getDSN()) - c.Assert(err, IsNil, Commentf("Error connecting")) - defer func() { - err := db.Close() - c.Assert(err, IsNil) - }() - dbt := &DBTest{c, db} - - dbt.mustExec("use test") - dbt.mustExec("create table if not exists t (a int)") - - urlValues := url.Values{ - "sql": {"select * from t"}, - "current_db": {"test"}, - } - resp, err := ts.formStatus("/debug/sub-optimal-plan", urlValues) - c.Assert(err, IsNil) - c.Assert(resp.StatusCode, Equals, http.StatusOK) - b, err := httputil.DumpResponse(resp, true) - c.Assert(err, IsNil) - c.Assert(len(b), Greater, 0) - c.Assert(resp.Body.Close(), IsNil) - - resp, err = ts.formStatus("/debug/sub-optimal-plan?pprof_time=5&timeout=0", urlValues) - c.Assert(err, IsNil) - c.Assert(resp.StatusCode, Equals, http.StatusOK) - b, err = httputil.DumpResponse(resp, true) - c.Assert(err, IsNil) - c.Assert(len(b), Greater, 0) - c.Assert(resp.Body.Close(), IsNil) - - resp, err = ts.formStatus("/debug/sub-optimal-plan?pprof_time=5", urlValues) - c.Assert(err, IsNil) - c.Assert(resp.StatusCode, Equals, http.StatusOK) - b, err = httputil.DumpResponse(resp, true) - c.Assert(err, IsNil) - c.Assert(len(b), Greater, 0) - c.Assert(resp.Body.Close(), IsNil) - - resp, err = ts.formStatus("/debug/sub-optimal-plan?timeout=1", urlValues) - c.Assert(err, IsNil) - c.Assert(resp.StatusCode, Equals, http.StatusOK) - b, err = httputil.DumpResponse(resp, true) - c.Assert(err, IsNil) - c.Assert(len(b), Greater, 0) - c.Assert(resp.Body.Close(), IsNil) - - urlValues.Set("current_db", "non_exists_db") - resp, err = ts.formStatus("/debug/sub-optimal-plan", urlValues) - c.Assert(err, IsNil) - c.Assert(resp.StatusCode, Equals, http.StatusInternalServerError) - b, err = io.ReadAll(resp.Body) - c.Assert(err, IsNil) - c.Assert(string(b), Equals, "use database non_exists_db failed, err: [schema:1049]Unknown database 'non_exists_db'\n") - c.Assert(resp.Body.Close(), IsNil) -} - func (ts *HTTPHandlerTestSuite) TestFailpointHandler(c *C) { defer ts.stopServer(c) diff --git a/server/http_status.go b/server/http_status.go index d55d04c043a5f..38f814edc3081 100644 --- a/server/http_status.go +++ b/server/http_status.go @@ -300,8 +300,6 @@ func (s *Server) startHTTPServer() { err = zw.Close() terror.Log(err) }) - fetcher := sqlInfoFetcher{store: tikvHandlerTool.Store} - serverMux.HandleFunc("/debug/sub-optimal-plan", fetcher.zipInfoForSQL) // failpoint is enabled only for tests so we can add some http APIs here for tests. failpoint.Inject("enableTestAPI", func() { diff --git a/server/sql_info_fetcher.go b/server/sql_info_fetcher.go deleted file mode 100644 index 4f4fe6e02344f..0000000000000 --- a/server/sql_info_fetcher.go +++ /dev/null @@ -1,339 +0,0 @@ -// Copyright 2019 PingCAP, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package server - -import ( - "archive/zip" - "bytes" - "context" - "encoding/json" - "fmt" - "net/http" - "strconv" - "strings" - "time" - - "github.com/pingcap/errors" - "github.com/pingcap/parser" - "github.com/pingcap/parser/ast" - "github.com/pingcap/parser/model" - "github.com/pingcap/parser/terror" - "github.com/pingcap/tidb/domain" - "github.com/pingcap/tidb/kv" - "github.com/pingcap/tidb/session" - "github.com/pingcap/tidb/statistics/handle" - "github.com/pingcap/tidb/util/sqlexec" - "github.com/pingcap/tidb/util/topsql/tracecpu" -) - -type sqlInfoFetcher struct { - store kv.Storage - do *domain.Domain - s session.Session -} - -type tableNamePair struct { - DBName string - TableName string -} - -type tableNameExtractor struct { - curDB string - names map[tableNamePair]struct{} -} - -func (tne *tableNameExtractor) Enter(in ast.Node) (ast.Node, bool) { - if _, ok := in.(*ast.TableName); ok { - return in, true - } - return in, false -} - -func (tne *tableNameExtractor) Leave(in ast.Node) (ast.Node, bool) { - if t, ok := in.(*ast.TableName); ok { - tp := tableNamePair{DBName: t.Schema.L, TableName: t.Name.L} - if tp.DBName == "" { - tp.DBName = tne.curDB - } - if _, ok := tne.names[tp]; !ok { - tne.names[tp] = struct{}{} - } - } - return in, true -} - -func (sh *sqlInfoFetcher) zipInfoForSQL(w http.ResponseWriter, r *http.Request) { - var err error - sh.s, err = session.CreateSession(sh.store) - if err != nil { - serveError(w, http.StatusInternalServerError, fmt.Sprintf("create session failed, err: %v", err)) - return - } - defer sh.s.Close() - - sh.do = domain.GetDomain(sh.s) - reqCtx := r.Context() - sql := r.FormValue("sql") - pprofTimeString := r.FormValue("pprof_time") - timeoutString := r.FormValue("timeout") - curDB := strings.ToLower(r.FormValue("current_db")) - if curDB != "" { - _, err = sh.s.ExecuteInternal(context.Background(), "use %n", curDB) - if err != nil { - serveError(w, http.StatusInternalServerError, fmt.Sprintf("use database %v failed, err: %v", curDB, err)) - return - } - } - var ( - pprofTime int - timeout int - ) - if pprofTimeString != "" { - pprofTime, err = strconv.Atoi(pprofTimeString) - if err != nil { - serveError(w, http.StatusBadRequest, "invalid value for pprof_time, please input a int value larger than 5") - return - } - } - if pprofTimeString != "" && pprofTime < 5 { - serveError(w, http.StatusBadRequest, "pprof time is too short, please input a int value larger than 5") - } - if timeoutString != "" { - timeout, err = strconv.Atoi(timeoutString) - if err != nil { - serveError(w, http.StatusBadRequest, "invalid value for timeout") - return - } - } - if timeout < pprofTime { - timeout = pprofTime - } - pairs, err := sh.extractTableNames(sql, curDB) - if err != nil { - serveError(w, http.StatusBadRequest, fmt.Sprintf("invalid SQL text, err: %v", err)) - return - } - zw := zip.NewWriter(w) - defer func() { - terror.Log(zw.Close()) - }() - for pair := range pairs { - jsonTbl, err := sh.getStatsForTable(pair) - if err != nil { - err = sh.writeErrFile(zw, fmt.Sprintf("%v.%v.stats.err.txt", pair.DBName, pair.TableName), err) - terror.Log(err) - continue - } - statsFw, err := zw.Create(fmt.Sprintf("%v.%v.json", pair.DBName, pair.TableName)) - if err != nil { - terror.Log(err) - continue - } - data, err := json.Marshal(jsonTbl) - if err != nil { - err = sh.writeErrFile(zw, fmt.Sprintf("%v.%v.stats.err.txt", pair.DBName, pair.TableName), err) - terror.Log(err) - continue - } - _, err = statsFw.Write(data) - if err != nil { - err = sh.writeErrFile(zw, fmt.Sprintf("%v.%v.stats.err.txt", pair.DBName, pair.TableName), err) - terror.Log(err) - continue - } - } - for pair := range pairs { - err = sh.getShowCreateTable(pair, zw) - if err != nil { - err = sh.writeErrFile(zw, fmt.Sprintf("%v.%v.schema.err.txt", pair.DBName, pair.TableName), err) - terror.Log(err) - return - } - } - // If we don't catch profile. We just get a explain result. - if pprofTime == 0 { - recordSets, err := sh.s.(sqlexec.SQLExecutor).Execute(reqCtx, fmt.Sprintf("explain %s", sql)) - if len(recordSets) > 0 { - defer terror.Call(recordSets[0].Close) - } - if err != nil { - err = sh.writeErrFile(zw, "explain.err.txt", err) - terror.Log(err) - return - } - sRows, err := session.ResultSetToStringSlice(reqCtx, sh.s, recordSets[0]) - if err != nil { - err = sh.writeErrFile(zw, "explain.err.txt", err) - terror.Log(err) - return - } - fw, err := zw.Create("explain.txt") - if err != nil { - terror.Log(err) - return - } - for _, row := range sRows { - fmt.Fprintf(fw, "%s\n", strings.Join(row, "\t")) - } - } else { - // Otherwise we catch a profile and run `EXPLAIN ANALYZE` result. - ctx, cancelFunc := context.WithCancel(reqCtx) - timer := time.NewTimer(time.Second * time.Duration(timeout)) - resultChan := make(chan *explainAnalyzeResult) - go sh.getExplainAnalyze(ctx, sql, resultChan) - errChan := make(chan error) - var buf bytes.Buffer - go sh.catchCPUProfile(reqCtx, pprofTime, &buf, errChan) - select { - case result := <-resultChan: - timer.Stop() - cancelFunc() - if result.err != nil { - err = sh.writeErrFile(zw, "explain_analyze.err.txt", result.err) - terror.Log(err) - return - } - if len(result.rows) == 0 { - break - } - fw, err := zw.Create("explain_analyze.txt") - if err != nil { - terror.Log(err) - break - } - for _, row := range result.rows { - fmt.Fprintf(fw, "%s\n", strings.Join(row, "\t")) - } - case <-timer.C: - cancelFunc() - } - err = dumpCPUProfile(errChan, &buf, zw) - if err != nil { - err = sh.writeErrFile(zw, "profile.err.txt", err) - terror.Log(err) - return - } - } -} - -func dumpCPUProfile(errChan chan error, buf *bytes.Buffer, zw *zip.Writer) error { - err := <-errChan - if err != nil { - return err - } - fw, err := zw.Create("profile") - if err != nil { - return err - } - _, err = fw.Write(buf.Bytes()) - if err != nil { - return err - } - return nil -} - -func (sh *sqlInfoFetcher) writeErrFile(zw *zip.Writer, name string, err error) error { - fw, err1 := zw.Create(name) - if err1 != nil { - return err1 - } - fmt.Fprintf(fw, "error: %v", err) - return nil -} - -type explainAnalyzeResult struct { - rows [][]string - err error -} - -func (sh *sqlInfoFetcher) getExplainAnalyze(ctx context.Context, sql string, resultChan chan<- *explainAnalyzeResult) { - recordSets, err := sh.s.(sqlexec.SQLExecutor).Execute(ctx, fmt.Sprintf("explain analyze %s", sql)) - if err != nil { - resultChan <- &explainAnalyzeResult{err: err} - return - } - rows, err := session.ResultSetToStringSlice(ctx, sh.s, recordSets[0]) - if err != nil { - terror.Log(err) - return - } - if len(recordSets) > 0 { - terror.Call(recordSets[0].Close) - } - resultChan <- &explainAnalyzeResult{rows: rows} -} - -func (sh *sqlInfoFetcher) catchCPUProfile(ctx context.Context, sec int, buf *bytes.Buffer, errChan chan<- error) { - if err := tracecpu.StartCPUProfile(buf); err != nil { - errChan <- err - return - } - sleepWithCtx(ctx, time.Duration(sec)*time.Second) - err := tracecpu.StopCPUProfile() - errChan <- err -} - -func (sh *sqlInfoFetcher) getStatsForTable(pair tableNamePair) (*handle.JSONTable, error) { - is := sh.do.InfoSchema() - h := sh.do.StatsHandle() - tbl, err := is.TableByName(model.NewCIStr(pair.DBName), model.NewCIStr(pair.TableName)) - if err != nil { - return nil, err - } - js, err := h.DumpStatsToJSON(pair.DBName, tbl.Meta(), nil) - return js, err -} - -func (sh *sqlInfoFetcher) getShowCreateTable(pair tableNamePair, zw *zip.Writer) error { - recordSets, err := sh.s.(sqlexec.SQLExecutor).Execute(context.TODO(), fmt.Sprintf("show create table `%v`.`%v`", pair.DBName, pair.TableName)) - if len(recordSets) > 0 { - defer terror.Call(recordSets[0].Close) - } - if err != nil { - return err - } - sRows, err := session.ResultSetToStringSlice(context.Background(), sh.s, recordSets[0]) - if err != nil { - terror.Log(err) - return nil - } - fw, err := zw.Create(fmt.Sprintf("%v.%v.schema.txt", pair.DBName, pair.TableName)) - if err != nil { - terror.Log(err) - return nil - } - for _, row := range sRows { - fmt.Fprintf(fw, "%s\n", strings.Join(row, "\t")) - } - return nil -} - -func (sh *sqlInfoFetcher) extractTableNames(sql, curDB string) (map[tableNamePair]struct{}, error) { - p := parser.New() - charset, collation := sh.s.GetSessionVars().GetCharsetInfo() - stmts, _, err := p.Parse(sql, charset, collation) - if err != nil { - return nil, err - } - if len(stmts) > 1 { - return nil, errors.Errorf("Only 1 statement is allowed") - } - extractor := &tableNameExtractor{ - curDB: curDB, - names: make(map[tableNamePair]struct{}), - } - stmts[0].Accept(extractor) - return extractor.names, nil -}