-
Notifications
You must be signed in to change notification settings - Fork 36
Update the changelog page #415
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 6 commits
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
af02253
update the changelog page
renetapopova 3ba85b2
update the changelog
renetapopova 1e22829
Apply suggestion from @NataliaIvakina
renetapopova 400f0ae
Update modules/ROOT/pages/changelogs.adoc
renetapopova e55dcba
apply suggestions from review
renetapopova 3659ec9
update the use of error messages programmatically
renetapopova 668ce02
comment out the mention of _status_parameters field
renetapopova eee0078
remove the bullet
renetapopova 7150091
comment out the mention of _status_parameters field in the GQLSTATUS …
renetapopova File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,367 +1,32 @@ | ||
| :description: This page lists all changes to status codes per Neo4j version. | ||
| = Changes to status codes per Neo4j version | ||
| :description: This page lists changes to the error framework and deprecations. | ||
|
|
||
| == Neo4j 2025.11 | ||
| **New:** | ||
| [options="header", cols="<1m,<1"] | ||
| |=== | ||
| | GQLSTATUS | ||
| | Neo4j code | ||
| = Changes and deprecations | ||
|
|
||
| | 01N83 | ||
| | Neo.ClientNotification.Request.UnsupportedType | ||
| == 2025.05 | ||
|
|
||
| |=== | ||
| Starting from 2025.05, the `failureReason` in the JSON template of the query log, is deprecated and switched off by default. | ||
| Use the `errorInfo` entry instead. | ||
|
|
||
| == Neo4j 2025.01 | ||
| **New:** | ||
| [options="header", cols="<1m,<1"] | ||
| |=== | ||
| | GQLSTATUS | ||
| | Neo4j code | ||
| For more information about `errorInfo`, refer to link:https://neo4j.com/docs/operations-manual/current/monitoring/logging/#gql-error-information[Operations manual -> Logging -> GQL error information]. | ||
|
|
||
| | 01N80 | ||
| | Neo.ClientNotification.Cluster.ServerFailed | ||
| == 2025.04 | ||
|
|
||
| | 01N81 | ||
| | Neo.ClientNotification.Cluster.ServerCatchingUp | ||
| Using the error messages programmatically is deprecated and might change in a future release. | ||
| Therefore, parsing the error messages or the status descriptions and incorporating them into scripts is not recommended. | ||
| If you need to handle errors programmatically, please use the GQLSTATUS error codes, for example, `22NC5`. | ||
|
|
||
| | 01N82 | ||
| | Neo.ClientNotification.Cluster.ServerNotAvailable | ||
| == 2025.01 | ||
|
|
||
| | 03N85 | ||
| | Neo.ClientNotification.Cluster.ServerCaughtUp | ||
| * The diagnostic record also contains a `_status_parameters` field, which represents a map that contains all variable parts of the status description, such as labels, database names, Cypher clauses, etc. | ||
| This field is used to provide more detailed information about the error. | ||
renetapopova marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| |=== | ||
| * A new JSON template is available for the query log, which is the default set in _server_logs.xml_. + | ||
| For more details, see the link:https://neo4j.com/docs/operations-manual/current/monitoring/logging/#_json_format_log_entries[Operations manual -> Monitoring -> Logging]. | ||
|
|
||
|
|
||
| //Starting from 2025.01, when using Cypher 25, queries using `WAIT` return the notifications listed above instead of result rows. | ||
| //The behaviour for Cypher 5 remains unchanged. | ||
| ifndef::backend-pdf[] | ||
| [discrete.glossary] | ||
| == Glossary | ||
|
|
||
| == Neo4j 5.26 | ||
|
|
||
| **New:** | ||
|
|
||
| [options="header", cols="<1m,<1"] | ||
| |=== | ||
|
|
||
| | GQLSTATUS | ||
| | Neo4j code | ||
|
|
||
| | 01N72 | ||
| | Neo.ClientNotification.Statement.InsecureProtocol | ||
|
|
||
| | 42I50 | ||
| | Neo.ClientError.Schema.TokenLengthError | ||
|
|
||
| |=== | ||
|
|
||
| Starting from 5.26, Neo4j errors sent over drivers include new fields, | ||
| such as GQLSTATUS code, StatusDescription, and DiagnosticRecord. | ||
| For more information, see xref:errors/index.adoc#gqlstatus-error-object[GQL-status error object]. | ||
|
|
||
|
|
||
| == Neo4j 5.25 | ||
|
|
||
| Starting from 5.25, the query log includes the GQL error information under the JSON object `errorInfo`. | ||
| For more information, see link:https://neo4j.com/docs/operations-manual/current/monitoring/logging/#gql-error-information[Operations Manual -> GQL error information]. | ||
|
|
||
Lojjs marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| == Neo4j 5.24 | ||
|
|
||
| **New:** | ||
|
|
||
| [options="header", cols="<1m,<1"] | ||
| |=== | ||
|
|
||
| | GQLSTATUS | ||
| | Neo4j code | ||
|
|
||
| | 00N72 | ||
| | Neo.ClientNotification.Security.AuthProviderNotDefined | ||
|
|
||
| | 01G11 | ||
| | Neo.ClientNotification.Statement.AggregationSkippedNull | ||
|
|
||
| | 01N71 | ||
| | Neo.ClientNotification.Security.ExternalAuthNotEnabled | ||
|
|
||
| | 03N61 | ||
| | Neo.ClientNotification.Statement.RedundantOptionalProcedure | ||
|
|
||
| | 03N62 | ||
| | Neo.ClientNotification.Statement.RedundantOptionalSubquery | ||
|
|
||
| | N/A | ||
| | Neo.TransientError.Invalid.ResourceExhaustion | ||
|
|
||
| |=== | ||
|
|
||
| == Neo4j 5.23 | ||
|
|
||
| From version 5.23, Neo4j has a new GqlStatusObject API in addition to the existing Notification API. | ||
|
|
||
| The GqlStatusObject API provides information about the status of a Cypher query or command execution in compliance with the GQL standard. | ||
| It includes GQLSTATUS code, StatusDescription, and DiagnosticRecord. | ||
| For more information, see xref:notifications/index.adoc#gqlstatus-notification-object[GQL-status notification object]. | ||
Lojjs marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| == Neo4j 5.17 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Cluster.RequestedTopologyMatchedCurrentTopology | ||
| Neo.ClientNotification.Schema.IndexOrConstraintAlreadyExists | ||
| Neo.ClientNotification.Schema.IndexOrConstraintDoesNotExist | ||
| Neo.ClientError.Statement.InvalidTargetDatabaseError | ||
| ----- | ||
|
|
||
| == Neo4j 5.15 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Cluster.CordonedServersExistedDuringAllocation | ||
| ----- | ||
|
|
||
| == Neo4j 5.14 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Cluster.NoDatabasesReallocated | ||
| Neo.ClientNotification.Statement.SideEffectVisibility | ||
| ----- | ||
|
|
||
| **Changed** | ||
|
|
||
| The usage of `Neo.ClientNotification.Statement.RuntimeExperimental` has been removed. | ||
|
|
||
| == Neo4j 5.13 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Cluster.ServerAlreadyEnabled | ||
| Neo.ClientNotification.Cluster.ServerAlreadyCordoned | ||
| Neo.ClientError.ChangeDataCapture.InvalidIdentifier | ||
| Neo.TransientError.ChangeDataCapture.FutureIdentifier | ||
| Neo.DatabaseError.ChangeDataCapture.Disabled | ||
| Neo.DatabaseError.ChangeDataCapture.ScanFailure | ||
| ----- | ||
|
|
||
| == Neo4j 5.10 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.TransientError.Transaction.QueryExecutionFailedOnTransaction | ||
| ----- | ||
|
|
||
| == Neo4j 5.9 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Security.CommandHasNoEffect | ||
| Neo.ClientNotification.Security.ImpossibleRevokeCommand | ||
| ----- | ||
|
|
||
| == Neo4j 5.7 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.Transacton.TransactionTimedOutClientConfiguration | ||
| Neo.ClientError.Routing.DbmsInPanic | ||
| Neo.ClientError.Routing.RoutingFailed | ||
| ----- | ||
|
|
||
| == Neo4j 5.5 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Statement.RepeatedRelationshipReference | ||
| Neo.ClientError.Statement.RemoteExecutionClientError | ||
| Neo.TransientError.Statement.RemoteExecutionTransientError | ||
| ----- | ||
|
|
||
| == Neo4j 5.4 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Statement.UnsatisfiableRelationshipTypeExpression | ||
| ----- | ||
|
|
||
| == Neo4j 5.3 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.DatabaseError.Transaction.TransactionTerminationFailed | ||
| ----- | ||
|
|
||
|
|
||
| == Neo4j 5.0 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Database.HomeDatabaseNotFound | ||
| Neo.ClientNotification.Request.DeprecatedFormat | ||
| Neo.ClientNotification.Schema.HintedIndexNotFound | ||
| Neo.ClientNotification.Statement.CartesianProduct | ||
| Neo.ClientNotification.Statement.CodeGenerationFailed | ||
| Neo.ClientNotification.Statement.DynamicProperty | ||
| Neo.ClientNotification.Statement.EagerOperator | ||
| Neo.ClientNotification.Statement.ExhaustiveShortestPath | ||
| Neo.ClientNotification.Statement.NoApplicableIndex | ||
| Neo.ClientNotification.Statement.RuntimeExperimental | ||
| Neo.ClientNotification.Statement.SubqueryVariableShadowing | ||
| Neo.ClientNotification.Statement.UnboundedVariableLengthPattern | ||
| Neo.ClientNotification.Statement.ParameterNotProvided | ||
| Neo.ClientError.Statement.UnsupportedOperationError | ||
|
|
||
| ----- | ||
|
|
||
| **Removed:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.Statement.CodeGenerationFailed | ||
| Neo.TransientError.Transaction.TransientTransactionFailure | ||
| Neo.ClientNotification.Statement.CartesianProductWarning | ||
| Neo.ClientNotification.Statement.DynamicPropertyWarning | ||
| Neo.ClientNotification.Statement.EagerOperatorWarning | ||
| Neo.ClientNotification.Statement.ExhaustiveShortestPathWarning | ||
| Neo.ClientNotification.Statement.ExperimentalFeature | ||
| Neo.ClientNotification.Statement.MissingAlias | ||
| Neo.ClientNotification.Statement.NoApplicableIndexWarning | ||
| Neo.ClientNotification.Statement.SubqueryVariableShadowingWarning | ||
| Neo.ClientNotification.Statement.UnboundedVariableLengthPatternWarning | ||
|
|
||
| ----- | ||
|
|
||
| == Neo4j 4.4 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.Statement.UnsupportedAdministrationCommand | ||
| Neo.DatabaseError.Transaction.LinkedTransactionError | ||
| Neo.TransientError.Transaction.LeaderSwitch | ||
| Neo.ClientError.Database.IllegalAliasChain | ||
| ----- | ||
|
|
||
|
|
||
| == Neo4j 4.3 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.General.UpgradeRequired | ||
| Neo.TransientError.Statement.ExecutionTimeout | ||
| ----- | ||
|
|
||
|
|
||
| == Neo4j 4.2 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientNotification.Statement.MissingAlias | ||
| Neo.ClientNotification.Statement.SubqueryVariableShadowingWarning | ||
| Neo.TransientError.Transaction.TransientTransactionFailure | ||
| ----- | ||
|
|
||
| == Neo4j 4.1 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.Cluster.Routing | ||
| Neo.ClientError.General.TransactionOutOfMemoryError | ||
| Neo.ClientError.Statement.AccessMode | ||
| Neo.DatabaseError.Statement.RemoteExecutionFailed | ||
| Neo.TransientError.General.MemoryPoolOutOfMemoryError | ||
| ----- | ||
|
|
||
| **Removed:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.Cluster.TransactionSizeExceedsLimit | ||
| Neo.DatabaseError.Cluster.SerializationFailure | ||
| Neo.TransientError.General.TransactionOutOfMemoryError | ||
| ----- | ||
|
|
||
| == Neo4j 4.0 | ||
|
|
||
| **New:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.Cluster.TransactionSizeExceedsLimit | ||
| Neo.ClientError.Database.DatabaseNotFound | ||
| Neo.ClientError.Database.ExistingDatabaseFound | ||
| Neo.ClientError.Fabric.AccessMode | ||
| Neo.ClientError.Schema.ConstraintViolation | ||
| Neo.ClientError.Schema.ConstraintWithNameAlreadyExists | ||
| Neo.ClientError.Schema.EquivalentSchemaRuleAlreadyExists | ||
| Neo.ClientError.Schema.IndexMultipleFound | ||
| Neo.ClientError.Schema.IndexWithNameAlreadyExists | ||
| Neo.ClientError.Statement.NotSystemDatabaseError | ||
| Neo.ClientError.Statement.RuntimeUnsupportedError | ||
| Neo.ClientError.Transaction.InvalidBookmarkMixture | ||
| Neo.DatabaseError.Cluster.SerializationFailure | ||
| Neo.DatabaseError.Database.DatabaseLimitReached | ||
| Neo.DatabaseError.Database.UnableToStartDatabase | ||
| Neo.DatabaseError.Database.Unknown | ||
| Neo.DatabaseError.Fabric.RemoteExecutionFailed | ||
| Neo.DatabaseError.Schema.TokenLimitReached | ||
| Neo.DatabaseError.Statement.CodeGenerationFailed | ||
| Neo.TransientError.Database.DatabaseUnavailable | ||
| Neo.TransientError.General.TransactionMemoryLimit | ||
| Neo.TransientError.General.TransactionOutOfMemoryError | ||
| Neo.TransientError.Transaction.BookmarkTimeout | ||
| Neo.TransientError.Transaction.LeaseExpired | ||
| Neo.TransientError.Transaction.MaximumTransactionLimitReached | ||
| ----- | ||
|
|
||
| **Removed:** | ||
|
|
||
| [source, status codes, role="noheader"] | ||
| ----- | ||
| Neo.ClientError.LegacyIndex.LegacyIndexNotFound | ||
| Neo.ClientError.Request.TransactionRequired | ||
| Neo.ClientError.Schema.ConstraintVerificationFailed | ||
| Neo.ClientError.Security.EncryptionRequired | ||
| Neo.ClientError.Statement.LabelNotFound | ||
| Neo.ClientNotification.Statement.CreateUniqueUnavailableWarning | ||
| Neo.ClientNotification.Statement.JoinHintUnsupportedWarning | ||
| Neo.ClientNotification.Statement.PlannerUnavailableWarning | ||
| Neo.ClientNotification.Statement.PlannerUnsupportedWarning | ||
| Neo.DatabaseError.Schema.LabelLimitReached | ||
| Neo.TransientError.Cluster.NoLeaderAvailable | ||
| Neo.TransientError.General.DatabaseUnavailable | ||
| Neo.TransientError.Network.CommunicationError | ||
| Neo.TransientError.Schema.SchemaModifiedConcurrently | ||
| Neo.TransientError.Transaction.InstanceStateChanged | ||
| Neo.TransientError.Transaction.LockSessionExpired | ||
| ----- | ||
| include::partial$glossary.adoc[] | ||
| endif::[] | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.