From f094089c487a8a2b1ab74c78a770975eab0cfa8d Mon Sep 17 00:00:00 2001 From: Matt Spilchen Date: Sat, 18 Apr 2026 21:31:51 -0300 Subject: [PATCH 1/4] parser: v25.3.0 snapshot Sync parser and dependencies from CockroachDB v25.3.0 (cb540b101146345c1df9f265f65ea321c62b10b3). Also update snapshot.sh to accept a configurable COCKROACHDB_LOC environment variable, and bump cockroachdb/version dependency for the new IsCustomOrAdhocBuild method. Co-Authored-By: Claude Opus 4.6 (1M context) --- go.mod | 2 +- go.sum | 4 +- pkg/build/info.go | 8 +- pkg/geo/geomfn/unary_operators.go | 83 + pkg/geo/geoproj/zcgo_flags.go | 4 +- pkg/settings/byte_size.go | 2 +- pkg/settings/duration.go | 30 +- pkg/settings/registry.go | 4 + pkg/sql/lexbase/keywords.go | 21 +- pkg/sql/lexbase/tokens.go | 1183 +- pkg/sql/oidext/oidext.go | 4 + pkg/sql/parser/help_messages.go | 1295 +- pkg/sql/parser/parse.go | 133 +- pkg/sql/parser/sql.go | 64322 ++++++++-------- pkg/sql/parser/sql.y | 220 +- pkg/sql/parser/unreserved_keywords.awk | 19 - pkg/sql/parser/unused_keywords.sh | 53 + pkg/sql/plpgsql/parser/plpgsql.go | 2 +- pkg/sql/scanner/jsonpath_scan.go | 4 +- pkg/sql/scanner/scan.go | 27 +- .../builtinsregistry/builtins_registry.go | 5 + pkg/sql/sem/cast/cast_map.go | 499 +- pkg/sql/sem/catconstants/constants.go | 5 +- pkg/sql/sem/catconstants/namespace.go | 5 - pkg/sql/sem/catconstants/schemas.go | 16 - pkg/sql/sem/idxtype/idxtype.go | 7 + pkg/sql/sem/tree/alter_default_privileges.go | 4 +- pkg/sql/sem/tree/alter_table.go | 21 + pkg/sql/sem/tree/constant.go | 3 +- pkg/sql/sem/tree/create.go | 26 +- pkg/sql/sem/tree/datum.go | 51 +- pkg/sql/sem/tree/datum_alloc.go | 8 + pkg/sql/sem/tree/eval.go | 56 +- pkg/sql/sem/tree/expr.go | 24 +- pkg/sql/sem/tree/format.go | 31 +- pkg/sql/sem/tree/function_definition.go | 13 +- pkg/sql/sem/tree/grant.go | 5 + pkg/sql/sem/tree/import.go | 50 +- pkg/sql/sem/tree/overload.go | 15 +- pkg/sql/sem/tree/parse_string.go | 8 +- pkg/sql/sem/tree/pretty.go | 34 +- pkg/sql/sem/tree/show.go | 16 + pkg/sql/sem/tree/stmt.go | 44 +- pkg/sql/sem/tree/type_check.go | 31 +- pkg/sql/sem/tree/unsupported_error.go | 3 +- .../local_only_session_data.pb.go | 1034 +- .../local_only_session_data.proto | 60 +- pkg/sql/sessiondatapb/session_data.pb.go | 2 + pkg/sql/sessiondatapb/session_data.proto | 2 + pkg/sql/types/oid.go | 2 + pkg/sql/types/types.go | 33 +- pkg/sql/types/types.pb.go | 2 +- pkg/sql/types/types.proto | 2 +- pkg/util/collatedstring/collatedstring.go | 19 +- pkg/util/json/encoded.go | 4 +- pkg/util/json/json.go | 55 +- pkg/util/jsonpath/parser/jsonpath.go | 2 +- pkg/util/num32/vec.go | 31 +- pkg/util/syncutil/atomic.go | 19 +- pkg/util/system/endian.go | 12 + pkg/util/timeutil/manual_time.go | 2 - pkg/util/timeutil/time_source.go | 8 - pkg/util/timeutil/timer.go | 54 +- pkg/util/tracing/tracer.go | 1 - pkg/util/uuid/codec.go | 19 +- pkg/util/vector/vector.go | 6 +- snapshot.sh | 13 +- version | 2 +- 68 files changed, 35236 insertions(+), 34548 deletions(-) delete mode 100644 pkg/sql/parser/unreserved_keywords.awk create mode 100755 pkg/sql/parser/unused_keywords.sh create mode 100644 pkg/util/system/endian.go diff --git a/go.mod b/go.mod index fa95f7d..4d9e1c2 100644 --- a/go.mod +++ b/go.mod @@ -11,7 +11,7 @@ require ( github.com/cockroachdb/gostdlib v1.19.0 github.com/cockroachdb/logtags v0.0.0-20241215232642-bb51bb14a506 github.com/cockroachdb/redact v1.1.5 - github.com/cockroachdb/version v0.0.0-20250314144055-3860cd14adf2 + github.com/cockroachdb/version v0.0.0-20250509181251-54dac3003410 github.com/dave/dst v0.27.2 github.com/dustin/go-humanize v1.0.0 github.com/gogo/protobuf v1.3.2 diff --git a/go.sum b/go.sum index 5492e18..f369a80 100644 --- a/go.sum +++ b/go.sum @@ -68,8 +68,8 @@ github.com/cockroachdb/logtags v0.0.0-20241215232642-bb51bb14a506 h1:ASDL+UJcILM github.com/cockroachdb/logtags v0.0.0-20241215232642-bb51bb14a506/go.mod h1:Mw7HqKr2kdtu6aYGn3tPmAftiP3QPX63LdK/zcariIo= github.com/cockroachdb/redact v1.1.5 h1:u1PMllDkdFfPWaNGMyLD1+so+aq3uUItthCFqzwPJ30= github.com/cockroachdb/redact v1.1.5/go.mod h1:BVNblN9mBWFyMyqK1k3AAiSxhvhfK2oOZZ2lK+dpvRg= -github.com/cockroachdb/version v0.0.0-20250314144055-3860cd14adf2 h1:8Vfw2iNEpYIV6aLtMwT5UOGuPmp9MKlEKWKFTuB+MPU= -github.com/cockroachdb/version v0.0.0-20250314144055-3860cd14adf2/go.mod h1:P9WiZOdQ1R/ZZDL0WzF5wlyRvrjtfhNOwMZymFpBwjE= +github.com/cockroachdb/version v0.0.0-20250509181251-54dac3003410 h1:GuIAxxl30gmd9m7ct6fgYb49GUv8GAxICU5VfU9GRvc= +github.com/cockroachdb/version v0.0.0-20250509181251-54dac3003410/go.mod h1:P9WiZOdQ1R/ZZDL0WzF5wlyRvrjtfhNOwMZymFpBwjE= github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI= github.com/containerd/continuity v0.0.0-20190827140505-75bee3e2ccb6/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= diff --git a/pkg/build/info.go b/pkg/build/info.go index ec7ede1..dcb9d18 100644 --- a/pkg/build/info.go +++ b/pkg/build/info.go @@ -107,16 +107,16 @@ func BinaryVersion() string { // It returns "vX.Y" for all release versions, and all prerelease versions >= "alpha.1". // X and Y are the major and minor, respectively, of the version specified in version.txt. // For all other prerelease versions, it returns "dev". -// N.B. new public-facing doc URLs are expected to be up beginning with the "alpha.1" prerelease. Otherwise, "dev" will +// N.B. new public-facing doc URLs are expected to be up once the "alpha.1" prerelease is shipped. Otherwise, "dev" will // cause the url mapper to redirect to the latest stable release. func VersionForURLs() string { if parsedVersionTxt.IsPrerelease() { phaseAndOrdinal := parsedVersionTxt.Format("%P.%o") - // builds prior to "alpha.1" use 'dev' in their URLs - if phaseAndOrdinal < "alpha.1" { + // builds use 'dev' in their URLs until "alpha.1" is shipped + if phaseAndOrdinal <= "alpha.1" { return "dev" } - } else if parsedVersionTxt.IsCustomOrNightlyBuild() { + } else if parsedVersionTxt.IsCustomOrAdhocBuild() { return "dev" } return parsedVersionTxt.Major().String() diff --git a/pkg/geo/geomfn/unary_operators.go b/pkg/geo/geomfn/unary_operators.go index 571d5d2..34c9bfb 100644 --- a/pkg/geo/geomfn/unary_operators.go +++ b/pkg/geo/geomfn/unary_operators.go @@ -6,6 +6,8 @@ package geomfn import ( + "math" + "github.com/cockroachdb/cockroachdb-parser/pkg/geo" "github.com/cockroachdb/cockroachdb-parser/pkg/geo/geos" "github.com/cockroachdb/errors" @@ -242,3 +244,84 @@ func CountVertices(t geom.T) int { return len(t.FlatCoords()) / t.Stride() } } + +// length3DLineString returns the length of a +// given 3D LINESTRING. Returns an error if +// lineString does not have a z-coordinate. +func length3DLineString(lineString *geom.LineString) (float64, error) { + lineCoords := lineString.Coords() + zIndex := lineString.Layout().ZIndex() + if zIndex < 0 || zIndex >= lineString.Stride() { + return 0, errors.AssertionFailedf("Z-Index for LINESTRING is out-of-bounds") + } + lineLength := float64(0) + for i := 1; i < len(lineCoords); i++ { + prevPoint, curPoint := lineCoords[i-1], lineCoords[i] + deltaX := curPoint.X() - prevPoint.X() + deltaY := curPoint.Y() - prevPoint.Y() + deltaZ := curPoint[zIndex] - prevPoint[zIndex] + distBetweenPoints := math.Sqrt(deltaX*deltaX + deltaY*deltaY + deltaZ*deltaZ) + lineLength += distBetweenPoints + } + + return lineLength, nil +} + +// length3DMultiLineString returns the length of a +// given 3D MULTILINESTRING. Returns an error if +// multiLineString is not 3D. +func length3DMultiLineString(multiLineString *geom.MultiLineString) (float64, error) { + multiLineLength := 0.0 + for i := 0; i < multiLineString.NumLineStrings(); i++ { + lineLength, err := length3DLineString(multiLineString.LineString(i)) + if err != nil { + return 0, err + } + multiLineLength += lineLength + } + + return multiLineLength, nil +} + +// Length3D returns the length of a given Geometry. +// Compatible with 3D geometries. +// Note only (MULTI)LINESTRING objects have a length. +func Length3D(g geo.Geometry) (float64, error) { + geomRepr, err := g.AsGeomT() + if err != nil { + return 0, err + } + + switch geomRepr.Layout() { + case geom.XYZ, geom.XYZM: + return length3DFromGeomT(geomRepr) + } + // Call default length + return lengthFromGeomT(geomRepr) +} + +// length3DFromGeomT returns the length from a geom.T, recursing down +// GeometryCollections if required. +// Compatible with 3D geometries. +func length3DFromGeomT(geomRepr geom.T) (float64, error) { + switch geomRepr := geomRepr.(type) { + case *geom.Point, *geom.MultiPoint, *geom.Polygon, *geom.MultiPolygon: + return 0, nil + case *geom.LineString: + return length3DLineString(geomRepr) + case *geom.MultiLineString: + return length3DMultiLineString(geomRepr) + case *geom.GeometryCollection: + total := float64(0) + for _, subG := range geomRepr.Geoms() { + subLength, err := length3DFromGeomT(subG) + if err != nil { + return 0, err + } + total += subLength + } + return total, nil + default: + return 0, errors.AssertionFailedf("unknown geometry type: %T", geomRepr) + } +} diff --git a/pkg/geo/geoproj/zcgo_flags.go b/pkg/geo/geoproj/zcgo_flags.go index 5e06e73..834485d 100644 --- a/pkg/geo/geoproj/zcgo_flags.go +++ b/pkg/geo/geoproj/zcgo_flags.go @@ -2,6 +2,6 @@ package geoproj -// #cgo CPPFLAGS: -I/Users/jeremyyang/go/src/github.com/cockroachdb/cockroachdb-parser/bin/c-deps/archived_cdep_libjemalloc_macosarm/include -// #cgo LDFLAGS: -L/Users/jeremyyang/go/src/github.com/cockroachdb/cockroachdb-parser/bin/c-deps/archived_cdep_libjemalloc_macosarm/lib -L/Users/jeremyyang/go/src/github.com/cockroachdb/cockroachdb-parser/bin/c-deps/archived_cdep_libproj_macosarm/lib +// #cgo CPPFLAGS: -I/mnt/scratch/git/cockroach-2/bin/c-deps/archived_cdep_libjemalloc_linux/include -I/mnt/scratch/git/cockroach-2/bin/c-deps/archived_cdep_libkrb5_linux/include +// #cgo LDFLAGS: -L/mnt/scratch/git/cockroach-2/bin/c-deps/archived_cdep_libjemalloc_linux/lib -L/mnt/scratch/git/cockroach-2/bin/c-deps/archived_cdep_libproj_linux/lib -L/mnt/scratch/git/cockroach-2/bin/c-deps/archived_cdep_libkrb5_linux/lib import "C" diff --git a/pkg/settings/byte_size.go b/pkg/settings/byte_size.go index 093e6e3..6ddf60e 100644 --- a/pkg/settings/byte_size.go +++ b/pkg/settings/byte_size.go @@ -60,7 +60,7 @@ func RegisterByteSizeSetting( } hasExplicitValidationFn = true if err := opt.validateInt64Fn(v); err != nil { - return errors.Wrapf(err, "invalid value for %s", key) + return err } } if !hasExplicitValidationFn { diff --git a/pkg/settings/duration.go b/pkg/settings/duration.go index 4c5e1d8..f149d8b 100644 --- a/pkg/settings/duration.go +++ b/pkg/settings/duration.go @@ -147,11 +147,14 @@ func (d *DurationSetting) setToDefault(ctx context.Context, sv *Values) { } } -// RegisterDurationSetting defines a new setting with type duration. +// RegisterDurationSetting defines a new setting with type duration and any +// supplied validation function(s). If no validation functions are given, then +// the non-negative duration validation is performed. func RegisterDurationSetting( class Class, key InternalKey, desc string, defaultValue time.Duration, opts ...SettingOption, ) *DurationSetting { validateFn := func(val time.Duration) error { + hasExplicitValidationFn := false for _, opt := range opts { switch { case opt.commonOpt != nil: @@ -160,10 +163,15 @@ func RegisterDurationSetting( default: panic(errors.AssertionFailedf("wrong validator type")) } + hasExplicitValidationFn = true if err := opt.validateDurationFn(val); err != nil { - return errors.Wrapf(err, "invalid value for %s", key) + return err } } + if !hasExplicitValidationFn { + // Default validation. + return nonNegativeDurationInternal(val) + } return nil } @@ -179,13 +187,14 @@ func RegisterDurationSetting( return setting } -// RegisterPublicDurationSettingWithExplicitUnit defines a new -// public setting with type duration which requires an explicit unit when being -// set. +// RegisterDurationSettingWithExplicitUnit defines a new setting with type +// duration which requires an explicit unit when being set. If no validation +// functions are given, then the non-negative duration validation is performed. func RegisterDurationSettingWithExplicitUnit( class Class, key InternalKey, desc string, defaultValue time.Duration, opts ...SettingOption, ) *DurationSettingWithExplicitUnit { validateFn := func(val time.Duration) error { + hasExplicitValidationFn := false for _, opt := range opts { switch { case opt.commonOpt != nil: @@ -194,10 +203,15 @@ func RegisterDurationSettingWithExplicitUnit( default: panic(errors.AssertionFailedf("wrong validator type")) } + hasExplicitValidationFn = true if err := opt.validateDurationFn(val); err != nil { - return errors.Wrapf(err, "invalid value for %s", key) + return err } } + if !hasExplicitValidationFn { + // Default validation. + return nonNegativeDurationInternal(val) + } return nil } if err := validateFn(defaultValue); err != nil { @@ -214,10 +228,6 @@ func RegisterDurationSettingWithExplicitUnit( return setting } -// NonNegativeDuration checks that the duration is greater or equal to -// zero. It can be passed to RegisterDurationSetting. -var NonNegativeDuration SettingOption = WithValidateDuration(nonNegativeDurationInternal) - func nonNegativeDurationInternal(v time.Duration) error { if v < 0 { return errors.Errorf("cannot be set to a negative duration: %s", v) diff --git a/pkg/settings/registry.go b/pkg/settings/registry.go index e6e2321..cf9eae0 100644 --- a/pkg/settings/registry.go +++ b/pkg/settings/registry.go @@ -267,6 +267,10 @@ var retiredSettings = map[InternalKey]struct{}{ "changefeed.new_pubsub_sink_enabled": {}, "changefeed.new_pubsub_sink.enabled": {}, "logical_replication.consumer.use_implicit_txns.enabled": {}, + + // removed as of 25.3 + "sql.metrics.max_stmt_fingerprints_per_explicit_txn": {}, + "sql.jobs.legacy_per_job_access_via_details.enabled": {}, } // grandfatheredDefaultSettings is the list of "grandfathered" existing sql.defaults diff --git a/pkg/sql/lexbase/keywords.go b/pkg/sql/lexbase/keywords.go index fd6a768..c0bca71 100644 --- a/pkg/sql/lexbase/keywords.go +++ b/pkg/sql/lexbase/keywords.go @@ -47,7 +47,6 @@ var KeywordsCategories = map[string]string{ "both": "R", "box2d": "C", "bucket_count": "U", -"bundle": "U", "by": "U", "bypassrls": "U", "cache": "U", @@ -302,6 +301,7 @@ var KeywordsCategories = map[string]string{ "localtime": "R", "localtimestamp": "R", "locked": "U", +"logged": "U", "logical": "U", "logically": "U", "login": "U", @@ -316,7 +316,6 @@ var KeywordsCategories = map[string]string{ "minvalue": "U", "mode": "U", "modifyclustersetting": "U", -"modifysqlclustersetting": "U", "month": "U", "move": "U", "multilinestring": "U", @@ -430,6 +429,7 @@ var KeywordsCategories = map[string]string{ "privileges": "U", "procedure": "U", "procedures": "U", +"provisionsrc": "U", "public": "U", "publication": "U", "queries": "U", @@ -469,7 +469,6 @@ var KeywordsCategories = map[string]string{ "restrictive": "U", "resume": "U", "retention": "U", -"retry": "U", "return": "U", "returning": "R", "returns": "U", @@ -629,9 +628,7 @@ var KeywordsCategories = map[string]string{ "view": "U", "viewactivity": "U", "viewactivityredacted": "U", -"viewclustermetadata": "U", "viewclustersetting": "U", -"viewdebug": "U", "virtual": "C", "virtual_cluster": "U", "virtual_cluster_name": "U", @@ -698,7 +695,6 @@ var KeywordNames = []string{ "both", "box2d", "bucket_count", -"bundle", "by", "bypassrls", "cache", @@ -953,6 +949,7 @@ var KeywordNames = []string{ "localtime", "localtimestamp", "locked", +"logged", "logical", "logically", "login", @@ -967,7 +964,6 @@ var KeywordNames = []string{ "minvalue", "mode", "modifyclustersetting", -"modifysqlclustersetting", "month", "move", "multilinestring", @@ -1081,6 +1077,7 @@ var KeywordNames = []string{ "privileges", "procedure", "procedures", +"provisionsrc", "public", "publication", "queries", @@ -1120,7 +1117,6 @@ var KeywordNames = []string{ "restrictive", "resume", "retention", -"retry", "return", "returning", "returns", @@ -1280,9 +1276,7 @@ var KeywordNames = []string{ "view", "viewactivity", "viewactivityredacted", -"viewclustermetadata", "viewclustersetting", -"viewdebug", "virtual", "virtual_cluster", "virtual_cluster_name", @@ -1354,7 +1348,6 @@ func GetKeywordID(k string) int32 { case "both": return BOTH case "box2d": return BOX2D case "bucket_count": return BUCKET_COUNT - case "bundle": return BUNDLE case "by": return BY case "bypassrls": return BYPASSRLS case "cache": return CACHE @@ -1609,6 +1602,7 @@ func GetKeywordID(k string) int32 { case "localtime": return LOCALTIME case "localtimestamp": return LOCALTIMESTAMP case "locked": return LOCKED + case "logged": return LOGGED case "logical": return LOGICAL case "logically": return LOGICALLY case "login": return LOGIN @@ -1623,7 +1617,6 @@ func GetKeywordID(k string) int32 { case "minvalue": return MINVALUE case "mode": return MODE case "modifyclustersetting": return MODIFYCLUSTERSETTING - case "modifysqlclustersetting": return MODIFYSQLCLUSTERSETTING case "month": return MONTH case "move": return MOVE case "multilinestring": return MULTILINESTRING @@ -1737,6 +1730,7 @@ func GetKeywordID(k string) int32 { case "privileges": return PRIVILEGES case "procedure": return PROCEDURE case "procedures": return PROCEDURES + case "provisionsrc": return PROVISIONSRC case "public": return PUBLIC case "publication": return PUBLICATION case "queries": return QUERIES @@ -1776,7 +1770,6 @@ func GetKeywordID(k string) int32 { case "restrictive": return RESTRICTIVE case "resume": return RESUME case "retention": return RETENTION - case "retry": return RETRY case "return": return RETURN case "returning": return RETURNING case "returns": return RETURNS @@ -1936,9 +1929,7 @@ func GetKeywordID(k string) int32 { case "view": return VIEW case "viewactivity": return VIEWACTIVITY case "viewactivityredacted": return VIEWACTIVITYREDACTED - case "viewclustermetadata": return VIEWCLUSTERMETADATA case "viewclustersetting": return VIEWCLUSTERSETTING - case "viewdebug": return VIEWDEBUG case "virtual": return VIRTUAL case "virtual_cluster": return VIRTUAL_CLUSTER case "virtual_cluster_name": return VIRTUAL_CLUSTER_NAME diff --git a/pkg/sql/lexbase/tokens.go b/pkg/sql/lexbase/tokens.go index 6c01167..984f928 100644 --- a/pkg/sql/lexbase/tokens.go +++ b/pkg/sql/lexbase/tokens.go @@ -67,279 +67,279 @@ const BUCKET_COUNT = 57406 const BOOLEAN = 57407 const BOTH = 57408 const BOX2D = 57409 -const BUNDLE = 57410 -const BY = 57411 -const BYPASSRLS = 57412 -const CACHE = 57413 -const CALL = 57414 -const CALLED = 57415 -const CANCEL = 57416 -const CANCELQUERY = 57417 -const CAPABILITIES = 57418 -const CAPABILITY = 57419 -const CASCADE = 57420 -const CASE = 57421 -const CAST = 57422 -const CBRT = 57423 -const CHANGEFEED = 57424 -const CHAR = 57425 -const CHARACTER = 57426 -const CHARACTERISTICS = 57427 -const CHECK = 57428 -const CHECK_FILES = 57429 -const CLOSE = 57430 -const CLUSTER = 57431 -const CLUSTERS = 57432 -const COALESCE = 57433 -const COLLATE = 57434 -const COLLATION = 57435 -const COLUMN = 57436 -const COLUMNS = 57437 -const COMMENT = 57438 -const COMMENTS = 57439 -const COMMIT = 57440 -const COMMITTED = 57441 -const COMPACT = 57442 -const COMPLETE = 57443 -const COMPLETIONS = 57444 -const CONCAT = 57445 -const CONCURRENTLY = 57446 -const CONFIGURATION = 57447 -const CONFIGURATIONS = 57448 -const CONFIGURE = 57449 -const CONFLICT = 57450 -const CONNECTION = 57451 -const CONNECTIONS = 57452 -const CONSTRAINT = 57453 -const CONSTRAINTS = 57454 -const CONTAINS = 57455 -const CONTROLCHANGEFEED = 57456 -const CONTROLJOB = 57457 -const CONVERSION = 57458 -const CONVERT = 57459 -const COPY = 57460 -const COS_DISTANCE = 57461 -const COST = 57462 -const COVERING = 57463 -const CREATE = 57464 -const CREATEDB = 57465 -const CREATELOGIN = 57466 -const CREATEROLE = 57467 -const CROSS = 57468 -const CSV = 57469 -const CUBE = 57470 -const CURRENT = 57471 -const CURRENT_CATALOG = 57472 -const CURRENT_DATE = 57473 -const CURRENT_SCHEMA = 57474 -const CURRENT_ROLE = 57475 -const CURRENT_TIME = 57476 -const CURRENT_TIMESTAMP = 57477 -const CURRENT_USER = 57478 -const CURSOR = 57479 -const CYCLE = 57480 -const DATA = 57481 -const DATABASE = 57482 -const DATABASES = 57483 -const DATE = 57484 -const DAY = 57485 -const DEBUG_IDS = 57486 -const DEC = 57487 -const DECIMAL = 57488 -const DEFAULT = 57489 -const DEFAULTS = 57490 -const DEFINER = 57491 -const DEALLOCATE = 57492 -const DECLARE = 57493 -const DEFERRABLE = 57494 -const DEFERRED = 57495 -const DELETE = 57496 -const DELIMITER = 57497 -const DEPENDS = 57498 -const DESC = 57499 -const DESTINATION = 57500 -const DETACHED = 57501 -const DETAILS = 57502 -const DISABLE = 57503 -const DISCARD = 57504 -const DISTANCE = 57505 -const DISTINCT = 57506 -const DO = 57507 -const DOMAIN = 57508 -const DOUBLE = 57509 -const DROP = 57510 -const EACH = 57511 -const ELSE = 57512 -const ENABLE = 57513 -const ENCODING = 57514 -const ENCRYPTED = 57515 -const ENCRYPTION_INFO_DIR = 57516 -const ENCRYPTION_PASSPHRASE = 57517 -const END = 57518 -const ENUM = 57519 -const ENUMS = 57520 -const ESCAPE = 57521 -const EXCEPT = 57522 -const EXCLUDE = 57523 -const EXCLUDING = 57524 -const EXISTS = 57525 -const EXECUTE = 57526 -const EXECUTION = 57527 -const EXPERIMENTAL = 57528 -const EXPERIMENTAL_FINGERPRINTS = 57529 -const EXPERIMENTAL_REPLICA = 57530 -const EXPERIMENTAL_AUDIT = 57531 -const EXPERIMENTAL_RELOCATE = 57532 -const EXPIRATION = 57533 -const EXPLAIN = 57534 -const EXPORT = 57535 -const EXTENSION = 57536 -const EXTERNAL = 57537 -const EXTRACT = 57538 -const EXTRACT_DURATION = 57539 -const EXTREMES = 57540 -const FAILURE = 57541 -const FALSE = 57542 -const FAMILY = 57543 -const FETCH = 57544 -const FETCHVAL = 57545 -const FETCHTEXT = 57546 -const FETCHVAL_PATH = 57547 -const FETCHTEXT_PATH = 57548 -const FILES = 57549 -const FILTER = 57550 -const FIRST = 57551 -const FLOAT = 57552 -const FLOAT4 = 57553 -const FLOAT8 = 57554 -const FLOORDIV = 57555 -const FOLLOWING = 57556 -const FOR = 57557 -const FORCE = 57558 -const FORCE_INDEX = 57559 -const FORCE_INVERTED_INDEX = 57560 -const FORCE_NOT_NULL = 57561 -const FORCE_NULL = 57562 -const FORCE_QUOTE = 57563 -const FORCE_ZIGZAG = 57564 -const FOREIGN = 57565 -const FORMAT = 57566 -const FORWARD = 57567 -const FREEZE = 57568 -const FROM = 57569 -const FULL = 57570 -const FUNCTION = 57571 -const FUNCTIONS = 57572 -const GENERATED = 57573 -const GEOGRAPHY = 57574 -const GEOMETRY = 57575 -const GEOMETRYM = 57576 -const GEOMETRYZ = 57577 -const GEOMETRYZM = 57578 -const GEOMETRYCOLLECTION = 57579 -const GEOMETRYCOLLECTIONM = 57580 -const GEOMETRYCOLLECTIONZ = 57581 -const GEOMETRYCOLLECTIONZM = 57582 -const GLOBAL = 57583 -const GOAL = 57584 -const GRANT = 57585 -const GRANTEE = 57586 -const GRANTS = 57587 -const GREATEST = 57588 -const GROUP = 57589 -const GROUPING = 57590 -const GROUPS = 57591 -const HAVING = 57592 -const HASH = 57593 -const HEADER = 57594 -const HIGH = 57595 -const HISTOGRAM = 57596 -const HOLD = 57597 -const HOUR = 57598 -const IDENTITY = 57599 -const IF = 57600 -const IFERROR = 57601 -const IFNULL = 57602 -const IGNORE_FOREIGN_KEYS = 57603 -const ILIKE = 57604 -const IMMEDIATE = 57605 -const IMMEDIATELY = 57606 -const IMMUTABLE = 57607 -const IMPORT = 57608 -const IN = 57609 -const INCLUDE = 57610 -const INCLUDING = 57611 -const INCLUDE_ALL_SECONDARY_TENANTS = 57612 -const INCLUDE_ALL_VIRTUAL_CLUSTERS = 57613 -const INCREMENT = 57614 -const INCREMENTAL = 57615 -const INCREMENTAL_LOCATION = 57616 -const INET = 57617 -const INET_CONTAINED_BY_OR_EQUALS = 57618 -const INET_CONTAINS_OR_EQUALS = 57619 -const INDEX = 57620 -const INDEXES = 57621 -const INHERITS = 57622 -const INJECT = 57623 -const INITIALLY = 57624 -const INDEX_BEFORE_PAREN = 57625 -const INDEX_BEFORE_NAME_THEN_PAREN = 57626 -const INDEX_AFTER_ORDER_BY_BEFORE_AT = 57627 -const INNER = 57628 -const INOUT = 57629 -const INPUT = 57630 -const INSENSITIVE = 57631 -const INSERT = 57632 -const INSTEAD = 57633 -const INT = 57634 -const INTEGER = 57635 -const INTERSECT = 57636 -const INTERVAL = 57637 -const INTO = 57638 -const INTO_DB = 57639 -const INVERTED = 57640 -const INVOKER = 57641 -const IS = 57642 -const ISERROR = 57643 -const ISNULL = 57644 -const ISOLATION = 57645 -const JOB = 57646 -const JOBS = 57647 -const JOIN = 57648 -const JSON = 57649 -const JSONB = 57650 -const JSON_SOME_EXISTS = 57651 -const JSON_ALL_EXISTS = 57652 -const KEY = 57653 -const KEYS = 57654 -const KMS = 57655 -const KV = 57656 -const LABEL = 57657 -const LANGUAGE = 57658 -const LAST = 57659 -const LATERAL = 57660 -const LATEST = 57661 -const LC_CTYPE = 57662 -const LC_COLLATE = 57663 -const LEADING = 57664 -const LEASE = 57665 -const LEAST = 57666 -const LEAKPROOF = 57667 -const LEFT = 57668 -const LESS = 57669 -const LEVEL = 57670 -const LIKE = 57671 -const LIMIT = 57672 -const LINESTRING = 57673 -const LINESTRINGM = 57674 -const LINESTRINGZ = 57675 -const LINESTRINGZM = 57676 -const LIST = 57677 -const LOCAL = 57678 -const LOCALITY = 57679 -const LOCALTIME = 57680 -const LOCALTIMESTAMP = 57681 -const LOCKED = 57682 +const BY = 57410 +const BYPASSRLS = 57411 +const CACHE = 57412 +const CALL = 57413 +const CALLED = 57414 +const CANCEL = 57415 +const CANCELQUERY = 57416 +const CAPABILITIES = 57417 +const CAPABILITY = 57418 +const CASCADE = 57419 +const CASE = 57420 +const CAST = 57421 +const CBRT = 57422 +const CHANGEFEED = 57423 +const CHAR = 57424 +const CHARACTER = 57425 +const CHARACTERISTICS = 57426 +const CHECK = 57427 +const CHECK_FILES = 57428 +const CLOSE = 57429 +const CLUSTER = 57430 +const CLUSTERS = 57431 +const COALESCE = 57432 +const COLLATE = 57433 +const COLLATION = 57434 +const COLUMN = 57435 +const COLUMNS = 57436 +const COMMENT = 57437 +const COMMENTS = 57438 +const COMMIT = 57439 +const COMMITTED = 57440 +const COMPACT = 57441 +const COMPLETE = 57442 +const COMPLETIONS = 57443 +const CONCAT = 57444 +const CONCURRENTLY = 57445 +const CONFIGURATION = 57446 +const CONFIGURATIONS = 57447 +const CONFIGURE = 57448 +const CONFLICT = 57449 +const CONNECTION = 57450 +const CONNECTIONS = 57451 +const CONSTRAINT = 57452 +const CONSTRAINTS = 57453 +const CONTAINS = 57454 +const CONTROLCHANGEFEED = 57455 +const CONTROLJOB = 57456 +const CONVERSION = 57457 +const CONVERT = 57458 +const COPY = 57459 +const COS_DISTANCE = 57460 +const COST = 57461 +const COVERING = 57462 +const CREATE = 57463 +const CREATEDB = 57464 +const CREATELOGIN = 57465 +const CREATEROLE = 57466 +const CROSS = 57467 +const CSV = 57468 +const CUBE = 57469 +const CURRENT = 57470 +const CURRENT_CATALOG = 57471 +const CURRENT_DATE = 57472 +const CURRENT_SCHEMA = 57473 +const CURRENT_ROLE = 57474 +const CURRENT_TIME = 57475 +const CURRENT_TIMESTAMP = 57476 +const CURRENT_USER = 57477 +const CURSOR = 57478 +const CYCLE = 57479 +const DATA = 57480 +const DATABASE = 57481 +const DATABASES = 57482 +const DATE = 57483 +const DAY = 57484 +const DEBUG_IDS = 57485 +const DEC = 57486 +const DECIMAL = 57487 +const DEFAULT = 57488 +const DEFAULTS = 57489 +const DEFINER = 57490 +const DEALLOCATE = 57491 +const DECLARE = 57492 +const DEFERRABLE = 57493 +const DEFERRED = 57494 +const DELETE = 57495 +const DELIMITER = 57496 +const DEPENDS = 57497 +const DESC = 57498 +const DESTINATION = 57499 +const DETACHED = 57500 +const DETAILS = 57501 +const DISABLE = 57502 +const DISCARD = 57503 +const DISTANCE = 57504 +const DISTINCT = 57505 +const DO = 57506 +const DOMAIN = 57507 +const DOUBLE = 57508 +const DROP = 57509 +const EACH = 57510 +const ELSE = 57511 +const ENABLE = 57512 +const ENCODING = 57513 +const ENCRYPTED = 57514 +const ENCRYPTION_INFO_DIR = 57515 +const ENCRYPTION_PASSPHRASE = 57516 +const END = 57517 +const ENUM = 57518 +const ENUMS = 57519 +const ESCAPE = 57520 +const EXCEPT = 57521 +const EXCLUDE = 57522 +const EXCLUDING = 57523 +const EXISTS = 57524 +const EXECUTE = 57525 +const EXECUTION = 57526 +const EXPERIMENTAL = 57527 +const EXPERIMENTAL_FINGERPRINTS = 57528 +const EXPERIMENTAL_REPLICA = 57529 +const EXPERIMENTAL_AUDIT = 57530 +const EXPERIMENTAL_RELOCATE = 57531 +const EXPIRATION = 57532 +const EXPLAIN = 57533 +const EXPORT = 57534 +const EXTENSION = 57535 +const EXTERNAL = 57536 +const EXTRACT = 57537 +const EXTRACT_DURATION = 57538 +const EXTREMES = 57539 +const FAILURE = 57540 +const FALSE = 57541 +const FAMILY = 57542 +const FETCH = 57543 +const FETCHVAL = 57544 +const FETCHTEXT = 57545 +const FETCHVAL_PATH = 57546 +const FETCHTEXT_PATH = 57547 +const FILES = 57548 +const FILTER = 57549 +const FIRST = 57550 +const FLOAT = 57551 +const FLOAT4 = 57552 +const FLOAT8 = 57553 +const FLOORDIV = 57554 +const FOLLOWING = 57555 +const FOR = 57556 +const FORCE = 57557 +const FORCE_INDEX = 57558 +const FORCE_INVERTED_INDEX = 57559 +const FORCE_NOT_NULL = 57560 +const FORCE_NULL = 57561 +const FORCE_QUOTE = 57562 +const FORCE_ZIGZAG = 57563 +const FOREIGN = 57564 +const FORMAT = 57565 +const FORWARD = 57566 +const FREEZE = 57567 +const FROM = 57568 +const FULL = 57569 +const FUNCTION = 57570 +const FUNCTIONS = 57571 +const GENERATED = 57572 +const GEOGRAPHY = 57573 +const GEOMETRY = 57574 +const GEOMETRYM = 57575 +const GEOMETRYZ = 57576 +const GEOMETRYZM = 57577 +const GEOMETRYCOLLECTION = 57578 +const GEOMETRYCOLLECTIONM = 57579 +const GEOMETRYCOLLECTIONZ = 57580 +const GEOMETRYCOLLECTIONZM = 57581 +const GLOBAL = 57582 +const GOAL = 57583 +const GRANT = 57584 +const GRANTEE = 57585 +const GRANTS = 57586 +const GREATEST = 57587 +const GROUP = 57588 +const GROUPING = 57589 +const GROUPS = 57590 +const HAVING = 57591 +const HASH = 57592 +const HEADER = 57593 +const HIGH = 57594 +const HISTOGRAM = 57595 +const HOLD = 57596 +const HOUR = 57597 +const IDENTITY = 57598 +const IF = 57599 +const IFERROR = 57600 +const IFNULL = 57601 +const IGNORE_FOREIGN_KEYS = 57602 +const ILIKE = 57603 +const IMMEDIATE = 57604 +const IMMEDIATELY = 57605 +const IMMUTABLE = 57606 +const IMPORT = 57607 +const IN = 57608 +const INCLUDE = 57609 +const INCLUDING = 57610 +const INCLUDE_ALL_SECONDARY_TENANTS = 57611 +const INCLUDE_ALL_VIRTUAL_CLUSTERS = 57612 +const INCREMENT = 57613 +const INCREMENTAL = 57614 +const INCREMENTAL_LOCATION = 57615 +const INET = 57616 +const INET_CONTAINED_BY_OR_EQUALS = 57617 +const INET_CONTAINS_OR_EQUALS = 57618 +const INDEX = 57619 +const INDEXES = 57620 +const INHERITS = 57621 +const INJECT = 57622 +const INITIALLY = 57623 +const INDEX_BEFORE_PAREN = 57624 +const INDEX_BEFORE_NAME_THEN_PAREN = 57625 +const INDEX_AFTER_ORDER_BY_BEFORE_AT = 57626 +const INNER = 57627 +const INOUT = 57628 +const INPUT = 57629 +const INSENSITIVE = 57630 +const INSERT = 57631 +const INSTEAD = 57632 +const INT = 57633 +const INTEGER = 57634 +const INTERSECT = 57635 +const INTERVAL = 57636 +const INTO = 57637 +const INTO_DB = 57638 +const INVERTED = 57639 +const INVOKER = 57640 +const IS = 57641 +const ISERROR = 57642 +const ISNULL = 57643 +const ISOLATION = 57644 +const JOB = 57645 +const JOBS = 57646 +const JOIN = 57647 +const JSON = 57648 +const JSONB = 57649 +const JSON_SOME_EXISTS = 57650 +const JSON_ALL_EXISTS = 57651 +const KEY = 57652 +const KEYS = 57653 +const KMS = 57654 +const KV = 57655 +const LABEL = 57656 +const LANGUAGE = 57657 +const LAST = 57658 +const LATERAL = 57659 +const LATEST = 57660 +const LC_CTYPE = 57661 +const LC_COLLATE = 57662 +const LEADING = 57663 +const LEASE = 57664 +const LEAST = 57665 +const LEAKPROOF = 57666 +const LEFT = 57667 +const LESS = 57668 +const LEVEL = 57669 +const LIKE = 57670 +const LIMIT = 57671 +const LINESTRING = 57672 +const LINESTRINGM = 57673 +const LINESTRINGZ = 57674 +const LINESTRINGZM = 57675 +const LIST = 57676 +const LOCAL = 57677 +const LOCALITY = 57678 +const LOCALTIME = 57679 +const LOCALTIMESTAMP = 57680 +const LOCKED = 57681 +const LOGGED = 57682 const LOGICAL = 57683 const LOGICALLY = 57684 const LOGIN = 57685 @@ -354,126 +354,126 @@ const MAXVALUE = 57693 const METHOD = 57694 const MINUTE = 57695 const MODIFYCLUSTERSETTING = 57696 -const MODIFYSQLCLUSTERSETTING = 57697 -const MODE = 57698 -const MONTH = 57699 -const MOVE = 57700 -const MULTILINESTRING = 57701 -const MULTILINESTRINGM = 57702 -const MULTILINESTRINGZ = 57703 -const MULTILINESTRINGZM = 57704 -const MULTIPOINT = 57705 -const MULTIPOINTM = 57706 -const MULTIPOINTZ = 57707 -const MULTIPOINTZM = 57708 -const MULTIPOLYGON = 57709 -const MULTIPOLYGONM = 57710 -const MULTIPOLYGONZ = 57711 -const MULTIPOLYGONZM = 57712 -const NAN = 57713 -const NAME = 57714 -const NAMES = 57715 -const NATURAL = 57716 -const NEG_INNER_PRODUCT = 57717 -const NEVER = 57718 -const NEW = 57719 -const NEW_DB_NAME = 57720 -const NEW_KMS = 57721 -const NEXT = 57722 -const NO = 57723 -const NOBYPASSRLS = 57724 -const NOCANCELQUERY = 57725 -const NOCONTROLCHANGEFEED = 57726 -const NOCONTROLJOB = 57727 -const NOCREATEDB = 57728 -const NOCREATELOGIN = 57729 -const NOCREATEROLE = 57730 -const NODE = 57731 -const NOLOGIN = 57732 -const NOMODIFYCLUSTERSETTING = 57733 -const NOREPLICATION = 57734 -const NOSQLLOGIN = 57735 -const NO_INDEX_JOIN = 57736 -const NO_ZIGZAG_JOIN = 57737 -const NO_FULL_SCAN = 57738 -const NONE = 57739 -const NONVOTERS = 57740 -const NORMAL = 57741 -const NOT = 57742 -const NOTHING = 57743 -const NOTHING_AFTER_RETURNING = 57744 -const NOTNULL = 57745 -const NOVIEWACTIVITY = 57746 -const NOVIEWACTIVITYREDACTED = 57747 -const NOVIEWCLUSTERSETTING = 57748 -const NOWAIT = 57749 -const NULL = 57750 -const NULLIF = 57751 -const NULLS = 57752 -const NUMERIC = 57753 -const OF = 57754 -const OFF = 57755 -const OFFSET = 57756 -const OID = 57757 -const OIDS = 57758 -const OIDVECTOR = 57759 -const OLD = 57760 -const OLD_KMS = 57761 -const ON = 57762 -const ONLY = 57763 -const OPT = 57764 -const OPTION = 57765 -const OPTIONS = 57766 -const OR = 57767 -const ORDER = 57768 -const ORDINALITY = 57769 -const OTHERS = 57770 -const OUT = 57771 -const OUTER = 57772 -const OVER = 57773 -const OVERLAPS = 57774 -const OVERLAY = 57775 -const OWNED = 57776 -const OWNER = 57777 -const OPERATOR = 57778 -const PARALLEL = 57779 -const PARENT = 57780 -const PARTIAL = 57781 -const PARTITION = 57782 -const PARTITIONS = 57783 -const PASSWORD = 57784 -const PAUSE = 57785 -const PAUSED = 57786 -const PER = 57787 -const PERMISSIVE = 57788 -const PHYSICAL = 57789 -const PLACEMENT = 57790 -const PLACING = 57791 -const PLAN = 57792 -const PLANS = 57793 -const POINT = 57794 -const POINTM = 57795 -const POINTZ = 57796 -const POINTZM = 57797 -const POLICIES = 57798 -const POLICY = 57799 -const POLYGON = 57800 -const POLYGONM = 57801 -const POLYGONZ = 57802 -const POLYGONZM = 57803 -const POSITION = 57804 -const PRECEDING = 57805 -const PRECISION = 57806 -const PREPARE = 57807 -const PREPARED = 57808 -const PRESERVE = 57809 -const PRIMARY = 57810 -const PRIOR = 57811 -const PRIORITY = 57812 -const PRIVILEGES = 57813 -const PROCEDURAL = 57814 -const PROCEDURE = 57815 -const PROCEDURES = 57816 +const MODE = 57697 +const MONTH = 57698 +const MOVE = 57699 +const MULTILINESTRING = 57700 +const MULTILINESTRINGM = 57701 +const MULTILINESTRINGZ = 57702 +const MULTILINESTRINGZM = 57703 +const MULTIPOINT = 57704 +const MULTIPOINTM = 57705 +const MULTIPOINTZ = 57706 +const MULTIPOINTZM = 57707 +const MULTIPOLYGON = 57708 +const MULTIPOLYGONM = 57709 +const MULTIPOLYGONZ = 57710 +const MULTIPOLYGONZM = 57711 +const NAN = 57712 +const NAME = 57713 +const NAMES = 57714 +const NATURAL = 57715 +const NEG_INNER_PRODUCT = 57716 +const NEVER = 57717 +const NEW = 57718 +const NEW_DB_NAME = 57719 +const NEW_KMS = 57720 +const NEXT = 57721 +const NO = 57722 +const NOBYPASSRLS = 57723 +const NOCANCELQUERY = 57724 +const NOCONTROLCHANGEFEED = 57725 +const NOCONTROLJOB = 57726 +const NOCREATEDB = 57727 +const NOCREATELOGIN = 57728 +const NOCREATEROLE = 57729 +const NODE = 57730 +const NOLOGIN = 57731 +const NOMODIFYCLUSTERSETTING = 57732 +const NOREPLICATION = 57733 +const NOSQLLOGIN = 57734 +const NO_INDEX_JOIN = 57735 +const NO_ZIGZAG_JOIN = 57736 +const NO_FULL_SCAN = 57737 +const NONE = 57738 +const NONVOTERS = 57739 +const NORMAL = 57740 +const NOT = 57741 +const NOTHING = 57742 +const NOTHING_AFTER_RETURNING = 57743 +const NOTNULL = 57744 +const NOVIEWACTIVITY = 57745 +const NOVIEWACTIVITYREDACTED = 57746 +const NOVIEWCLUSTERSETTING = 57747 +const NOWAIT = 57748 +const NULL = 57749 +const NULLIF = 57750 +const NULLS = 57751 +const NUMERIC = 57752 +const OF = 57753 +const OFF = 57754 +const OFFSET = 57755 +const OID = 57756 +const OIDS = 57757 +const OIDVECTOR = 57758 +const OLD = 57759 +const OLD_KMS = 57760 +const ON = 57761 +const ONLY = 57762 +const OPT = 57763 +const OPTION = 57764 +const OPTIONS = 57765 +const OR = 57766 +const ORDER = 57767 +const ORDINALITY = 57768 +const OTHERS = 57769 +const OUT = 57770 +const OUTER = 57771 +const OVER = 57772 +const OVERLAPS = 57773 +const OVERLAY = 57774 +const OWNED = 57775 +const OWNER = 57776 +const OPERATOR = 57777 +const PARALLEL = 57778 +const PARENT = 57779 +const PARTIAL = 57780 +const PARTITION = 57781 +const PARTITIONS = 57782 +const PASSWORD = 57783 +const PAUSE = 57784 +const PAUSED = 57785 +const PER = 57786 +const PERMISSIVE = 57787 +const PHYSICAL = 57788 +const PLACEMENT = 57789 +const PLACING = 57790 +const PLAN = 57791 +const PLANS = 57792 +const POINT = 57793 +const POINTM = 57794 +const POINTZ = 57795 +const POINTZM = 57796 +const POLICIES = 57797 +const POLICY = 57798 +const POLYGON = 57799 +const POLYGONM = 57800 +const POLYGONZ = 57801 +const POLYGONZM = 57802 +const POSITION = 57803 +const PRECEDING = 57804 +const PRECISION = 57805 +const PREPARE = 57806 +const PREPARED = 57807 +const PRESERVE = 57808 +const PRIMARY = 57809 +const PRIOR = 57810 +const PRIORITY = 57811 +const PRIVILEGES = 57812 +const PROCEDURAL = 57813 +const PROCEDURE = 57814 +const PROCEDURES = 57815 +const PROVISIONSRC = 57816 const PUBLIC = 57817 const PUBLICATION = 57818 const QUERIES = 57819 @@ -523,203 +523,200 @@ const RETENTION = 57862 const RETURNING = 57863 const RETURN = 57864 const RETURNS = 57865 -const RETRY = 57866 -const REVISION_HISTORY = 57867 -const REVOKE = 57868 -const RIGHT = 57869 -const ROLE = 57870 -const ROLES = 57871 -const ROLLBACK = 57872 -const ROLLUP = 57873 -const ROUTINES = 57874 -const ROW = 57875 -const ROWS = 57876 -const RSHIFT = 57877 -const RULE = 57878 -const RUNNING = 57879 -const SAVEPOINT = 57880 -const SCANS = 57881 -const SCATTER = 57882 -const SCHEDULE = 57883 -const SCHEDULES = 57884 -const SCROLL = 57885 -const SCHEMA = 57886 -const SCHEMA_ONLY = 57887 -const SCHEMAS = 57888 -const SCRUB = 57889 -const SEARCH = 57890 -const SECOND = 57891 -const SECONDARY = 57892 -const SECURITY = 57893 -const SELECT = 57894 -const SEQUENCE = 57895 -const SEQUENCES = 57896 -const SERIALIZABLE = 57897 -const SERVER = 57898 -const SERVICE = 57899 -const SESSION = 57900 -const SESSIONS = 57901 -const SESSION_USER = 57902 -const SET = 57903 -const SETOF = 57904 -const SETS = 57905 -const SETTING = 57906 -const SETTINGS = 57907 -const SHARE = 57908 -const SHARED = 57909 -const SHOW = 57910 -const SIMILAR = 57911 -const SIMPLE = 57912 -const SIZE = 57913 -const SKIP = 57914 -const SKIP_LOCALITIES_CHECK = 57915 -const SKIP_MISSING_FOREIGN_KEYS = 57916 -const SKIP_MISSING_SEQUENCES = 57917 -const SKIP_MISSING_SEQUENCE_OWNERS = 57918 -const SKIP_MISSING_VIEWS = 57919 -const SKIP_MISSING_UDFS = 57920 -const SMALLINT = 57921 -const SMALLSERIAL = 57922 -const SNAPSHOT = 57923 -const SOME = 57924 -const SOURCE = 57925 -const SPLIT = 57926 -const SQL = 57927 -const SQLLOGIN = 57928 -const STABLE = 57929 -const START = 57930 -const STATE = 57931 -const STATEMENT = 57932 -const STATISTICS = 57933 -const STATUS = 57934 -const STDIN = 57935 -const STDOUT = 57936 -const STOP = 57937 -const STRAIGHT = 57938 -const STREAM = 57939 -const STRICT = 57940 -const STRING = 57941 -const STORAGE = 57942 -const STORE = 57943 -const STORED = 57944 -const STORING = 57945 -const SUBJECT = 57946 -const SUBSTRING = 57947 -const SUPER = 57948 -const SUPPORT = 57949 -const SURVIVE = 57950 -const SURVIVAL = 57951 -const SYMMETRIC = 57952 -const SYNTAX = 57953 -const SYSTEM = 57954 -const SQRT = 57955 -const SUBSCRIPTION = 57956 -const STATEMENTS = 57957 -const TABLE = 57958 -const TABLES = 57959 -const TABLESPACE = 57960 -const TEMP = 57961 -const TEMPLATE = 57962 -const TEMPORARY = 57963 -const TENANT = 57964 -const TENANT_NAME = 57965 -const TENANTS = 57966 -const TESTING_RELOCATE = 57967 -const TEXT = 57968 -const THEN = 57969 -const TIES = 57970 -const TIME = 57971 -const TIMETZ = 57972 -const TIMESTAMP = 57973 -const TIMESTAMPTZ = 57974 -const TO = 57975 -const THROTTLING = 57976 -const TRAILING = 57977 -const TRACE = 57978 -const TRANSACTION = 57979 -const TRANSACTIONS = 57980 -const TRANSFER = 57981 -const TRANSFORM = 57982 -const TREAT = 57983 -const TRIGGER = 57984 -const TRIGGERS = 57985 -const TRIM = 57986 -const TRUE = 57987 -const TRUNCATE = 57988 -const TRUSTED = 57989 -const TYPE = 57990 -const TYPES = 57991 -const TRACING = 57992 -const UNBOUNDED = 57993 -const UNCOMMITTED = 57994 -const UNIDIRECTIONAL = 57995 -const UNION = 57996 -const UNIQUE = 57997 -const UNKNOWN = 57998 -const UNLISTEN = 57999 -const UNLOGGED = 58000 -const UNSAFE_RESTORE_INCOMPATIBLE_VERSION = 58001 -const UNSPLIT = 58002 -const UPDATE = 58003 -const UPDATES_CLUSTER_MONITORING_METRICS = 58004 -const UPSERT = 58005 -const UNSET = 58006 -const UNTIL = 58007 -const USE = 58008 -const USER = 58009 -const USERS = 58010 -const USING = 58011 -const UUID = 58012 -const VALID = 58013 -const VALIDATE = 58014 -const VALUE = 58015 -const VALUES = 58016 -const VARBIT = 58017 -const VARCHAR = 58018 -const VARIADIC = 58019 -const VECTOR = 58020 -const VERIFY_BACKUP_TABLE_DATA = 58021 -const VIEW = 58022 -const VARIABLES = 58023 -const VARYING = 58024 -const VIEWACTIVITY = 58025 -const VIEWACTIVITYREDACTED = 58026 -const VIEWDEBUG = 58027 -const VIEWCLUSTERMETADATA = 58028 -const VIEWCLUSTERSETTING = 58029 -const VIRTUAL = 58030 -const VISIBLE = 58031 -const INVISIBLE = 58032 -const VISIBILITY = 58033 -const VOLATILE = 58034 -const VOTERS = 58035 -const VIRTUAL_CLUSTER_NAME = 58036 -const VIRTUAL_CLUSTER = 58037 -const WHEN = 58038 -const WHERE = 58039 -const WINDOW = 58040 -const WITH = 58041 -const WITHIN = 58042 -const WITHOUT = 58043 -const WORK = 58044 -const WRITE = 58045 -const YEAR = 58046 -const ZONE = 58047 -const NOT_LA = 58048 -const NULLS_LA = 58049 -const WITH_LA = 58050 -const AS_LA = 58051 -const GENERATED_ALWAYS = 58052 -const GENERATED_BY_DEFAULT = 58053 -const RESET_ALL = 58054 -const ROLE_ALL = 58055 -const USER_ALL = 58056 -const ON_LA = 58057 -const TENANT_ALL = 58058 -const CLUSTER_ALL = 58059 -const SET_TRACING = 58060 -const CONTAINED_BY = 58061 -const POSTFIXOP = 58062 -const INTERVAL_SIMPLE = 58063 -const UMINUS = 58064 -const HELPTOKEN = 58065 +const REVISION_HISTORY = 57866 +const REVOKE = 57867 +const RIGHT = 57868 +const ROLE = 57869 +const ROLES = 57870 +const ROLLBACK = 57871 +const ROLLUP = 57872 +const ROUTINES = 57873 +const ROW = 57874 +const ROWS = 57875 +const RSHIFT = 57876 +const RULE = 57877 +const RUNNING = 57878 +const SAVEPOINT = 57879 +const SCANS = 57880 +const SCATTER = 57881 +const SCHEDULE = 57882 +const SCHEDULES = 57883 +const SCROLL = 57884 +const SCHEMA = 57885 +const SCHEMA_ONLY = 57886 +const SCHEMAS = 57887 +const SCRUB = 57888 +const SEARCH = 57889 +const SECOND = 57890 +const SECONDARY = 57891 +const SECURITY = 57892 +const SELECT = 57893 +const SEQUENCE = 57894 +const SEQUENCES = 57895 +const SERIALIZABLE = 57896 +const SERVER = 57897 +const SERVICE = 57898 +const SESSION = 57899 +const SESSIONS = 57900 +const SESSION_USER = 57901 +const SET = 57902 +const SETOF = 57903 +const SETS = 57904 +const SETTING = 57905 +const SETTINGS = 57906 +const SHARE = 57907 +const SHARED = 57908 +const SHOW = 57909 +const SIMILAR = 57910 +const SIMPLE = 57911 +const SIZE = 57912 +const SKIP = 57913 +const SKIP_LOCALITIES_CHECK = 57914 +const SKIP_MISSING_FOREIGN_KEYS = 57915 +const SKIP_MISSING_SEQUENCES = 57916 +const SKIP_MISSING_SEQUENCE_OWNERS = 57917 +const SKIP_MISSING_VIEWS = 57918 +const SKIP_MISSING_UDFS = 57919 +const SMALLINT = 57920 +const SMALLSERIAL = 57921 +const SNAPSHOT = 57922 +const SOME = 57923 +const SOURCE = 57924 +const SPLIT = 57925 +const SQL = 57926 +const SQLLOGIN = 57927 +const STABLE = 57928 +const START = 57929 +const STATE = 57930 +const STATEMENT = 57931 +const STATISTICS = 57932 +const STATUS = 57933 +const STDIN = 57934 +const STDOUT = 57935 +const STOP = 57936 +const STRAIGHT = 57937 +const STREAM = 57938 +const STRICT = 57939 +const STRING = 57940 +const STORAGE = 57941 +const STORE = 57942 +const STORED = 57943 +const STORING = 57944 +const SUBJECT = 57945 +const SUBSTRING = 57946 +const SUPER = 57947 +const SUPPORT = 57948 +const SURVIVE = 57949 +const SURVIVAL = 57950 +const SYMMETRIC = 57951 +const SYNTAX = 57952 +const SYSTEM = 57953 +const SQRT = 57954 +const SUBSCRIPTION = 57955 +const STATEMENTS = 57956 +const TABLE = 57957 +const TABLES = 57958 +const TABLESPACE = 57959 +const TEMP = 57960 +const TEMPLATE = 57961 +const TEMPORARY = 57962 +const TENANT = 57963 +const TENANT_NAME = 57964 +const TENANTS = 57965 +const TESTING_RELOCATE = 57966 +const TEXT = 57967 +const THEN = 57968 +const TIES = 57969 +const TIME = 57970 +const TIMETZ = 57971 +const TIMESTAMP = 57972 +const TIMESTAMPTZ = 57973 +const TO = 57974 +const THROTTLING = 57975 +const TRAILING = 57976 +const TRACE = 57977 +const TRANSACTION = 57978 +const TRANSACTIONS = 57979 +const TRANSFER = 57980 +const TRANSFORM = 57981 +const TREAT = 57982 +const TRIGGER = 57983 +const TRIGGERS = 57984 +const TRIM = 57985 +const TRUE = 57986 +const TRUNCATE = 57987 +const TRUSTED = 57988 +const TYPE = 57989 +const TYPES = 57990 +const TRACING = 57991 +const UNBOUNDED = 57992 +const UNCOMMITTED = 57993 +const UNIDIRECTIONAL = 57994 +const UNION = 57995 +const UNIQUE = 57996 +const UNKNOWN = 57997 +const UNLISTEN = 57998 +const UNLOGGED = 57999 +const UNSAFE_RESTORE_INCOMPATIBLE_VERSION = 58000 +const UNSPLIT = 58001 +const UPDATE = 58002 +const UPDATES_CLUSTER_MONITORING_METRICS = 58003 +const UPSERT = 58004 +const UNSET = 58005 +const UNTIL = 58006 +const USE = 58007 +const USER = 58008 +const USERS = 58009 +const USING = 58010 +const UUID = 58011 +const VALID = 58012 +const VALIDATE = 58013 +const VALUE = 58014 +const VALUES = 58015 +const VARBIT = 58016 +const VARCHAR = 58017 +const VARIADIC = 58018 +const VECTOR = 58019 +const VERIFY_BACKUP_TABLE_DATA = 58020 +const VIEW = 58021 +const VARIABLES = 58022 +const VARYING = 58023 +const VIEWACTIVITY = 58024 +const VIEWACTIVITYREDACTED = 58025 +const VIEWCLUSTERSETTING = 58026 +const VIRTUAL = 58027 +const VISIBLE = 58028 +const INVISIBLE = 58029 +const VISIBILITY = 58030 +const VOLATILE = 58031 +const VOTERS = 58032 +const VIRTUAL_CLUSTER_NAME = 58033 +const VIRTUAL_CLUSTER = 58034 +const WHEN = 58035 +const WHERE = 58036 +const WINDOW = 58037 +const WITH = 58038 +const WITHIN = 58039 +const WITHOUT = 58040 +const WORK = 58041 +const WRITE = 58042 +const YEAR = 58043 +const ZONE = 58044 +const NOT_LA = 58045 +const NULLS_LA = 58046 +const WITH_LA = 58047 +const AS_LA = 58048 +const GENERATED_ALWAYS = 58049 +const GENERATED_BY_DEFAULT = 58050 +const RESET_ALL = 58051 +const ROLE_ALL = 58052 +const USER_ALL = 58053 +const ON_LA = 58054 +const TENANT_ALL = 58055 +const CLUSTER_ALL = 58056 +const SET_TRACING = 58057 +const CONTAINED_BY = 58058 +const POSTFIXOP = 58059 +const INTERVAL_SIMPLE = 58060 +const UMINUS = 58061 +const HELPTOKEN = 58062 diff --git a/pkg/sql/oidext/oidext.go b/pkg/sql/oidext/oidext.go index b629a94..e7bcc4f 100644 --- a/pkg/sql/oidext/oidext.go +++ b/pkg/sql/oidext/oidext.go @@ -31,6 +31,8 @@ const ( T__box2d = oid.Oid(90005) T_pgvector = oid.Oid(90006) T__pgvector = oid.Oid(90007) + T_citext = oid.Oid(90008) + T__citext = oid.Oid(90009) ) // OIDs in this block are not extensions of postgres, but are not supported in @@ -53,6 +55,8 @@ var ExtensionTypeName = map[oid.Oid]string{ T__pgvector: "_VECTOR", T_jsonpath: "JSONPATH", T__jsonpath: "_JSONPATH", + T_citext: "CITEXT", + T__citext: "_CITEXT", } // TypeName checks the name for a given type by first looking up oid.TypeName diff --git a/pkg/sql/parser/help_messages.go b/pkg/sql/parser/help_messages.go index f2c4944..ed5b4aa 100644 --- a/pkg/sql/parser/help_messages.go +++ b/pkg/sql/parser/help_messages.go @@ -4,20 +4,20 @@ package parser var helpMessages = map[string]HelpMessageBody{ - //line sql.y: 1925 + //line sql.y: 1926 `ALTER`: { - //line sql.y: 1926 - Category: hGroup, //line sql.y: 1927 + Category: hGroup, + //line sql.y: 1928 Text: `ALTER TABLE, ALTER INDEX, ALTER VIEW, ALTER SEQUENCE, ALTER DATABASE, ALTER USER, ALTER ROLE, ALTER DEFAULT PRIVILEGES `, }, - //line sql.y: 1954 + //line sql.y: 1955 `ALTER TABLE`: { ShortDescription: `change the definition of a table`, - //line sql.y: 1955 - Category: hDDL, //line sql.y: 1956 + Category: hDDL, + //line sql.y: 1957 Text: ` ALTER TABLE [IF EXISTS] [, ...] @@ -67,16 +67,16 @@ Zone configurations: { TO | = } `, - //line sql.y: 2004 + //line sql.y: 2005 SeeAlso: `WEBDOCS/alter-table.html `, }, - //line sql.y: 2020 + //line sql.y: 2022 `ALTER PARTITION`: { ShortDescription: `apply zone configurations to a partition`, - //line sql.y: 2021 + //line sql.y: 2023 Category: hDDL, - //line sql.y: 2022 + //line sql.y: 2024 Text: ` ALTER PARTITION @@ -97,30 +97,30 @@ Zone configurations: { TO | = } `, - //line sql.y: 2041 + //line sql.y: 2043 SeeAlso: `WEBDOCS/alter-partition.html `, }, - //line sql.y: 2046 + //line sql.y: 2048 `ALTER VIEW`: { ShortDescription: `change the definition of a view`, - //line sql.y: 2047 + //line sql.y: 2049 Category: hDDL, - //line sql.y: 2048 + //line sql.y: 2050 Text: ` ALTER [MATERIALIZED] VIEW [IF EXISTS] RENAME TO ALTER [MATERIALIZED] VIEW [IF EXISTS] SET SCHEMA `, - //line sql.y: 2051 + //line sql.y: 2053 SeeAlso: `WEBDOCS/alter-view.html `, }, - //line sql.y: 2060 + //line sql.y: 2062 `ALTER SEQUENCE`: { ShortDescription: `change the definition of a sequence`, - //line sql.y: 2061 + //line sql.y: 2063 Category: hDDL, - //line sql.y: 2062 + //line sql.y: 2064 Text: ` ALTER SEQUENCE [IF EXISTS] [AS ] @@ -134,12 +134,12 @@ ALTER SEQUENCE [IF EXISTS] RENAME TO ALTER SEQUENCE [IF EXISTS] SET SCHEMA `, }, - //line sql.y: 2091 + //line sql.y: 2093 `ALTER DATABASE`: { ShortDescription: `change the definition of a database`, - //line sql.y: 2092 + //line sql.y: 2094 Category: hDDL, - //line sql.y: 2093 + //line sql.y: 2095 Text: ` ALTER DATABASE RENAME TO ALTER DATABASE CONFIGURE ZONE @@ -154,16 +154,16 @@ ALTER DATABASE SET var { TO | = } { value | DEFAULT } ALTER DATABASE RESET { var | ALL } ALTER DATABASE ALTER LOCALITY { GLOBAL | REGIONAL [IN ] } CONFIGURE ZONE `, - //line sql.y: 2106 + //line sql.y: 2108 SeeAlso: `WEBDOCS/alter-database.html `, }, - //line sql.y: 2125 + //line sql.y: 2127 `ALTER FUNCTION`: { ShortDescription: `change the definition of a function`, - //line sql.y: 2126 + //line sql.y: 2128 Category: hDDL, - //line sql.y: 2127 + //line sql.y: 2129 Text: ` ALTER FUNCTION name [ ( [ [ argmode ] [ argname ] argtype [, ...] ] ) ] action [ ... ] [ RESTRICT ] @@ -181,16 +181,16 @@ where action is one of: [ NOT ] LEAKPROOF [ EXTERNAL ] SECURITY { INVOKER | DEFINER } `, - //line sql.y: 2143 + //line sql.y: 2145 SeeAlso: `WEBDOCS/alter-function.html `, }, - //line sql.y: 2152 + //line sql.y: 2154 `ALTER PROCEDURE`: { ShortDescription: `change the definition of a procedure`, - //line sql.y: 2153 + //line sql.y: 2155 Category: hDDL, - //line sql.y: 2154 + //line sql.y: 2156 Text: ` ALTER PROCEDURE name [ ( [ [ argmode ] [ argname ] argtype [, ...] ] ) ] RENAME TO new_name @@ -200,16 +200,16 @@ ALTER PROCEDURE name [ ( [ [ argmode ] [ argname ] argtype [, ...] ] ) ] SET SCHEMA new_schema `, - //line sql.y: 2162 + //line sql.y: 2164 SeeAlso: `WEBDOCS/alter-procedure.html `, }, - //line sql.y: 2356 + //line sql.y: 2358 `ALTER RANGE`: { ShortDescription: `change the parameters of a range`, - //line sql.y: 2357 + //line sql.y: 2359 Category: hDDL, - //line sql.y: 2358 + //line sql.y: 2360 Text: ` ALTER RANGE @@ -227,16 +227,16 @@ Zone configurations: { TO | = } `, - //line sql.y: 2374 + //line sql.y: 2376 SeeAlso: `ALTER TABLE `, }, - //line sql.y: 2380 + //line sql.y: 2382 `ALTER INDEX`: { ShortDescription: `change the definition of an index`, - //line sql.y: 2381 + //line sql.y: 2383 Category: hDDL, - //line sql.y: 2382 + //line sql.y: 2384 Text: ` ALTER INDEX [IF EXISTS] @@ -256,16 +256,16 @@ Zone configurations: { TO | = } `, - //line sql.y: 2400 + //line sql.y: 2402 SeeAlso: `WEBDOCS/alter-index.html `, }, - //line sql.y: 3187 + //line sql.y: 3193 `ALTER TYPE`: { ShortDescription: `change the definition of a type.`, - //line sql.y: 3188 + //line sql.y: 3194 Category: hDDL, - //line sql.y: 3189 + //line sql.y: 3195 Text: `ALTER TYPE Commands: @@ -283,26 +283,26 @@ Attribute action: ALTER ATTRIBUTE [ SET DATA ] TYPE [ COLLATE ] [ CASCADE | RESTRICT ] `, - //line sql.y: 3205 + //line sql.y: 3211 SeeAlso: `WEBDOCS/alter-type.html `, }, - //line sql.y: 3354 + //line sql.y: 3360 `REFRESH`: { ShortDescription: `recalculate a materialized view`, - //line sql.y: 3355 + //line sql.y: 3361 Category: hMisc, - //line sql.y: 3356 + //line sql.y: 3362 Text: ` REFRESH MATERIALIZED VIEW [CONCURRENTLY] view_name [AS OF SYSTEM TIME >] [WITH [NO] DATA] `, }, - //line sql.y: 3384 + //line sql.y: 3390 `BACKUP`: { ShortDescription: `back up data to external storage`, - //line sql.y: 3385 + //line sql.y: 3391 Category: hCCL, - //line sql.y: 3386 + //line sql.y: 3392 Text: ` Create a full backup @@ -339,16 +339,16 @@ Options: include_all_virtual_clusters: enable backups of all virtual clusters during a cluster backup `, - //line sql.y: 3421 + //line sql.y: 3427 SeeAlso: `RESTORE, WEBDOCS/backup.html `, }, - //line sql.y: 3559 + //line sql.y: 3565 `CREATE SCHEDULE FOR BACKUP`: { ShortDescription: `backup data periodically`, - //line sql.y: 3560 + //line sql.y: 3566 Category: hCCL, - //line sql.y: 3561 + //line sql.y: 3567 Text: ` CREATE SCHEDULE [IF NOT EXISTS] [] @@ -420,16 +420,16 @@ FULL BACKUP : objects. `, - //line sql.y: 3631 + //line sql.y: 3637 SeeAlso: `BACKUP `, }, - //line sql.y: 3649 + //line sql.y: 3655 `ALTER BACKUP SCHEDULE`: { ShortDescription: `alter an existing backup schedule`, - //line sql.y: 3650 + //line sql.y: 3656 Category: hCCL, - //line sql.y: 3651 + //line sql.y: 3657 Text: ` ALTER BACKUP SCHEDULE [, ...] @@ -443,16 +443,16 @@ Commands: See CREATE SCHEDULE FOR BACKUP for detailed option descriptions. `, - //line sql.y: 3663 + //line sql.y: 3669 SeeAlso: `CREATE SCHEDULE FOR BACKUP `, }, - //line sql.y: 3811 + //line sql.y: 3817 `CREATE EXTERNAL CONNECTION`: { ShortDescription: `create a new external connection`, - //line sql.y: 3812 + //line sql.y: 3818 Category: hMisc, - //line sql.y: 3813 + //line sql.y: 3819 Text: ` CREATE EXTERNAL CONNECTION [IF NOT EXISTS] AS @@ -463,12 +463,12 @@ Endpoint: Endpoint of the resource that the external connection represents. `, }, - //line sql.y: 3831 + //line sql.y: 3837 `CHECK EXTERNAL CONNECTION`: { ShortDescription: `check the status of an external connection`, - //line sql.y: 3832 + //line sql.y: 3838 Category: hMisc, - //line sql.y: 3833 + //line sql.y: 3839 Text: ` CREATE EXTERNAL CONNECTION [WITH ] @@ -476,12 +476,12 @@ Uri: Uri for the external connection. `, }, - //line sql.y: 3889 + //line sql.y: 3895 `DROP EXTERNAL CONNECTION`: { ShortDescription: `drop an existing external connection`, - //line sql.y: 3890 + //line sql.y: 3896 Category: hMisc, - //line sql.y: 3891 + //line sql.y: 3897 Text: ` DROP EXTERNAL CONNECTION @@ -489,12 +489,12 @@ Name: Unique name for this external connection. `, }, - //line sql.y: 3905 + //line sql.y: 3911 `RESTORE`: { ShortDescription: `restore data from external storage`, - //line sql.y: 3906 + //line sql.y: 3912 Category: hCCL, - //line sql.y: 3907 + //line sql.y: 3913 Text: ` RESTORE FROM [ AS OF SYSTEM TIME ] @@ -525,45 +525,31 @@ Options: new_db_name: renames the restored database. only applies to database restores include_all_virtual_clusters: enable backups of all virtual clusters during a cluster backup `, - //line sql.y: 3936 + //line sql.y: 3942 SeeAlso: `BACKUP, WEBDOCS/restore.html `, }, - //line sql.y: 4134 + //line sql.y: 4140 `IMPORT`: { ShortDescription: `load data from file in a distributed manner`, - //line sql.y: 4135 + //line sql.y: 4141 Category: hCCL, - //line sql.y: 4136 + //line sql.y: 4142 Text: ` --- Import both schema and table data: -IMPORT [ TABLE FROM ] - - [ WITH