From 8f7459f524697d54256c30dee1295b1e016998b4 Mon Sep 17 00:00:00 2001 From: Dustin Brown Date: Thu, 13 Apr 2023 15:57:57 -0700 Subject: [PATCH] [auto-bump] [no-release-notes] dependency by timsehn (#5727) --- go/go.mod | 2 +- go/go.sum | 4 +- .../doltcore/merge/violations_fk_prolly.go | 16 +- .../merge/violations_unique_prolly.go | 8 +- .../binlog_replication_alltypes_test.go | 2 +- .../doltcore/sqle/enginetest/ddl_queries.go | 2 +- .../doltcore/sqle/json/noms_json_value.go | 43 ++++-- integration-tests/bats/blame-system-view.bats | 2 +- .../bats/constraint-violations.bats | 138 +++++++++--------- integration-tests/bats/json.bats | 11 ++ .../bats/migration-integration.bats | 8 +- integration-tests/bats/types.bats | 4 +- 12 files changed, 135 insertions(+), 105 deletions(-) diff --git a/go/go.mod b/go/go.mod index 515f098007..5f9355ad7d 100644 --- a/go/go.mod +++ b/go/go.mod @@ -58,7 +58,7 @@ require ( github.com/cenkalti/backoff/v4 v4.1.3 github.com/cespare/xxhash v1.1.0 github.com/creasty/defaults v1.6.0 - github.com/dolthub/go-mysql-server v0.14.1-0.20230407214800-c77ed0254fb9 + github.com/dolthub/go-mysql-server v0.14.1-0.20230411230903-603151a345fc github.com/dolthub/swiss v0.1.0 github.com/google/flatbuffers v2.0.6+incompatible github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 diff --git a/go/go.sum b/go/go.sum index 894d6de9cc..7a775c16a6 100644 --- a/go/go.sum +++ b/go/go.sum @@ -166,8 +166,8 @@ github.com/dolthub/flatbuffers v1.13.0-dh.1 h1:OWJdaPep22N52O/0xsUevxJ6Qfw1M2txC github.com/dolthub/flatbuffers v1.13.0-dh.1/go.mod h1:CorYGaDmXjHz1Z7i50PYXG1Ricn31GcA2wNOTFIQAKE= github.com/dolthub/fslock v0.0.3 h1:iLMpUIvJKMKm92+N1fmHVdxJP5NdyDK5bK7z7Ba2s2U= github.com/dolthub/fslock v0.0.3/go.mod h1:QWql+P17oAAMLnL4HGB5tiovtDuAjdDTPbuqx7bYfa0= -github.com/dolthub/go-mysql-server v0.14.1-0.20230407214800-c77ed0254fb9 h1:Yhxil3xgkUS2FRqK5RbQrN5cJqlhJlw2e9CtBiG1qjA= -github.com/dolthub/go-mysql-server v0.14.1-0.20230407214800-c77ed0254fb9/go.mod h1:hjNxEOnhn4WrCw0lMNpA4LU+lwdS79JjLSnLHyVy5m4= +github.com/dolthub/go-mysql-server v0.14.1-0.20230411230903-603151a345fc h1:Xg1+lxEphxD4Cev2qowazxzwaw8tnxrXlqaUHtTdfX0= +github.com/dolthub/go-mysql-server v0.14.1-0.20230411230903-603151a345fc/go.mod h1:hjNxEOnhn4WrCw0lMNpA4LU+lwdS79JjLSnLHyVy5m4= github.com/dolthub/ishell v0.0.0-20221214210346-d7db0b066488 h1:0HHu0GWJH0N6a6keStrHhUAK5/o9LVfkh44pvsV4514= github.com/dolthub/ishell v0.0.0-20221214210346-d7db0b066488/go.mod h1:ehexgi1mPxRTk0Mok/pADALuHbvATulTh6gzr7NzZto= github.com/dolthub/jsonpath v0.0.0-20210609232853-d49537a30474 h1:xTrR+l5l+1Lfq0NvhiEsctylXinUMFhhsqaEcl414p8= diff --git a/go/libraries/doltcore/merge/violations_fk_prolly.go b/go/libraries/doltcore/merge/violations_fk_prolly.go index de8a465d5f..ef40a19a05 100644 --- a/go/libraries/doltcore/merge/violations_fk_prolly.go +++ b/go/libraries/doltcore/merge/violations_fk_prolly.go @@ -406,23 +406,23 @@ var _ types.JSONValue = FkCVMeta{} // output which includes additional whitespace between keys, values, and array elements. func (m FkCVMeta) PrettyPrint() string { jsonStr := fmt.Sprintf(`{`+ - `"Columns": ["%s"], `+ - `"ForeignKey": "%s", `+ `"Index": "%s", `+ + `"Table": "%s", `+ + `"Columns": ["%s"], `+ `"OnDelete": "%s", `+ `"OnUpdate": "%s", `+ - `"ReferencedColumns": ["%s"], `+ + `"ForeignKey": "%s", `+ `"ReferencedIndex": "%s", `+ `"ReferencedTable": "%s", `+ - `"Table": "%s"}`, - strings.Join(m.Columns, `', '`), - m.ForeignKey, + `"ReferencedColumns": ["%s"]}`, m.Index, + m.Table, + strings.Join(m.Columns, `', '`), m.OnDelete, m.OnUpdate, - strings.Join(m.ReferencedColumns, `', '`), + m.ForeignKey, m.ReferencedIndex, m.ReferencedTable, - m.Table) + strings.Join(m.ReferencedColumns, `', '`)) return jsonStr } diff --git a/go/libraries/doltcore/merge/violations_unique_prolly.go b/go/libraries/doltcore/merge/violations_unique_prolly.go index 0d77b4255e..aa2e03c11d 100644 --- a/go/libraries/doltcore/merge/violations_unique_prolly.go +++ b/go/libraries/doltcore/merge/violations_unique_prolly.go @@ -68,10 +68,10 @@ func (m UniqCVMeta) ToString(ctx *sql.Context) (string, error) { func (m UniqCVMeta) PrettyPrint() string { jsonStr := fmt.Sprintf(`{`+ - `"Columns": ["%s"], `+ - `"Name": "%s"}`, - strings.Join(m.Columns, `', '`), - m.Name) + `"Name": "%s", `+ + `"Columns": ["%s"]}`, + m.Name, + strings.Join(m.Columns, `', '`)) return jsonStr } diff --git a/go/libraries/doltcore/sqle/binlogreplication/binlog_replication_alltypes_test.go b/go/libraries/doltcore/sqle/binlogreplication/binlog_replication_alltypes_test.go index cffaa18482..82bdaf5074 100644 --- a/go/libraries/doltcore/sqle/binlogreplication/binlog_replication_alltypes_test.go +++ b/go/libraries/doltcore/sqle/binlogreplication/binlog_replication_alltypes_test.go @@ -500,7 +500,7 @@ var allTypes = []typeDescription{ TypeDefinition: "json", Assertions: [2]typeDescriptionAssertion{ newTypeDescriptionAssertion("{}"), - newTypeDescriptionAssertion("{\"name\":\"BillyBob\",\"os\":\"Mac\",\"resolution\":{\"x\":1920,\"y\":1080}}"), + newTypeDescriptionAssertion("{\"os\":\"Mac\",\"name\":\"BillyBob\",\"resolution\":{\"x\":1920,\"y\":1080}}"), }, }, } diff --git a/go/libraries/doltcore/sqle/enginetest/ddl_queries.go b/go/libraries/doltcore/sqle/enginetest/ddl_queries.go index ac6df7f6a3..cb19825b85 100755 --- a/go/libraries/doltcore/sqle/enginetest/ddl_queries.go +++ b/go/libraries/doltcore/sqle/enginetest/ddl_queries.go @@ -446,7 +446,7 @@ var ModifyColumnTypeScripts = []queries.ScriptTest{ { Query: "show create table test", Expected: []sql.Row{{"test", "CREATE TABLE `test` (\n" + - " `pk` datetime NOT NULL,\n" + + " `pk` datetime(6) NOT NULL,\n" + " `v1` bit(20),\n" + " PRIMARY KEY (`pk`),\n" + " KEY `v1` (`v1`)\n" + diff --git a/go/libraries/doltcore/sqle/json/noms_json_value.go b/go/libraries/doltcore/sqle/json/noms_json_value.go index 44fe726669..2d3cfedbb5 100644 --- a/go/libraries/doltcore/sqle/json/noms_json_value.go +++ b/go/libraries/doltcore/sqle/json/noms_json_value.go @@ -17,6 +17,8 @@ package json import ( "context" "errors" + "fmt" + "sort" "strings" "github.com/dolthub/go-mysql-server/sql" @@ -255,25 +257,42 @@ func marshalToString(ctx context.Context, sb *strings.Builder, val types.Value) sb.WriteRune(']') case types.Map: - sb.WriteRune('{') - seenOne := false - err = val.Iter(ctx, func(k, v types.Value) (stop bool, err error) { - if seenOne { - sb.WriteString(", ") + obj := make(map[string]types.Value, val.Len()) + var keys []string + err = val.Iter(ctx, func(key, value types.Value) (stop bool, err error) { + ks, ok := key.(types.String) + if !ok { + return false, ErrUnexpectedJSONTypeOut } - seenOne = true - - sb.WriteString(k.HumanReadableString()) - sb.WriteString(": ") - - err = marshalToString(ctx, sb, v) + obj[string(ks)] = value + keys = append(keys, string(ks)) return }) if err != nil { return err } - sb.WriteRune('}') + // JSON map keys are sorted k by length then alphabetically + sort.Slice(keys, func(i, j int) bool { + if len(keys[i]) != len(keys[j]) { + return len(keys[i]) < len(keys[j]) + } + return keys[i] < keys[j] + }) + sb.WriteRune('{') + seenOne := false + for _, k := range keys { + if seenOne { + sb.WriteString(", ") + } + seenOne = true + sb.WriteString(fmt.Sprintf("\"%s\": ", k)) + err = marshalToString(ctx, sb, obj[k]) + if err != nil { + return err + } + } + sb.WriteRune('}') default: err = ErrUnexpectedJSONTypeOut } diff --git a/integration-tests/bats/blame-system-view.bats b/integration-tests/bats/blame-system-view.bats index b256e707d2..91656de67b 100644 --- a/integration-tests/bats/blame-system-view.bats +++ b/integration-tests/bats/blame-system-view.bats @@ -150,7 +150,7 @@ SQL [[ "$output" =~ "+-------------+----------------+------+-----+---------+-------+" ]] || false [[ "$output" =~ "| pk1 | bigint | YES | | NULL | |" ]] || false [[ "$output" =~ "| commit | varchar(16383) | YES | | NULL | |" ]] || false - [[ "$output" =~ "| commit_date | datetime | YES | | NULL | |" ]] || false + [[ "$output" =~ "| commit_date | datetime(6) | YES | | NULL | |" ]] || false [[ "$output" =~ "| committer | text | NO | | NULL | |" ]] || false [[ "$output" =~ "| email | text | NO | | NULL | |" ]] || false [[ "$output" =~ "| message | text | NO | | NULL | |" ]] || false diff --git a/integration-tests/bats/constraint-violations.bats b/integration-tests/bats/constraint-violations.bats index a59b03b138..54305ef3f8 100644 --- a/integration-tests/bats/constraint-violations.bats +++ b/integration-tests/bats/constraint-violations.bats @@ -124,7 +124,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -172,7 +172,7 @@ SQL log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false echo $output - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -225,8 +225,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -278,8 +278,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -334,7 +334,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,3,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,3,3,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -385,8 +385,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -434,7 +434,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -481,7 +481,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -534,8 +534,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -587,8 +587,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -643,7 +643,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,3,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,3,3,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -694,8 +694,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -743,7 +743,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -790,7 +790,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -843,8 +843,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -896,8 +896,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -952,7 +952,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,3,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,3,3,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1003,8 +1003,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1147,7 +1147,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1197,7 +1197,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1251,8 +1251,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1307,8 +1307,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1364,7 +1364,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,3,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,3,3,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1416,8 +1416,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1468,7 +1468,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1518,7 +1518,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1572,8 +1572,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1628,8 +1628,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1685,7 +1685,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,3,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,3,3,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1737,8 +1737,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1789,7 +1789,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1839,7 +1839,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1893,8 +1893,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -1949,8 +1949,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2006,7 +2006,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,3,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,3,3,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2058,8 +2058,8 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false - [[ "$output" =~ 'foreign key,3,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false + [[ "$output" =~ 'foreign key,3,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "3" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2109,7 +2109,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2158,7 +2158,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2207,7 +2207,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2255,7 +2255,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2303,7 +2303,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2351,7 +2351,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""SET NULL"", ""OnUpdate"": ""SET NULL"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2403,7 +2403,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""child"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM parent" -r=csv log_status_eq "0" @@ -2454,7 +2454,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child1" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,20,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_c1"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child1""}"' ]] || false + [[ "$output" =~ 'foreign key,20,2,"{""Index"": ""v1"", ""Table"": ""child1"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_c1"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM dolt_constraint_violations_child2" -r=csv log_status_eq "0" @@ -2514,7 +2514,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child1" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,20,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_c1"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child1""}"' ]] || false + [[ "$output" =~ 'foreign key,20,2,"{""Index"": ""v1"", ""Table"": ""child1"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_c1"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM dolt_constraint_violations_child2" -r=csv log_status_eq "0" @@ -2574,7 +2574,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child1" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,20,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_c1"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child1""}"' ]] || false + [[ "$output" =~ 'foreign key,20,2,"{""Index"": ""v1"", ""Table"": ""child1"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_c1"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM dolt_constraint_violations_child2" -r=csv log_status_eq "0" @@ -2635,7 +2635,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_child1" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,20,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_c1"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""Table"": ""child1""}"' ]] || false + [[ "$output" =~ 'foreign key,20,2,"{""Index"": ""v1"", ""Table"": ""child1"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_c1"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""parent"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM dolt_constraint_violations_child2" -r=csv log_status_eq "0" @@ -2713,7 +2713,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_t2" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,2,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_t2"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""t1"", ""Table"": ""t2""}"' ]] || false + [[ "$output" =~ 'foreign key,2,2,"{""Index"": ""v1"", ""Table"": ""t2"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_t2"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""t1"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM t1" -r=csv log_status_eq "0" @@ -2743,7 +2743,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_t1" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,20,2,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_t1"", ""Index"": ""v1"", ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ReferencedColumns"": [""v1""], ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""t2"", ""Table"": ""t1""}"' ]] || false + [[ "$output" =~ 'foreign key,20,2,"{""Index"": ""v1"", ""Table"": ""t1"", ""Columns"": [""v1""], ""OnDelete"": ""RESTRICT"", ""OnUpdate"": ""RESTRICT"", ""ForeignKey"": ""fk_t1"", ""ReferencedIndex"": ""v1"", ""ReferencedTable"": ""t2"", ""ReferencedColumns"": [""v1""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM dolt_constraint_violations_t2" -r=csv log_status_eq "0" @@ -2788,7 +2788,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_test" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,4,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""pk""], ""ReferencedIndex"": """", ""ReferencedTable"": ""test"", ""Table"": ""test""}"' ]] || false + [[ "$output" =~ 'foreign key,4,3,"{""Index"": ""v1"", ""Table"": ""test"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": """", ""ReferencedTable"": ""test"", ""ReferencedColumns"": [""pk""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM test" -r=csv log_status_eq "0" @@ -2825,7 +2825,7 @@ SQL run dolt sql -q "SELECT * FROM dolt_constraint_violations_test" -r=csv log_status_eq "0" [[ "$output" =~ "violation_type,pk,v1,violation_info" ]] || false - [[ "$output" =~ 'foreign key,4,3,"{""Columns"": [""v1""], ""ForeignKey"": ""fk_name"", ""Index"": ""v1"", ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ReferencedColumns"": [""pk""], ""ReferencedIndex"": """", ""ReferencedTable"": ""test"", ""Table"": ""test""}"' ]] || false + [[ "$output" =~ 'foreign key,4,3,"{""Index"": ""v1"", ""Table"": ""test"", ""Columns"": [""v1""], ""OnDelete"": ""CASCADE"", ""OnUpdate"": ""CASCADE"", ""ForeignKey"": ""fk_name"", ""ReferencedIndex"": """", ""ReferencedTable"": ""test"", ""ReferencedColumns"": [""pk""]}"' ]] || false [[ "${#lines[@]}" = "2" ]] || false run dolt sql -q "SELECT * FROM test" -r=csv log_status_eq "0" diff --git a/integration-tests/bats/json.bats b/integration-tests/bats/json.bats index 9a1257bcf3..5e4b6bf75f 100644 --- a/integration-tests/bats/json.bats +++ b/integration-tests/bats/json.bats @@ -246,3 +246,14 @@ SQL [ "$status" -eq 0 ] [ "${lines[1]}" = '1,"[{""a"": ""<>&""}]"' ] } + +@test "json: insert json object with keys out of order" { + # JSON map keys are sorted k by length then alphabetically + dolt sql <