diff --git a/.github/workflows/docs-pr-checks.yml b/.github/workflows/docs-pr-checks.yml index 2ec36bde..5d30dc95 100644 --- a/.github/workflows/docs-pr-checks.yml +++ b/.github/workflows/docs-pr-checks.yml @@ -5,6 +5,7 @@ on: pull_request: branches: - "dev" + - "main" - "5.x" - "4.[0-9]" - "gqlstatus-errors" diff --git a/.github/workflows/docs-publish.yml b/.github/workflows/docs-publish.yml index 36e4e76f..05f8621a 100644 --- a/.github/workflows/docs-publish.yml +++ b/.github/workflows/docs-publish.yml @@ -5,6 +5,7 @@ on: push: branches: - 'dev' + - 'main' - '5.x' workflow_dispatch: # schedule: @@ -45,9 +46,9 @@ jobs: event-type: ${{ github.event.repository.name }} client-payload: |- { - "org": "${{ github.repository_owner }}", - "repo": "${{ github.event.repository.name }}", - "run_id": "${{ github.run_id }}", + "org": "${{ github.repository_owner }}", + "repo": "${{ github.event.repository.name }}", + "run_id": "${{ github.run_id }}", "branch": "${{ github.ref_name }}", "args": "--dryrun", "publish_env": "${{ env.PUBLISH_TO }}", diff --git a/.github/workflows/docs-teardown.yml b/.github/workflows/docs-teardown.yml index 47d24a3a..915ba712 100644 --- a/.github/workflows/docs-teardown.yml +++ b/.github/workflows/docs-teardown.yml @@ -5,6 +5,7 @@ on: pull_request_target: branches: - "dev" + - "main" - "5.x" - "4.[0-9]" - "gqlstatus-errors" diff --git a/antora.yml b/antora.yml index 14aa666b..33cb13c6 100644 --- a/antora.yml +++ b/antora.yml @@ -1,12 +1,12 @@ name: status-codes title: Status Codes for Errors & Notifications -version: '2025.04' +version: '2025.05' start_page: ROOT:index.adoc nav: - modules/ROOT/content-nav.adoc asciidoc: attributes: page-origin-private: false - neo4j-version: '2025.04' - neo4j-version-exact: '2025.04.0' - neo4j-buildnumber: '2025.04' + neo4j-version: '2025.05' + neo4j-version-exact: '2025.05.0' + neo4j-buildnumber: '2025.05' diff --git a/modules/ROOT/content-nav.adoc b/modules/ROOT/content-nav.adoc index eea78640..c2213cdb 100644 --- a/modules/ROOT/content-nav.adoc +++ b/modules/ROOT/content-nav.adoc @@ -150,6 +150,7 @@ **** xref:errors/gql-errors/22NB6.adoc[] **** xref:errors/gql-errors/22NB7.adoc[] **** xref:errors/gql-errors/22NB8.adoc[] +**** xref:errors/gql-errors/22NB9.adoc[] *** xref:errors/gql-errors/index.adoc#invalid-transaction-state[Invalid transaction state] **** xref:errors/gql-errors/25G02.adoc[] **** xref:errors/gql-errors/25N01.adoc[] @@ -242,6 +243,14 @@ **** xref:errors/gql-errors/42I51.adoc[] **** xref:errors/gql-errors/42I52.adoc[] **** xref:errors/gql-errors/42I53.adoc[] +**** xref:errors/gql-errors/42I54.adoc[] +**** xref:errors/gql-errors/42I55.adoc[] +**** xref:errors/gql-errors/42I56.adoc[] +**** xref:errors/gql-errors/42I57.adoc[] +**** xref:errors/gql-errors/42I58.adoc[] +**** xref:errors/gql-errors/42I59.adoc[] +**** xref:errors/gql-errors/42I60.adoc[] +**** xref:errors/gql-errors/42I61.adoc[] **** xref:errors/gql-errors/42N00.adoc[] **** xref:errors/gql-errors/42N01.adoc[] **** xref:errors/gql-errors/42N02.adoc[] @@ -479,6 +488,8 @@ **** xref:errors/gql-errors/52N37.adoc[] **** xref:errors/gql-errors/52N38.adoc[] **** xref:errors/gql-errors/52N39.adoc[] +**** xref:errors/gql-errors/52N40.adoc[] +**** xref:errors/gql-errors/52N41.adoc[] **** xref:errors/gql-errors/52U00.adoc[] *** xref:errors/gql-errors/index.adoc#function-exceptions[Function exceptions] **** xref:errors/gql-errors/53N34.adoc[] diff --git a/modules/ROOT/pages/errors/gql-errors/22N90.adoc b/modules/ROOT/pages/errors/gql-errors/22N90.adoc index ecd22b83..a6397cff 100644 --- a/modules/ROOT/pages/errors/gql-errors/22N90.adoc +++ b/modules/ROOT/pages/errors/gql-errors/22N90.adoc @@ -1,7 +1,8 @@ +:page-role: changed-2025.05 = 22N90 == Status description -error: data exception - property type unsupported in constraint. `{ <> }` is not supported in property type constraints. +error: data exception - property type unsupported in constraint. `{ <> }` is not supported in property type constraints. ifndef::backend-pdf[] [discrete.glossary] diff --git a/modules/ROOT/pages/errors/gql-errors/22NB9.adoc b/modules/ROOT/pages/errors/gql-errors/22NB9.adoc new file mode 100644 index 00000000..171524d2 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/22NB9.adoc @@ -0,0 +1,33 @@ += 22NB9 + +== Status description + +error: data exception - invalid inner list type. Lists cannot have `{ <> }` as an inner type in this context. + +== Example scenario + +For example, try to create a property type constraint with a list of a union as property type: + +[source,cypher] +---- +CREATE CONSTRAINT myConstraint +FOR (n:Label) +REQUIRE n.prop IS :: LIST +---- + +You will receive an error with GQLSTATUS xref:errors/gql-errors/50N11.adoc[50N11]. +This error has a cause detailed in xref:errors/gql-errors/22N90.adoc[22N90], which also has a subsequent cause with GQLSTATUS 22NB9 and status description: + + +[source] +---- +error: data exception - invalid inner list type. Lists cannot have a union of types as an inner type in this context. +---- + + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/42I54.adoc b/modules/ROOT/pages/errors/gql-errors/42I54.adoc new file mode 100644 index 00000000..12868e3f --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I54.adoc @@ -0,0 +1,11 @@ += 42I54 + +== Status description +error: syntax error or access rule violation - invalid use of `INSERT`. `{ <> }` is not allowed in `INSERT`. Use `CREATE` or `{ <> }`. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] diff --git a/modules/ROOT/pages/errors/gql-errors/42I55.adoc b/modules/ROOT/pages/errors/gql-errors/42I55.adoc new file mode 100644 index 00000000..2d7d5685 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I55.adoc @@ -0,0 +1,11 @@ += 42I55 + +== Status description +error: syntax error or access rule violation - invalid use of dynamic label or type. Dynamic `{ <> }` using `$any()` are not allowed in `{ <> }`. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] diff --git a/modules/ROOT/pages/errors/gql-errors/42I56.adoc b/modules/ROOT/pages/errors/gql-errors/42I56.adoc new file mode 100644 index 00000000..5d5b07e4 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I56.adoc @@ -0,0 +1,11 @@ += 42I56 + +== Status description +error: syntax error or access rule violation - invalid relationship direction. Only directed relationships are supported in `{ <>}`. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] diff --git a/modules/ROOT/pages/errors/gql-errors/42I57.adoc b/modules/ROOT/pages/errors/gql-errors/42I57.adoc new file mode 100644 index 00000000..94cb92e5 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I57.adoc @@ -0,0 +1,11 @@ += 42I57 + +== Status description +error: syntax error or access rule violation - invalid query ending. `{<>}` cannot contain a query ending with `{<>}`. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/42I58.adoc b/modules/ROOT/pages/errors/gql-errors/42I58.adoc new file mode 100644 index 00000000..594e1fc3 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I58.adoc @@ -0,0 +1,11 @@ += 42I58 + +== Status description +error: syntax error or access rule violation - invalid entity reference. Entity, `{<>}`, cannot be created and referenced in the same clause. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/42I59.adoc b/modules/ROOT/pages/errors/gql-errors/42I59.adoc new file mode 100644 index 00000000..1ca1f149 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I59.adoc @@ -0,0 +1,11 @@ += 42I59 + +== Status description +error: syntax error or access rule violation - dynamic entity type not allowed. Dynamic label and types are only allowed in `{ <> }` clauses. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/42I60.adoc b/modules/ROOT/pages/errors/gql-errors/42I60.adoc new file mode 100644 index 00000000..3a16029d --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I60.adoc @@ -0,0 +1,11 @@ += 42I60 + +== Status description +error: syntax error or access rule violation - invalid glob escaping. Each part of the glob (a block of text up until a dot) must either be fully escaped or not escaped at all. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/42I61.adoc b/modules/ROOT/pages/errors/gql-errors/42I61.adoc new file mode 100644 index 00000000..15f287ba --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/42I61.adoc @@ -0,0 +1,11 @@ += 42I61 + +== Status description +error: syntax error or access rule violation - missing LOOKUP INDEX function name. Missing function name for the LOOKUP INDEX. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/42N11.adoc b/modules/ROOT/pages/errors/gql-errors/42N11.adoc index 1fa7ba92..9e16abb5 100644 --- a/modules/ROOT/pages/errors/gql-errors/42N11.adoc +++ b/modules/ROOT/pages/errors/gql-errors/42N11.adoc @@ -1,9 +1,9 @@ -:page-role: changed-2025.03 +:page-role: changed-2025.05 = 42N11 == Status description -error: syntax error or access rule violation - graph reference already exists. A graph reference with the name `{ <> }` already exists. +error: syntax error or access rule violation - graph reference already exists. A graph reference with the name `{ <> }` already exists. ifndef::backend-pdf[] [discrete.glossary] diff --git a/modules/ROOT/pages/errors/gql-errors/52N40.adoc b/modules/ROOT/pages/errors/gql-errors/52N40.adoc new file mode 100644 index 00000000..31e3a307 --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/52N40.adoc @@ -0,0 +1,13 @@ += 52N40 + + +== Status description +error: procedure exception - Reconciliation failed during writing the topology graph, transaction may not be committed. + + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/52N41.adoc b/modules/ROOT/pages/errors/gql-errors/52N41.adoc new file mode 100644 index 00000000..ffbf1add --- /dev/null +++ b/modules/ROOT/pages/errors/gql-errors/52N41.adoc @@ -0,0 +1,17 @@ += 52N41 + + +== Status description +error: procedure exception - The key value for `{ <> }` in the query string cannot be parsed when getting a routing table. + + +== Explanation + +This error occurs when trying to use a routing policy, but providing some invalid details on a routed request. Example fields include `policy` and `alias`. + +ifndef::backend-pdf[] +[discrete.glossary] +== Glossary + +include::partial$glossary.adoc[] +endif::[] \ No newline at end of file diff --git a/modules/ROOT/pages/errors/gql-errors/index.adoc b/modules/ROOT/pages/errors/gql-errors/index.adoc index 5ba8f5de..0f7cfcd9 100644 --- a/modules/ROOT/pages/errors/gql-errors/index.adoc +++ b/modules/ROOT/pages/errors/gql-errors/index.adoc @@ -1,4 +1,4 @@ -// This is an automatically generated file. Do not edit it directly. It is generated from the templates/gql-index-template.adoc file and should be edited there. +// THIS IS AN AUTOMATICALLY GENERATED FILE. DO NOT EDIT IT. THE STRUCTURE IS GENERATED FROM templates/gql-index-template.adoc AND THE CODES ARE POPULATED BY THE SCRIPTS LOCATED IN THE scripts/ FOLDER. :description: This section describes the GQLSTATUS errors that Neo4j can return, grouped by category, and an example of when they can occur. @@ -120,7 +120,7 @@ Status description:: error: connection exception - shard execution client error. [[data-exceptions]] == Data exceptions -Database exceptions occur when a client request contains the wrong format, types, or other unsupported input. +Data exceptions occur when a client request contains the wrong format, types, or other unsupported input. Some examples are data and constraint creation, which conflicts with existing constraints, properties of non-storable type, and spatial and temporal values with invalid components. === xref:errors/gql-errors/22000.adoc[22000] @@ -490,9 +490,10 @@ Status description:: error: data exception - not a valid CIDR IP. `{ <> } Status description:: error: data exception - new password cannot be the same as the old password. Expected the new password to be different from the old password. +[role=label--changed-2025.05] === xref:errors/gql-errors/22N90.adoc[22N90] -Status description:: error: data exception - property type unsupported in constraint. `{ <> }` is not supported in property type constraints. +Status description:: error: data exception - property type unsupported in constraint. `{ <> }` is not supported in property type constraints. === xref:errors/gql-errors/22N91.adoc[22N91] @@ -606,6 +607,10 @@ Status description:: error: data exception - element id unsupported on composite Status description:: error: data exception - invalid Neo4j type. `{ <> }` is not a recognized Neo4j type. +=== xref:errors/gql-errors/22NB9.adoc[22NB9] + +Status description:: error: data exception - invalid inner list type. Lists cannot have `{ <> }` as an inner type in this context. + [[invalid-transaction-state]] == Invalid transaction state @@ -985,6 +990,38 @@ Status description:: error: syntax error or access rule violation - no longer va Status description:: error: syntax error or access rule violation - unsupported coordinate type. Unknown coordinate type: `{ <> }`. +=== xref:errors/gql-errors/42I54.adoc[42I54] + +Status description:: error: syntax error or access rule violation - invalid use of `INSERT`. `{ <> }` is not allowed in `INSERT`. Use `CREATE` or `{ <> }`. + +=== xref:errors/gql-errors/42I55.adoc[42I55] + +Status description:: error: syntax error or access rule violation - invalid use of dynamic label or type. Dynamic `{ <> }` using `$any()` are not allowed in `{ <> }`. + +=== xref:errors/gql-errors/42I56.adoc[42I56] + +Status description:: error: syntax error or access rule violation - invalid relationship direction. Only directed relationships are supported in `{ <>}`. + +=== xref:errors/gql-errors/42I57.adoc[42I57] + +Status description:: error: syntax error or access rule violation - invalid query ending. `{<>}` cannot contain a query ending with `{<>}`. + +=== xref:errors/gql-errors/42I58.adoc[42I58] + +Status description:: error: syntax error or access rule violation - invalid entity reference. Entity, `{<>}`, cannot be created and referenced in the same clause. + +=== xref:errors/gql-errors/42I59.adoc[42I59] + +Status description:: error: syntax error or access rule violation - dynamic entity type not allowed. Dynamic label and types are only allowed in `{ <> }` clauses. + +=== xref:errors/gql-errors/42I60.adoc[42I60] + +Status description:: error: syntax error or access rule violation - invalid glob escaping. Each part of the glob (a block of text up until a dot) must either be fully escaped or not escaped at all. + +=== xref:errors/gql-errors/42I61.adoc[42I61] + +Status description:: error: syntax error or access rule violation - missing LOOKUP INDEX function name. Missing function name for the LOOKUP INDEX. + [role=label--changed-2025.03] === xref:errors/gql-errors/42N00.adoc[42N00] @@ -1039,10 +1076,10 @@ Status description:: error: syntax error or access rule violation - cannot repla Status description:: error: syntax error or access rule violation - no such role. A role with the name `{ <> }` was not found. Verify that the spelling is correct. -[role=label--changed-2025.03] +[role=label--changed-2025.05] === xref:errors/gql-errors/42N11.adoc[42N11] -Status description:: error: syntax error or access rule violation - graph reference already exists. A graph reference with the name `{ <> }` already exists. +Status description:: error: syntax error or access rule violation - graph reference already exists. A graph reference with the name `{ <> }` already exists. === xref:errors/gql-errors/42N12.adoc[42N12] @@ -1946,6 +1983,14 @@ Status description:: error: procedure exception - cdc start position not found. Status description:: error: procedure exception - cdc scanner inactive. The log scanner is no longer active. +=== xref:errors/gql-errors/52N40.adoc[52N40] + +Status description:: error: procedure exception - Reconciliation failed during writing the topology graph, transaction may not be committed. + +=== xref:errors/gql-errors/52N41.adoc[52N41] + +Status description:: error: procedure exception - The key value for `{ <> }` in the query string cannot be parsed when getting a routing table. + === xref:errors/gql-errors/52U00.adoc[52U00] Status description:: error: procedure exception - custom procedure execution error cause. Execution of the procedure `{ <> }` failed due to `{ <> }`: `{ <> }` diff --git a/modules/ROOT/pages/notifications/all-notifications.adoc b/modules/ROOT/pages/notifications/all-notifications.adoc index 7712c263..8953e9d3 100644 --- a/modules/ROOT/pages/notifications/all-notifications.adoc +++ b/modules/ROOT/pages/notifications/all-notifications.adoc @@ -1972,7 +1972,7 @@ Returned GQLSTATUS code:: Returned status description:: warn: feature deprecated with replacement. id is deprecated. -It is replaced by elementId or an application-generated id. +It is replaced by elementId or consider using an application-generated id. Suggestions for improvement:: Use the function `elementId()` instead. diff --git a/modules/ROOT/partials/glossary.adoc b/modules/ROOT/partials/glossary.adoc index 25b2ba76..9296009c 100644 --- a/modules/ROOT/partials/glossary.adoc +++ b/modules/ROOT/partials/glossary.adoc @@ -13,6 +13,7 @@ [[cause]]$cause:: Freeform description of what caused the error. [[cfgSetting]]$cfgSetting:: Configuration setting key, for example, `server.https.enabled`. [[clause]]$clause:: A Cypher clause, for example, `USE`, `MATCH`. +[[clauseList]]$clause:: A list of Cypher clauses, for example, `USE, MATCH`. [[cmd]]$cmd:: A Cypher command, for example, `DROP DATABASE`, `PROFILE`, `SHOW PROCEDURES`. [[component]]$component:: A component of something, for example, hours/minutes within a time, a subset input within the whole input, `TOPOLOGY` clause within the whole `CREATE/ALTER DB ... SET TOPOLOGY`, etc. // we need to change the parameter $component in 51N27 to `$feat` maybe. @@ -28,6 +29,7 @@ //To check with the clustering team about $countAllocs and $countSeeders. [[crs]]$crs:: Coordinate reference system, for example, `WGS84`. [[db]]$db:: Database name, for example, `myDb`. +[[dbList]]$dbList:: A list of database names. [[dim]]$dim:: Number representing index or point dimenionality. [[edition]]$edition:: Neo4j edition, for example, Community or Enterprise. [[endpointType]]$endpointType:: One of `start` or `end` of a relationship. @@ -123,6 +125,7 @@ [[tokenId]]$tokenId:: Token ID. [[tokenType]]$tokenType:: One of a label, a relationship type, or a property key. [[transactionId]]$transactionId:: The transaction ID of a running query. +[[typeDescription]]$typeDescription:: Freeform description of a type e.g. 'a list'. [[upper]]$upper:: The highest accepted number of a range. [[url]]$url:: A URL, for example, https://example.com. [[user]]$user:: A user name, for example, `neo4j`. diff --git a/modules/ROOT/templates/gql-index-template.adoc b/modules/ROOT/templates/gql-index-template.adoc index 8f56ab2c..3a921e50 100644 --- a/modules/ROOT/templates/gql-index-template.adoc +++ b/modules/ROOT/templates/gql-index-template.adoc @@ -24,7 +24,7 @@ Connection exceptions occur when the client (e.g. Browser/Bloom/Cypher Shell) is [[data-exceptions]] == Data exceptions -Database exceptions occur when a client request contains the wrong format, types, or other unsupported input. +Data exceptions occur when a client request contains the wrong format, types, or other unsupported input. Some examples are data and constraint creation, which conflicts with existing constraints, properties of non-storable type, and spatial and temporal values with invalid components. {codes_starting_with:'22'} diff --git a/scripts/generate-gql-error-index-from-template.py b/scripts/generate-gql-error-index-from-template.py index 4cae2ade..ea355918 100644 --- a/scripts/generate-gql-error-index-from-template.py +++ b/scripts/generate-gql-error-index-from-template.py @@ -140,7 +140,7 @@ def generate_from_template(template_file, errors_dir, output_file, include_descr # Write the result to the output file with open(output_file, 'w') as f: - f.write("// This is an automatically generated file. Do not edit it directly. It is generated from the templates/gql-index-template.adoc file and should be edited there.\n") + f.write("// THIS IS AN AUTOMATICALLY GENERATED FILE. DO NOT EDIT IT. THE STRUCTURE IS GENERATED FROM templates/gql-index-template.adoc AND THE CODES ARE POPULATED BY THE SCRIPTS LOCATED IN THE scripts/ FOLDER.\n") f.write(template_content) print(f'Generated index file at: {output_file}')