You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: internal/hammer/diff_test.go
+114Lines changed: 114 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -402,6 +402,23 @@ CREATE TABLE t1 (
402
402
`ALTER TABLE t1 ALTER COLUMN t1_2 SET OPTIONS (allow_commit_timestamp = null)`,
403
403
},
404
404
},
405
+
{
406
+
name: "add hidden column",
407
+
from: `
408
+
CREATE TABLE t1 (
409
+
t1_1 STRING(36) NOT NULL,
410
+
) PRIMARY KEY(t1_1);
411
+
`,
412
+
to: `
413
+
CREATE TABLE t1 (
414
+
t1_1 STRING(36) NOT NULL,
415
+
t1_2 TOKENLIST AS (TOKENIZE_NUMBER(Value, comparison_type => "all", min => 1, max => 5)) HIDDEN,
416
+
) PRIMARY KEY(t1_1);
417
+
`,
418
+
expected: []string{
419
+
`ALTER TABLE t1 ADD COLUMN t1_2 TOKENLIST AS (TOKENIZE_NUMBER(Value, comparison_type => "all", min => 1, max => 5)) HIDDEN`,
420
+
},
421
+
},
405
422
{
406
423
name: "add generated column",
407
424
from: `
@@ -535,6 +552,103 @@ CREATE INDEX idx_t1_2 ON t1(t1_3);
535
552
`CREATE INDEX idx_t1_2 ON t1(t1_3)`,
536
553
},
537
554
},
555
+
{
556
+
name: "add search index",
557
+
from: `
558
+
CREATE TABLE t1 (
559
+
t1_1 STRING(MAX) NOT NULL,
560
+
t1_2 INT64 NOT NULL,
561
+
t1_3 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
562
+
) PRIMARY KEY(t1_1);
563
+
CREATE INDEX idx_t1_1 ON t1(t1_2);
564
+
`,
565
+
to: `
566
+
CREATE TABLE t1 (
567
+
t1_1 STRING(MAX) NOT NULL,
568
+
t1_2 INT64 NOT NULL,
569
+
t1_3 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
570
+
) PRIMARY KEY(t1_1);
571
+
CREATE INDEX idx_t1_1 ON t1(t1_2);
572
+
CREATE SEARCH INDEX idx_t1_3 ON t1(t1_3);
573
+
`,
574
+
expected: []string{
575
+
`CREATE SEARCH INDEX idx_t1_3 ON t1(t1_3)`,
576
+
},
577
+
},
578
+
{
579
+
name: "add advanced search index",
580
+
from: `
581
+
CREATE TABLE t1 (
582
+
t1_1 STRING(MAX) NOT NULL,
583
+
t1_2 INT64 NOT NULL,
584
+
t1_3 TOKENLIST AS (TOKENIZE_SUBSTRING(Name)) HIDDEN,
585
+
t1_4 INT64 NOT NULL,
586
+
) PRIMARY KEY(t1_1);
587
+
`,
588
+
to: `
589
+
CREATE TABLE t1 (
590
+
t1_1 STRING(MAX) NOT NULL,
591
+
t1_2 INT64 NOT NULL,
592
+
t1_3 TOKENLIST AS (TOKENIZE_SUBSTRING(Name)) HIDDEN,
593
+
t1_4 INT64 NOT NULL,
594
+
) PRIMARY KEY(t1_1);
595
+
CREATE SEARCH INDEX idx_t1_3 ON t1(t1_3) STORING (t1_4)
596
+
PARTITION BY t1_4
597
+
ORDER BY t1_1 DESC, INTERLEAVE IN (t1)
598
+
OPTIONS (sort_order_sharding=true);
599
+
`,
600
+
expected: []string{
601
+
`CREATE SEARCH INDEX idx_t1_3 ON t1(t1_3) STORING (t1_4) PARTITION BY t1_4 ORDER BY t1_1 DESC, INTERLEAVE IN (t1) OPTIONS (sort_order_sharding = true)`,
602
+
},
603
+
},
604
+
{
605
+
name: "alter search index",
606
+
from: `
607
+
CREATE TABLE t1 (
608
+
t1_1 STRING(MAX) NOT NULL,
609
+
t1_2 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
610
+
t1_3 STRING(MAX) NOT NULL,
611
+
t1_4 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
612
+
) PRIMARY KEY(t1_1);
613
+
CREATE SEARCH INDEX idx_t1_2 ON t1(t1_2);
614
+
`,
615
+
to: `
616
+
CREATE TABLE t1 (
617
+
t1_1 STRING(MAX) NOT NULL,
618
+
t1_2 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
619
+
t1_3 STRING(MAX) NOT NULL,
620
+
t1_4 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
621
+
) PRIMARY KEY(t1_1);
622
+
CREATE SEARCH INDEX idx_t1_2 ON t1(t1_2, t1_4);
623
+
`,
624
+
expected: []string{
625
+
`DROP SEARCH INDEX idx_t1_2`,
626
+
`CREATE SEARCH INDEX idx_t1_2 ON t1(t1_2, t1_4)`,
627
+
},
628
+
},
629
+
{
630
+
name: "drop search index",
631
+
from: `
632
+
CREATE TABLE t1 (
633
+
t1_1 STRING(MAX) NOT NULL,
634
+
t1_2 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
635
+
t1_3 STRING(MAX) NOT NULL,
636
+
t1_4 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
637
+
) PRIMARY KEY(t1_1);
638
+
CREATE SEARCH INDEX idx_t1_2 ON t1(t1_2);
639
+
`,
640
+
to: `
641
+
CREATE TABLE t1 (
642
+
t1_1 STRING(MAX) NOT NULL,
643
+
t1_2 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
644
+
t1_3 STRING(MAX) NOT NULL,
645
+
t1_4 TOKENLIST AS (TOKENIZE_FULLTEXT(Name)) HIDDEN,
0 commit comments