From 727236009339475acf7b49b7d2e68817423bd51c Mon Sep 17 00:00:00 2001 From: Zach Musgrave Date: Wed, 26 Mar 2025 11:17:34 -0700 Subject: [PATCH 1/2] Converted several errors to warnings in CREATE INDEX --- server/ast/create_index.go | 4 +- server/ast/index_elem.go | 4 +- server/ast/index_table_def.go | 5 +- .../command_docs/output/create_index_test.go | 116 +++++++++--------- 4 files changed, 66 insertions(+), 63 deletions(-) diff --git a/server/ast/create_index.go b/server/ast/create_index.go index 0e3e871161..1c1c76ecef 100644 --- a/server/ast/create_index.go +++ b/server/ast/create_index.go @@ -29,10 +29,10 @@ func nodeCreateIndex(ctx *Context, node *tree.CreateIndex) (*vitess.AlterTable, return nil, nil } if node.Concurrently { - return nil, errors.Errorf("concurrent indexes are not yet supported") + return nil, errors.Errorf("concurrent index creation is not yet supported") } if node.Using != "" && strings.ToLower(node.Using) != "btree" { - return nil, errors.Errorf("index tablespace is not yet supported") + return nil, errors.Errorf("index method %s is not yet supported", node.Using) } if node.Predicate != nil { return nil, errors.Errorf("WHERE is not yet supported") diff --git a/server/ast/index_elem.go b/server/ast/index_elem.go index f7dddc3f53..0375bc8f62 100644 --- a/server/ast/index_elem.go +++ b/server/ast/index_elem.go @@ -31,10 +31,10 @@ func nodeIndexElemList(ctx *Context, node tree.IndexElemList) ([]*vitess.IndexCo return nil, errors.Errorf("expression index attribute is not yet supported") } if inputColumn.Collation != "" { - return nil, errors.Errorf("index attribute collation is not yet supported") + logrus.Warn("index attribute collation is not yet supported, ignoring") } if inputColumn.OpClass != nil { - return nil, errors.Errorf("index attribute operator class is not yet supported") + logrus.Warn("index attribute operator class is not yet supported, ignoring") } if inputColumn.ExcludeOp != nil { return nil, errors.Errorf("index attribute exclude operator is not yet supported") diff --git a/server/ast/index_table_def.go b/server/ast/index_table_def.go index 19fdfddabc..285fa89260 100644 --- a/server/ast/index_table_def.go +++ b/server/ast/index_table_def.go @@ -16,6 +16,7 @@ package ast import ( "github.com/cockroachdb/errors" + "github.com/sirupsen/logrus" vitess "github.com/dolthub/vitess/go/vt/sqlparser" @@ -32,10 +33,10 @@ func nodeIndexTableDef(ctx *Context, node *tree.IndexTableDef) (*vitess.IndexDef return nil, errors.Errorf("include columns is not yet supported") } if len(node.IndexParams.StorageParams) > 0 { - return nil, errors.Errorf("storage parameters is not yet supported") + logrus.Warn("storage params are not yet supported, ignoring") } if node.IndexParams.Tablespace != "" { - return nil, errors.Errorf("tablespace is not yet supported") + logrus.Warn("tablespace is not yet supported, ignoring") } columns, err := nodeIndexElemList(ctx, node.Columns) diff --git a/testing/generation/command_docs/output/create_index_test.go b/testing/generation/command_docs/output/create_index_test.go index a924e71726..32a038c55f 100644 --- a/testing/generation/command_docs/output/create_index_test.go +++ b/testing/generation/command_docs/output/create_index_test.go @@ -28,7 +28,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass ASC , ( expression ) opclass DESC )"), Parses("CREATE INDEX name ON table_name USING method ( ( expression ) COLLATE en_US ASC , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC )"), - Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name DESC , column_name COLLATE en_US NULLS FIRST )"), + Converts("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name DESC , column_name COLLATE en_US NULLS FIRST )"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US NULLS FIRST )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) NULLS LAST , column_name COLLATE en_US opclass NULLS FIRST )"), Parses("CREATE INDEX ON ONLY table_name USING method ( column_name opclass DESC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value ) NULLS FIRST )"), @@ -131,11 +131,11 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US , column_name DESC NULLS LAST ) INCLUDE ( column_name , column_name )"), Parses("CREATE INDEX name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , column_name COLLATE en_US opclass DESC NULLS LAST ) INCLUDE ( column_name , column_name )"), Parses("CREATE INDEX name ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US opclass ) NULLS DISTINCT"), - Parses("CREATE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC , column_name opclass ( opclass_parameter = value ) ) NULLS DISTINCT"), + Converts("CREATE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC , column_name opclass ( opclass_parameter = value ) ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( column_name COLLATE en_US ASC NULLS LAST , column_name opclass ( opclass_parameter = value ) ) NULLS DISTINCT"), Parses("CREATE INDEX ON table_name ( column_name DESC NULLS LAST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS DISTINCT"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass DESC NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) ASC ) NULLS DISTINCT"), - Parses("CREATE UNIQUE INDEX ON ONLY table_name ( column_name opclass , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS DISTINCT"), + Converts("CREATE UNIQUE INDEX ON ONLY table_name ( column_name opclass , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX name ON table_name USING method ( ( expression ) COLLATE en_US NULLS LAST , column_name opclass DESC ) NULLS DISTINCT"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT"), @@ -151,7 +151,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) COLLATE en_US ASC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( column_name ASC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ASC NULLS FIRST ) NULLS DISTINCT"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass , column_name opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass , column_name opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name opclass ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) , ( expression ) COLLATE en_US DESC NULLS FIRST ) NULLS DISTINCT"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US opclass DESC NULLS FIRST ) NULLS DISTINCT"), @@ -258,7 +258,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US DESC , column_name ASC ) NULLS NOT DISTINCT"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ASC ) NULLS NOT DISTINCT"), - Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name ASC , column_name opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT"), + Converts("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name ASC , column_name opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT"), Parses("CREATE INDEX name ON table_name USING method ( column_name COLLATE en_US DESC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( column_name COLLATE en_US ASC , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value ) , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT"), @@ -370,14 +370,14 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX IF NOT EXISTS name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US opclass ) WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( ( expression ) COLLATE en_US opclass ASC , ( expression ) COLLATE en_US opclass ) WITH ( fillfactor )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ) WITH ( fillfactor )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) COLLATE en_US DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) WITH ( fillfactor )"), Parses("CREATE INDEX name ON table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC , ( expression ) ASC ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) ASC ) WITH ( fillfactor )"), Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass DESC , column_name COLLATE en_US ASC ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , ( expression ) opclass ASC ) WITH ( fillfactor )"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ASC ) WITH ( fillfactor )"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ASC ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( ( expression ) DESC , column_name opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor )"), Parses("CREATE INDEX ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor )"), Parses("CREATE INDEX ON table_name ( ( expression ) COLLATE en_US DESC NULLS LAST , ( expression ) DESC ) WITH ( fillfactor )"), @@ -395,7 +395,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , column_name opclass DESC NULLS FIRST ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX ON ONLY table_name USING method ( column_name opclass ASC NULLS FIRST , ( expression ) COLLATE en_US opclass DESC NULLS FIRST ) WITH ( fillfactor )"), Parses("CREATE INDEX name ON table_name USING method ( ( expression ) opclass DESC , column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US ASC NULLS FIRST , column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US ASC NULLS FIRST , column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name USING method ( column_name opclass ASC , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor )"), Parses("CREATE INDEX name ON ONLY table_name USING method ( ( expression ) opclass ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX ON table_name ( column_name opclass DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) NULLS LAST ) WITH ( fillfactor )"), @@ -608,12 +608,12 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX name ON ONLY table_name USING method ( column_name COLLATE en_US ASC , column_name opclass ( opclass_parameter = value ) ASC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX ON table_name ( ( expression ) opclass NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor )"), - Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor )"), + Converts("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE INDEX ON table_name USING method ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , ( expression ) COLLATE en_US DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( column_name COLLATE en_US opclass ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name COLLATE en_US opclass ASC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( column_name , column_name COLLATE en_US NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor )"), @@ -726,7 +726,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass NULLS FIRST , column_name DESC ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US opclass ASC NULLS LAST , column_name opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS LAST , column_name opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor = value )"), - Parses("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor = value )"), + Converts("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name USING method ( ( expression ) NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST ) WITH ( fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) WITH ( fillfactor = value )"), @@ -740,7 +740,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass NULLS LAST , column_name DESC NULLS FIRST ) WITH ( fillfactor = value )"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( column_name opclass , column_name COLLATE en_US DESC NULLS FIRST ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) DESC NULLS LAST , column_name COLLATE en_US DESC NULLS FIRST ) WITH ( fillfactor = value )"), - Parses("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US NULLS FIRST , column_name opclass DESC NULLS FIRST ) WITH ( fillfactor = value )"), + Converts("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US NULLS FIRST , column_name opclass DESC NULLS FIRST ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value ) DESC , column_name COLLATE en_US opclass DESC NULLS FIRST ) WITH ( fillfactor = value )"), Parses("CREATE INDEX ON table_name USING method ( column_name COLLATE en_US DESC NULLS LAST , column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC , ( expression ) opclass ( opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor = value )"), @@ -980,7 +980,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX name ON table_name ( column_name ASC NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name opclass ( opclass_parameter = value ) ASC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name opclass DESC NULLS FIRST , ( expression ) opclass NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass ASC NULLS LAST , ( expression ) COLLATE en_US opclass NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), @@ -992,7 +992,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX ON ONLY table_name USING method ( column_name COLLATE en_US opclass ASC NULLS FIRST , column_name COLLATE en_US ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST , ( expression ) opclass ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), - Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), + Converts("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor = value )"), @@ -1093,7 +1093,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) ASC NULLS LAST , ( expression ) COLLATE en_US ) WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( column_name COLLATE en_US ASC , ( expression ) COLLATE en_US opclass ) WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US opclass DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ) WITH ( fillfactor , fillfactor )"), - Parses("CREATE INDEX ON ONLY table_name ( column_name ASC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) WITH ( fillfactor , fillfactor )"), + Converts("CREATE INDEX ON ONLY table_name ( column_name ASC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( ( expression ) COLLATE en_US opclass ASC NULLS FIRST , ( expression ) COLLATE en_US ASC ) WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) , column_name COLLATE en_US opclass ASC ) WITH ( fillfactor , fillfactor )"), @@ -1226,7 +1226,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) ASC , column_name COLLATE en_US opclass DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS LAST , column_name COLLATE en_US opclass DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US ASC NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), - Parses("CREATE INDEX ON table_name ( column_name opclass , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), + Converts("CREATE INDEX ON table_name ( column_name opclass , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name ASC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name opclass , column_name opclass ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX ON ONLY table_name USING method ( column_name opclass DESC NULLS LAST , column_name COLLATE en_US opclass ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor )"), @@ -1346,7 +1346,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX ON ONLY table_name USING method ( column_name COLLATE en_US opclass NULLS FIRST , ( expression ) COLLATE en_US opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name USING method ( column_name COLLATE en_US opclass DESC NULLS LAST , column_name opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( ( expression ) opclass DESC NULLS FIRST , column_name DESC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US NULLS FIRST , ( expression ) COLLATE en_US opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), @@ -1354,7 +1354,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US DESC NULLS FIRST , ( expression ) COLLATE en_US opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX name ON table_name ( ( expression ) opclass ASC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), - Parses("CREATE INDEX ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), + Converts("CREATE INDEX ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) ASC , column_name DESC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US ASC NULLS LAST , ( expression ) DESC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), @@ -1472,7 +1472,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( column_name opclass DESC NULLS LAST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( ( expression ) ASC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass DESC NULLS LAST , ( expression ) opclass ) WITH ( fillfactor = value , fillfactor )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) WITH ( fillfactor = value , fillfactor )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ) WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX ON table_name USING method ( ( expression ) opclass DESC NULLS LAST , ( expression ) ASC ) WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor = value , fillfactor )"), @@ -1680,7 +1680,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass DESC NULLS LAST , ( expression ) COLLATE en_US DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) ASC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE UNIQUE INDEX ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , column_name opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE UNIQUE INDEX ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), @@ -1688,7 +1688,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name ( ( expression ) NULLS LAST , ( expression ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), - Parses("CREATE UNIQUE INDEX ON table_name ( column_name opclass NULLS FIRST , column_name COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), + Converts("CREATE UNIQUE INDEX ON table_name ( column_name opclass NULLS FIRST , column_name COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US DESC , ( expression ) opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS LAST , column_name COLLATE en_US opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), Parses("CREATE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor )"), @@ -1811,7 +1811,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( column_name COLLATE en_US , ( expression ) opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US DESC ) WITH ( fillfactor , fillfactor = value )"), - Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US DESC ) WITH ( fillfactor , fillfactor = value )"), + Converts("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US DESC ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX ON table_name ( ( expression ) COLLATE en_US opclass ASC NULLS LAST , column_name COLLATE en_US DESC ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX name ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , column_name opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name ( column_name NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor , fillfactor = value )"), @@ -1925,11 +1925,11 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) DESC , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST ) INCLUDE ( column_name , column_name ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US opclass NULLS LAST , ( expression ) COLLATE en_US opclass DESC NULLS LAST ) INCLUDE ( column_name , column_name ) WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name USING method ( column_name opclass ASC NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) WITH ( fillfactor , fillfactor = value )"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name ASC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name ASC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) NULLS LAST , ( expression ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , ( expression ) COLLATE en_US ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( column_name DESC NULLS LAST , column_name opclass ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), - Parses("CREATE INDEX ON table_name ( column_name opclass ( opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US opclass ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), + Converts("CREATE INDEX ON table_name ( column_name opclass ( opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US opclass ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , column_name opclass ( opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), @@ -2059,13 +2059,13 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) opclass , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( ( expression ) COLLATE en_US opclass DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) ASC NULLS LAST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value )"), - Parses("CREATE UNIQUE INDEX name ON table_name ( column_name opclass , column_name COLLATE en_US opclass ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), + Converts("CREATE UNIQUE INDEX name ON table_name ( column_name opclass , column_name COLLATE en_US opclass ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( column_name opclass , column_name COLLATE en_US opclass ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name opclass NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( ( expression ) COLLATE en_US opclass ASC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ASC NULLS FIRST , column_name ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), - Parses("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), + Converts("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE INDEX name ON table_name ( column_name ASC NULLS FIRST , ( expression ) COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name USING method ( ( expression ) opclass ASC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value )"), @@ -2201,7 +2201,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name USING method ( column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX ON ONLY table_name ( ( expression ) COLLATE en_US ASC , column_name COLLATE en_US NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( ( expression ) opclass , column_name opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US NULLS FIRST , column_name opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US NULLS FIRST , column_name opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , ( expression ) COLLATE en_US opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) opclass ASC NULLS FIRST , ( expression ) COLLATE en_US opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US ASC NULLS LAST , column_name opclass ( opclass_parameter = value ) NULLS FIRST ) WITH ( fillfactor = value , fillfactor = value )"), @@ -2325,7 +2325,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) NULLS FIRST , ( expression ) COLLATE en_US ASC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX IF NOT EXISTS name ON table_name USING method ( column_name opclass DESC NULLS LAST , ( expression ) opclass ASC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX ON ONLY table_name ( column_name ASC NULLS LAST , ( expression ) COLLATE en_US opclass ASC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), - Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), + Converts("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value ) , column_name COLLATE en_US DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), @@ -2343,7 +2343,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX ON ONLY table_name USING method ( ( expression ) NULLS FIRST , column_name DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), - Parses("CREATE UNIQUE INDEX ON ONLY table_name ( column_name opclass ASC , column_name COLLATE en_US DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), + Converts("CREATE UNIQUE INDEX ON ONLY table_name ( column_name opclass ASC , column_name COLLATE en_US DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name USING method ( column_name COLLATE en_US ASC NULLS FIRST , column_name COLLATE en_US DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX name ON ONLY table_name USING method ( column_name COLLATE en_US DESC , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX ON table_name USING method ( column_name COLLATE en_US opclass DESC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value )"), @@ -2464,10 +2464,10 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , column_name COLLATE en_US opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( ( expression ) COLLATE en_US , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), - Parses("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), + Converts("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX name ON table_name USING method ( column_name opclass , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), - Parses("CREATE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), + Converts("CREATE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , ( expression ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass DESC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value )"), @@ -2580,9 +2580,9 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX name ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US opclass ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US opclass ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON table_name USING method ( ( expression ) COLLATE en_US opclass , column_name opclass ( opclass_parameter = value ) ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass DESC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( ( expression ) COLLATE en_US NULLS LAST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US ASC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) TABLESPACE tablespace_name"), @@ -2830,7 +2830,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX name ON table_name USING method ( column_name COLLATE en_US opclass DESC NULLS LAST , ( expression ) opclass ASC NULLS FIRST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) DESC , ( expression ) opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name opclass ASC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON table_name ( column_name ASC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON table_name ( column_name ASC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass DESC NULLS LAST , ( expression ) opclass DESC NULLS FIRST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US NULLS LAST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( column_name COLLATE en_US NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS LAST ) NULLS NOT DISTINCT TABLESPACE tablespace_name"), @@ -3045,7 +3045,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US DESC NULLS LAST ) INCLUDE ( column_name , column_name ) WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass DESC , column_name opclass DESC NULLS LAST ) INCLUDE ( column_name , column_name ) WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name DESC ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) opclass DESC NULLS LAST , column_name COLLATE en_US ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , column_name opclass ( opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass ASC NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), @@ -3062,7 +3062,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name COLLATE en_US DESC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) DESC , column_name DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( column_name COLLATE en_US NULLS LAST , ( expression ) opclass DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass , ( expression ) COLLATE en_US NULLS LAST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name opclass ASC , ( expression ) COLLATE en_US NULLS LAST ) NULLS DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), @@ -3173,7 +3173,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) ASC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( column_name COLLATE en_US NULLS LAST , column_name ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name opclass NULLS FIRST , ( expression ) opclass ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX ON ONLY table_name ( column_name , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX ON ONLY table_name ( column_name , column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), @@ -3288,7 +3288,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name USING method ( column_name COLLATE en_US DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT WITH ( fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX name ON table_name ( column_name COLLATE en_US DESC NULLS FIRST , column_name opclass ASC ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX name ON table_name ( column_name COLLATE en_US DESC NULLS FIRST , column_name opclass ASC ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON table_name USING method ( column_name opclass ( opclass_parameter = value ) ASC NULLS LAST , ( expression ) opclass ASC ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ASC ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), @@ -3307,7 +3307,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY ON table_name USING method ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC , ( expression ) COLLATE en_US ASC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name opclass ASC NULLS FIRST , column_name COLLATE en_US opclass ASC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , ( expression ) COLLATE en_US opclass ASC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name COLLATE en_US opclass DESC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name COLLATE en_US opclass DESC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US ASC , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST ) WITH ( fillfactor = value ) TABLESPACE tablespace_name"), @@ -3523,14 +3523,14 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) COLLATE en_US opclass DESC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON ONLY table_name ( ( expression ) ASC NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) COLLATE en_US opclass , column_name opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass DESC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass DESC , column_name COLLATE en_US opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( column_name COLLATE en_US NULLS FIRST , column_name COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( ( expression ) opclass ASC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) ASC NULLS FIRST , ( expression ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( column_name COLLATE en_US NULLS LAST , ( expression ) opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name opclass ASC NULLS LAST , ( expression ) opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass DESC NULLS FIRST , column_name COLLATE en_US opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass DESC NULLS FIRST , column_name COLLATE en_US opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name opclass DESC NULLS FIRST , ( expression ) COLLATE en_US opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON ONLY table_name ( ( expression ) NULLS LAST , ( expression ) COLLATE en_US opclass DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS NOT DISTINCT WITH ( fillfactor = value ) TABLESPACE tablespace_name"), @@ -3997,12 +3997,12 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) opclass ASC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) DESC ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON table_name ( column_name NULLS FIRST , column_name NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON table_name ( column_name NULLS FIRST , column_name NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , column_name opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON table_name USING method ( column_name COLLATE en_US NULLS FIRST , ( expression ) opclass NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name ASC NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name ASC NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US opclass ASC NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( column_name COLLATE en_US opclass NULLS FIRST , ( expression ) COLLATE en_US opclass ASC NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST ) WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), @@ -4119,7 +4119,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX ON ONLY table_name ( ( expression ) opclass NULLS FIRST , column_name DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC , column_name COLLATE en_US DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US opclass DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass DESC NULLS FIRST , column_name COLLATE en_US opclass DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass DESC NULLS FIRST , column_name COLLATE en_US opclass DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) , ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , ( expression ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor ) TABLESPACE tablespace_name"), @@ -4375,13 +4375,13 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX ON ONLY table_name USING method ( column_name COLLATE en_US DESC , column_name opclass ASC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name USING method ( column_name COLLATE en_US opclass DESC NULLS LAST , column_name opclass ASC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , column_name opclass ASC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( ( expression ) COLLATE en_US DESC , ( expression ) DESC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US DESC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US opclass DESC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON table_name ( ( expression ) COLLATE en_US opclass DESC NULLS FIRST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name NULLS FIRST ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name NULLS FIRST ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US NULLS FIRST ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( ( expression ) ASC , column_name ASC NULLS FIRST ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , column_name opclass DESC NULLS FIRST ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), @@ -4480,20 +4480,20 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( ( expression ) opclass ASC , column_name ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( column_name opclass ASC NULLS FIRST , ( expression ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name COLLATE en_US ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC , column_name COLLATE en_US ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON table_name ( ( expression ) COLLATE en_US ASC NULLS LAST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX name ON ONLY table_name ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( column_name ASC NULLS FIRST , column_name opclass ( opclass_parameter = value ) ASC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name ( column_name opclass DESC NULLS LAST , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name NULLS LAST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US NULLS LAST , column_name DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , column_name opclass DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST , column_name opclass DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name ( ( expression ) opclass ( opclass_parameter = value ) DESC NULLS FIRST , column_name opclass DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US NULLS FIRST , ( expression ) COLLATE en_US opclass DESC ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) COLLATE en_US NULLS FIRST , column_name COLLATE en_US opclass NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( column_name COLLATE en_US opclass DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US NULLS LAST , ( expression ) ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , column_name opclass ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass , ( expression ) opclass ( opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), @@ -4603,7 +4603,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY name ON table_name ( ( expression ) opclass ( opclass_parameter = value ) ASC , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON table_name USING method ( column_name COLLATE en_US opclass DESC NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( ( expression ) COLLATE en_US opclass DESC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON table_name ( column_name COLLATE en_US ASC NULLS FIRST , column_name COLLATE en_US ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON table_name ( column_name COLLATE en_US ASC NULLS FIRST , column_name COLLATE en_US ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( column_name COLLATE en_US opclass ASC , ( expression ) COLLATE en_US ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX IF NOT EXISTS name ON ONLY table_name USING method ( column_name opclass ( opclass_parameter = value ) , ( expression ) opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) DESC NULLS LAST , column_name COLLATE en_US opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), @@ -4624,7 +4624,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name USING method ( column_name opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST , ( expression ) COLLATE en_US opclass NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON table_name USING method ( ( expression ) opclass DESC NULLS LAST , column_name opclass ( opclass_parameter = value ) NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name COLLATE en_US opclass DESC , column_name opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY IF NOT EXISTS name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON table_name USING method ( ( expression ) COLLATE en_US NULLS LAST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC , column_name DESC NULLS FIRST ) NULLS NOT DISTINCT WITH ( fillfactor , fillfactor = value ) TABLESPACE tablespace_name"), @@ -4723,8 +4723,8 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( ( expression ) COLLATE en_US opclass ASC , column_name opclass ( opclass_parameter = value ) ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON table_name USING method ( column_name ASC , ( expression ) opclass ( opclass_parameter = value ) ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON table_name ( ( expression ) COLLATE en_US DESC , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST , column_name ASC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US ASC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) DESC NULLS FIRST , column_name ASC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , column_name COLLATE en_US ASC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , ( expression ) COLLATE en_US opclass ASC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) COLLATE en_US DESC , ( expression ) opclass DESC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX name ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS LAST , ( expression ) COLLATE en_US opclass DESC ) WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), @@ -4862,7 +4862,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY ON table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) ASC NULLS FIRST , ( expression ) opclass DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX name ON ONLY table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) NULLS FIRST , column_name opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY name ON ONLY table_name ( ( expression ) COLLATE en_US ASC NULLS FIRST , column_name opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX ON ONLY table_name ( column_name COLLATE en_US , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX ON ONLY table_name ( column_name COLLATE en_US , column_name COLLATE en_US opclass ( opclass_parameter = value ) DESC ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON ONLY table_name ( ( expression ) NULLS LAST , column_name NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX CONCURRENTLY name ON ONLY table_name USING method ( ( expression ) opclass , column_name opclass NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX ON table_name ( column_name COLLATE en_US opclass NULLS LAST , ( expression ) opclass NULLS FIRST ) NULLS DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), @@ -4981,7 +4981,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value , opclass_parameter = value ) ASC NULLS LAST , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON table_name USING method ( ( expression ) COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), - Parses("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) DESC , column_name ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), + Converts("CREATE UNIQUE INDEX IF NOT EXISTS name ON ONLY table_name ( column_name opclass ( opclass_parameter = value ) DESC , column_name ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX CONCURRENTLY ON ONLY table_name ( column_name COLLATE en_US opclass ( opclass_parameter = value ) NULLS FIRST , column_name ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE INDEX name ON ONLY table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) ASC , ( expression ) COLLATE en_US ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), Parses("CREATE UNIQUE INDEX ON table_name USING method ( column_name COLLATE en_US opclass NULLS FIRST , ( expression ) opclass ASC ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name"), @@ -10019,5 +10019,7 @@ func TestCreateIndex(t *testing.T) { Parses("CREATE INDEX CONCURRENTLY IF NOT EXISTS name ON table_name USING method ( ( expression ) opclass ( opclass_parameter = value ) , column_name COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name WHERE predicate"), Parses("CREATE INDEX IF NOT EXISTS name ON table_name ( column_name ASC NULLS FIRST , ( expression ) COLLATE en_US opclass ( opclass_parameter = value , opclass_parameter = value ) DESC NULLS LAST ) INCLUDE ( column_name , column_name ) NULLS NOT DISTINCT WITH ( fillfactor = value , fillfactor = value ) TABLESPACE tablespace_name WHERE predicate"), } + RunTests(t, tests) + // RewriteTests(t, tests, "create_index_test.go") } From f19133ec878f7c4cc20eebe65576ab4e1904fcf9 Mon Sep 17 00:00:00 2001 From: Zach Musgrave Date: Wed, 26 Mar 2025 11:33:26 -0700 Subject: [PATCH 2/2] Test for unsupported index options --- testing/go/index_test.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/testing/go/index_test.go b/testing/go/index_test.go index b78369a611..13daf7c737 100644 --- a/testing/go/index_test.go +++ b/testing/go/index_test.go @@ -743,5 +743,33 @@ func TestBasicIndexing(t *testing.T) { }, }, }, + { + Name: "Unsupported options", + SetUpScript: []string{ + "CREATE TABLE test (pk BIGINT PRIMARY KEY, v1 varchar);", + }, + Assertions: []ScriptTestAssertion{ + { + // ignored warning-generating unsupported options + Query: "CREATE INDEX v1_idx ON test(v1 varchar_pattern_ops) WITH (storage_opt1 = foo) TABLESPACE tablespace_name;", + }, + { + Query: "CREATE INDEX v1_idx2 ON test( (concat(v1, v1)) ) ;", + ExpectedErr: "not yet supported", + }, + { + Query: "CREATE INDEX v1_idx2 ON test using hash (v1);", + ExpectedErr: "not yet supported", + }, + { + Query: "CREATE INDEX v1_idx2 ON test(v1) WHERE v1 > 100;", + ExpectedErr: "not yet supported", + }, + { + Query: "CREATE INDEX v1_idx2 ON test(v1) INCLUDE (pk);", + ExpectedErr: "not yet supported", + }, + }, + }, }) }