diff --git a/server/ast/alter_aggregate.go b/server/ast/alter_aggregate.go index 3d734e2bcc..ed6b9b7fab 100644 --- a/server/ast/alter_aggregate.go +++ b/server/ast/alter_aggregate.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -30,5 +28,6 @@ func nodeAlterAggregate(ctx *Context, node *tree.AlterAggregate) (vitess.Stateme if err := validateAggArgMode(ctx, node.AggSig.Args, node.AggSig.OrderByArgs); err != nil { return nil, err } - return nil, errors.Errorf("ALTER AGGREGATE is not yet supported") + + return NotYetSupportedError("ALTER AGGREGATE is not yet supported") } diff --git a/server/ast/alter_database.go b/server/ast/alter_database.go index 584e87883e..49a54ee451 100644 --- a/server/ast/alter_database.go +++ b/server/ast/alter_database.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeAlterDatabase(ctx *Context, node *tree.AlterDatabase) (vitess.Statement if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER DATABASE is not yet supported") + + return NotYetSupportedError("ALTER DATABASE is not yet supported") } diff --git a/server/ast/alter_function.go b/server/ast/alter_function.go index f8df0bbe3b..b1d7759d87 100644 --- a/server/ast/alter_function.go +++ b/server/ast/alter_function.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -28,5 +26,6 @@ func nodeAlterFunction(ctx *Context, node *tree.AlterFunction) (vitess.Statement if err != nil { return nil, err } - return nil, errors.Errorf("ALTER FUNCTION statement is not yet supported") + + return NotYetSupportedError("ALTER FUNCTION statement is not yet supported") } diff --git a/server/ast/alter_index.go b/server/ast/alter_index.go index 20c3c08a76..2de38c0b66 100644 --- a/server/ast/alter_index.go +++ b/server/ast/alter_index.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,6 +25,7 @@ func nodeAlterIndex(ctx *Context, node *tree.AlterIndex) (vitess.Statement, erro if node == nil { return nil, nil } + // Only PARTITION alterations are supported by the parser, so there's nothing to convert to yet - return nil, errors.Errorf("ALTER INDEX is not yet supported") + return NotYetSupportedError("ALTER INDEX is not yet supported") } diff --git a/server/ast/alter_procedure.go b/server/ast/alter_procedure.go index 45c788ba81..0f372d4733 100644 --- a/server/ast/alter_procedure.go +++ b/server/ast/alter_procedure.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -28,5 +26,6 @@ func nodeAlterProcedure(ctx *Context, node *tree.AlterProcedure) (vitess.Stateme if err != nil { return nil, err } - return nil, errors.Errorf("ALTER PROCEDURE statement is not yet supported") + + return NotYetSupportedError("ALTER PROCEDURE statement is not yet supported") } diff --git a/server/ast/alter_schema.go b/server/ast/alter_schema.go index 521eaa5666..f9f93fdd31 100644 --- a/server/ast/alter_schema.go +++ b/server/ast/alter_schema.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeAlterSchema(ctx *Context, node *tree.AlterSchema) (vitess.Statement, er if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER SCHEMA is not yet supported") + + return NotYetSupportedError("ALTER SCHEMA is not yet supported") } diff --git a/server/ast/alter_sequence.go b/server/ast/alter_sequence.go index c251a7a3f8..4c88d78612 100644 --- a/server/ast/alter_sequence.go +++ b/server/ast/alter_sequence.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeAlterSequence(ctx *Context, node *tree.AlterSequence) (vitess.Statement if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER SEQUENCE is not yet supported") + + return NotYetSupportedError("ALTER SEQUENCE is not yet supported") } diff --git a/server/ast/alter_type.go b/server/ast/alter_type.go index 7902458a0b..685ecadbad 100644 --- a/server/ast/alter_type.go +++ b/server/ast/alter_type.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeAlterType(ctx *Context, node *tree.AlterType) (vitess.Statement, error) if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER TYPE is not yet supported") + + return NotYetSupportedError("ALTER TYPE is not yet supported") } diff --git a/server/ast/backup.go b/server/ast/backup.go index 66f95bf75c..11dc8349f1 100644 --- a/server/ast/backup.go +++ b/server/ast/backup.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeBackup(ctx *Context, node *tree.Backup) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("BACKUP is not yet supported") + + return NotYetSupportedError("BACKUP is not yet supported") } diff --git a/server/ast/cancel_queries.go b/server/ast/cancel_queries.go index ffd13bd904..38f97501f7 100644 --- a/server/ast/cancel_queries.go +++ b/server/ast/cancel_queries.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeCancelQueries(ctx *Context, node *tree.CancelQueries) (vitess.Statement if node == nil { return nil, nil } - return nil, errors.Errorf("CANCEL QUERIES is not yet supported") + + return NotYetSupportedError("CANCEL QUERIES is not yet supported") } diff --git a/server/ast/cancel_sessions.go b/server/ast/cancel_sessions.go index 6ccdcef37b..22ba747f6c 100644 --- a/server/ast/cancel_sessions.go +++ b/server/ast/cancel_sessions.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeCancelSessions(ctx *Context, node *tree.CancelSessions) (vitess.Stateme if node == nil { return nil, nil } - return nil, errors.Errorf("CANCEL SESSIONS is not yet supported") + + return NotYetSupportedError("CANCEL SESSIONS is not yet supported") } diff --git a/server/ast/canned_opt_plan.go b/server/ast/canned_opt_plan.go index 64fc42661c..11e002fc4a 100644 --- a/server/ast/canned_opt_plan.go +++ b/server/ast/canned_opt_plan.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeCannedOptPlan(ctx *Context, node *tree.CannedOptPlan) (vitess.Statement if node == nil { return nil, nil } - return nil, errors.Errorf("PREPARE AS OPT PLAN is not yet supported") + + return NotYetSupportedError("PREPARE AS OPT PLAN is not yet supported") } diff --git a/server/ast/comment.go b/server/ast/comment.go index 33b8e4fc0d..d8bc4e0680 100644 --- a/server/ast/comment.go +++ b/server/ast/comment.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeComment(ctx *Context, node *tree.Comment) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("COMMENT ON is not yet supported") + + return NotYetSupportedError("COMMENT ON is not yet supported") } diff --git a/server/ast/control_jobs.go b/server/ast/control_jobs.go index 2877b75cb4..96c72c060a 100644 --- a/server/ast/control_jobs.go +++ b/server/ast/control_jobs.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,7 +25,8 @@ func nodeControlJobs(ctx *Context, node *tree.ControlJobs) (vitess.Statement, er if node == nil { return nil, nil } - return nil, errors.Errorf("PAUSE/RESUME/CANCEL are not yet supported") + + return NotYetSupportedError("PAUSE/RESUME/CANCEL are not yet supported") } // nodeControlJobsForSchedules handles *tree.ControlJobsForSchedules nodes. @@ -35,5 +34,6 @@ func nodeControlJobsForSchedules(ctx *Context, node *tree.ControlJobsForSchedule if node == nil { return nil, nil } - return nil, errors.Errorf("PAUSE/RESUME/CANCEL are not yet supported") + + return NotYetSupportedError("PAUSE/RESUME/CANCEL are not yet supported") } diff --git a/server/ast/control_schedules.go b/server/ast/control_schedules.go index f9e1b60fb0..5018b68023 100644 --- a/server/ast/control_schedules.go +++ b/server/ast/control_schedules.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeControlSchedules(ctx *Context, node *tree.ControlSchedules) (vitess.Sta if node == nil { return nil, nil } - return nil, errors.Errorf("PAUSE/RESUME SCHEDULE is not yet supported") + + return NotYetSupportedError("PAUSE/RESUME SCHEDULE is not yet supported") } diff --git a/server/ast/create_aggregate.go b/server/ast/create_aggregate.go index 2a7fdcaacb..0338d17ddf 100644 --- a/server/ast/create_aggregate.go +++ b/server/ast/create_aggregate.go @@ -27,10 +27,14 @@ func nodeCreateAggregate(ctx *Context, node *tree.CreateAggregate) (vitess.State if node == nil { return nil, nil } - if err := validateAggArgMode(ctx, node.Args, node.OrderByArgs); err != nil { - return nil, err + + if !ignoreUnsupportedStatements { + if err := validateAggArgMode(ctx, node.Args, node.OrderByArgs); err != nil { + return nil, err + } } - return nil, errors.Errorf("CREATE AGGREGATE is not yet supported") + + return NotYetSupportedError("CREATE AGGREGATE is not yet supported") } // validateAggArgMode checks routine arguments for `OUT` and `INOUT` modes, diff --git a/server/ast/create_changefeed.go b/server/ast/create_changefeed.go index 3652157774..52c91b2311 100644 --- a/server/ast/create_changefeed.go +++ b/server/ast/create_changefeed.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeCreateChangefeed(ctx *Context, node *tree.CreateChangefeed) (vitess.Sta if node == nil { return nil, nil } - return nil, errors.Errorf("CREATE CHANGEFEED is not yet supported") + + return NotYetSupportedError("CREATE CHANGEFEED is not yet supported") } diff --git a/server/ast/create_function.go b/server/ast/create_function.go index c0c24ca30c..ff22fc90c7 100644 --- a/server/ast/create_function.go +++ b/server/ast/create_function.go @@ -28,7 +28,8 @@ func nodeCreateFunction(ctx *Context, node *tree.CreateFunction) (vitess.Stateme if err != nil { return nil, err } - return nil, errors.Errorf("CREATE FUNCTION statement is not yet supported") + + return NotYetSupportedError("CREATE FUNCTION statement is not yet supported") } // verifyRedundantRoutineOption checks for each option defined only once. diff --git a/server/ast/create_procedure.go b/server/ast/create_procedure.go index 7d3743dcb7..2c0b25fef8 100644 --- a/server/ast/create_procedure.go +++ b/server/ast/create_procedure.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -28,5 +26,6 @@ func nodeCreateProcedure(ctx *Context, node *tree.CreateProcedure) (vitess.State if err != nil { return nil, err } - return nil, errors.Errorf("CREATE PROCEDURE statement is not yet supported") + + return NotYetSupportedError("CREATE PROCEDURE statement is not yet supported") } diff --git a/server/ast/create_stats.go b/server/ast/create_stats.go index e0a35af4bb..9b9fa86a7f 100644 --- a/server/ast/create_stats.go +++ b/server/ast/create_stats.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeCreateStats(ctx *Context, node *tree.CreateStats) (vitess.Statement, er if node == nil { return nil, nil } - return nil, errors.Errorf("CREATE STATISTICS is not yet supported") + + return NotYetSupportedError("CREATE STATISTICS is not yet supported") } diff --git a/server/ast/create_trigger.go b/server/ast/create_trigger.go index 4aeb045c67..5bdc5b2b46 100644 --- a/server/ast/create_trigger.go +++ b/server/ast/create_trigger.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -24,5 +22,5 @@ import ( // nodeCreateTrigger handles *tree.CreateTrigger nodes. func nodeCreateTrigger(ctx *Context, node *tree.CreateTrigger) (vitess.Statement, error) { - return nil, errors.Errorf("CREATE TRIGGER statement is not yet supported") + return NotYetSupportedError("CREATE TRIGGER statement is not yet supported") } diff --git a/server/ast/drop_aggregate.go b/server/ast/drop_aggregate.go index e78cd3b03a..a74e29d241 100644 --- a/server/ast/drop_aggregate.go +++ b/server/ast/drop_aggregate.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,10 +25,14 @@ func nodeDropAggregate(ctx *Context, node *tree.DropAggregate) (vitess.Statement if node == nil { return nil, nil } - for _, agg := range node.Aggregates { - if err := validateAggArgMode(ctx, agg.AggSig.Args, agg.AggSig.OrderByArgs); err != nil { - return nil, err + + if !ignoreUnsupportedStatements { + for _, agg := range node.Aggregates { + if err := validateAggArgMode(ctx, agg.AggSig.Args, agg.AggSig.OrderByArgs); err != nil { + return nil, err + } } } - return nil, errors.Errorf("DROP AGGREGATE is not yet supported") + + return NotYetSupportedError("DROP AGGREGATE is not yet supported") } diff --git a/server/ast/drop_schema.go b/server/ast/drop_schema.go index 0c89af6792..85e4de6081 100644 --- a/server/ast/drop_schema.go +++ b/server/ast/drop_schema.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -28,5 +26,6 @@ func nodeDropSchema(ctx *Context, node *tree.DropSchema) (vitess.Statement, erro if node == nil { return nil, nil } - return nil, errors.Errorf("DROP SCHEMA is not yet supported") + + return NotYetSupportedError("DROP SCHEMA is not yet supported") } diff --git a/server/ast/execute.go b/server/ast/execute.go index 5422e8145e..c5fbf77131 100644 --- a/server/ast/execute.go +++ b/server/ast/execute.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeExecute(ctx *Context, node *tree.Execute) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("EXECUTE is not yet supported") + + return NotYetSupportedError("EXECUTE is not yet supported") } diff --git a/server/ast/explain_analyze_debug.go b/server/ast/explain_analyze_debug.go index 998df9bd9e..01cc90fb00 100644 --- a/server/ast/explain_analyze_debug.go +++ b/server/ast/explain_analyze_debug.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeExplainAnalyzeDebug(ctx *Context, node *tree.ExplainAnalyzeDebug) (vite if node == nil { return nil, nil } - return nil, errors.Errorf("EXPLAIN ANALYZE is not yet supported") + + return NotYetSupportedError("EXPLAIN ANALYZE is not yet supported") } diff --git a/server/ast/export.go b/server/ast/export.go index 89bb904de3..ec92aba395 100644 --- a/server/ast/export.go +++ b/server/ast/export.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeExport(ctx *Context, node *tree.Export) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("EXPORT is not yet supported") + + return NotYetSupportedError("EXPORT is not yet supported") } diff --git a/server/ast/import.go b/server/ast/import.go index 627ea47ae0..489055f2f6 100644 --- a/server/ast/import.go +++ b/server/ast/import.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeImport(ctx *Context, node *tree.Import) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("IMPORT is not yet supported") + + return NotYetSupportedError("IMPORT is not yet supported") } diff --git a/server/ast/no_op.go b/server/ast/no_op.go index 9a8eae8acd..e3949b6221 100755 --- a/server/ast/no_op.go +++ b/server/ast/no_op.go @@ -15,11 +15,27 @@ package ast import ( + "os" + + "github.com/cockroachdb/errors" vitess "github.com/dolthub/vitess/go/vt/sqlparser" pgnodes "github.com/dolthub/doltgresql/server/node" ) +const ignoreUnsupportedEnvKey = "DOLTGRES_IGNORE_UNSUPPORTED" + +// ignoreUnsupportedStatements is a flag that determines whether to ignore unsupported statements. This is useful +// when importing a dump from postgres using certain import tools that expect every statement to succeed, including +// ones that we can't yet fully support (or that we never will, but are safe to ignore). +var ignoreUnsupportedStatements bool + +func init() { + if _, ignoreUnsupported := os.LookupEnv(ignoreUnsupportedEnvKey); ignoreUnsupported { + ignoreUnsupportedStatements = true + } +} + // NewNoOp returns a new NoOp statement which does nothing and issues zero or more warnings when run. // Used for statements that aren't directly supported but which we don't want to cause errors. func NewNoOp(warnings []string) vitess.InjectedStatement { @@ -29,3 +45,13 @@ func NewNoOp(warnings []string) vitess.InjectedStatement { }, } } + +// NotYetSupportedError returns an unsupported error with the given message, or a NoOp statement if the environment +// variable DOLTGRES_IGNORE_UNSUPPORTED is set. +func NotYetSupportedError(errorMsg string) (vitess.Statement, error) { + if ignoreUnsupportedStatements { + return NewNoOp([]string{errorMsg}), nil + } + + return nil, errors.New(errorMsg) +} diff --git a/server/ast/prepare.go b/server/ast/prepare.go index 59ac1dc082..2fa1e17b95 100644 --- a/server/ast/prepare.go +++ b/server/ast/prepare.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodePrepare(ctx *Context, node *tree.Prepare) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("PREPARE is not yet supported") + + return NotYetSupportedError("PREPARE is not yet supported") } diff --git a/server/ast/refresh_materialized_view.go b/server/ast/refresh_materialized_view.go index 48bf8d4277..3f5b55206a 100644 --- a/server/ast/refresh_materialized_view.go +++ b/server/ast/refresh_materialized_view.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeRefreshMaterializedView(ctx *Context, node *tree.RefreshMaterializedVie if node == nil { return nil, nil } - return nil, errors.Errorf("REFRESH MATERIALIZED VIEW is not yet supported") + + return NotYetSupportedError("REFRESH MATERIALIZED VIEW is not yet supported") } diff --git a/server/ast/relocate.go b/server/ast/relocate.go index cf5a49b9de..e3e83e2458 100644 --- a/server/ast/relocate.go +++ b/server/ast/relocate.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeRelocate(ctx *Context, node *tree.Relocate) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER TABLE RELOCATE is not yet supported") + + return NotYetSupportedError("ALTER TABLE RELOCATE is not yet supported") } diff --git a/server/ast/rename_database.go b/server/ast/rename_database.go index ddfb68fcce..e2350882f7 100644 --- a/server/ast/rename_database.go +++ b/server/ast/rename_database.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeRenameDatabase(ctx *Context, node *tree.RenameDatabase) (vitess.Stateme if node == nil { return nil, nil } - return nil, errors.Errorf("RENAME DATABASE is not yet supported") + + return NotYetSupportedError("RENAME DATABASE is not yet supported") } diff --git a/server/ast/rename_index.go b/server/ast/rename_index.go index 1d96bad26a..3cd7bab072 100644 --- a/server/ast/rename_index.go +++ b/server/ast/rename_index.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeRenameIndex(ctx *Context, node *tree.RenameIndex) (vitess.Statement, er if node == nil { return nil, nil } - return nil, errors.Errorf("RENAME INDEX is not yet supported") + + return NotYetSupportedError("RENAME INDEX is not yet supported") } diff --git a/server/ast/reparent_database.go b/server/ast/reparent_database.go index bd301f2de1..6f0093a5bf 100644 --- a/server/ast/reparent_database.go +++ b/server/ast/reparent_database.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeReparentDatabase(ctx *Context, node *tree.ReparentDatabase) (vitess.Sta if node == nil { return nil, nil } - return nil, errors.Errorf("reparenting a database is not yet supported") + + return NotYetSupportedError("reparenting a database is not yet supported") } diff --git a/server/ast/restore.go b/server/ast/restore.go index 458adf358d..91818fe942 100644 --- a/server/ast/restore.go +++ b/server/ast/restore.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeRestore(ctx *Context, node *tree.Restore) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("RESTORE is not yet supported") + + return NotYetSupportedError("RESTORE is not yet supported") } diff --git a/server/ast/scatter.go b/server/ast/scatter.go index cc2d4fc95a..c240bb8222 100644 --- a/server/ast/scatter.go +++ b/server/ast/scatter.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeScatter(ctx *Context, node *tree.Scatter) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER TABLE SCATTER is not yet supported") + + return NotYetSupportedError("ALTER TABLE SCATTER is not yet supported") } diff --git a/server/ast/scheduled_backup.go b/server/ast/scheduled_backup.go index 2ac631b1ad..acfb79e38d 100644 --- a/server/ast/scheduled_backup.go +++ b/server/ast/scheduled_backup.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeScheduledBackup(ctx *Context, node *tree.ScheduledBackup) (vitess.State if node == nil { return nil, nil } - return nil, errors.Errorf("scheduled backups are not yet supported") + + return NotYetSupportedError("scheduled backups are not yet supported") } diff --git a/server/ast/scrub.go b/server/ast/scrub.go index 45b8fc3fbf..0c5a4e5676 100644 --- a/server/ast/scrub.go +++ b/server/ast/scrub.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeScrub(ctx *Context, node *tree.Scrub) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("SCRUB is not yet supported") + + return NotYetSupportedError("SCRUB is not yet supported") } diff --git a/server/ast/set_transaction.go b/server/ast/set_transaction.go index 631e8e7efa..0deb95f290 100644 --- a/server/ast/set_transaction.go +++ b/server/ast/set_transaction.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeSetTransaction(ctx *Context, node *tree.SetTransaction) (vitess.Stateme if node == nil { return nil, nil } - return nil, errors.Errorf("SET TRANSACTION is not yet supported") + + return NotYetSupportedError("SET TRANSACTION is not yet supported") } diff --git a/server/ast/unsplit.go b/server/ast/unsplit.go index cdc5e54fbf..1942e69ff6 100644 --- a/server/ast/unsplit.go +++ b/server/ast/unsplit.go @@ -15,8 +15,6 @@ package ast import ( - "github.com/cockroachdb/errors" - vitess "github.com/dolthub/vitess/go/vt/sqlparser" "github.com/dolthub/doltgresql/postgres/parser/sem/tree" @@ -27,5 +25,6 @@ func nodeUnsplit(ctx *Context, node *tree.Unsplit) (vitess.Statement, error) { if node == nil { return nil, nil } - return nil, errors.Errorf("ALTER TABLE UNSPLIT is not yet supported") + + return NotYetSupportedError("ALTER TABLE UNSPLIT is not yet supported") }