diff --git a/modules/ROOT/pages/changelogs.adoc b/modules/ROOT/pages/changelogs.adoc index 5c152349..3f37fee2 100644 --- a/modules/ROOT/pages/changelogs.adoc +++ b/modules/ROOT/pages/changelogs.adoc @@ -3,15 +3,51 @@ == Neo4j 2025.01 **New:** -[source, status codes, role="noheader"] ------ -Neo.ClientNotification.Cluster.ServerNotAvailable -Neo.ClientNotification.Cluster.ServerCatchingUp -Neo.ClientNotification.Cluster.ServerFailed -Neo.ClientNotification.Cluster.ServerCaughtUp ------ -Starting from 2025.01, when using Cypher25, queries using `WAIT` return the notifications listed above instead of result rows. -The behaviour for Cypher5 remains unchanged. +[options="header", cols="<1m,<1"] +|=== +| GQLSTATUS +| Neo4j code + +| 01N80 +| Neo.ClientNotification.Cluster.ServerFailed + +| 01N81 +| Neo.ClientNotification.Cluster.ServerCatchingUp + +| 01N82 +| Neo.ClientNotification.Cluster.ServerNotAvailable + +| 03N85 +| Neo.ClientNotification.Cluster.ServerCaughtUp + +|=== + + +//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. + +== 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 @@ -22,14 +58,31 @@ For more information, see link:https://neo4j.com/docs/operations-manual/current/ **New:** -[source, status codes, role="noheader"] ------ -Neo.ClientNotification.Statement.RedundantOptionalProcedure -Neo.ClientNotification.Statement.RedundantOptionalSubquery -Neo.ClientNotification.Security.AuthProviderNotDefined -Neo.ClientNotification.Security.ExternalAuthNotEnabled -Neo.ClientNotification.Statement.AggregationSkippedNull ------ +[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 @@ -48,6 +101,7 @@ For more information, see xref:notifications/index.adoc#gqlstatus-notification-o Neo.ClientNotification.Cluster.RequestedTopologyMatchedCurrentTopology Neo.ClientNotification.Schema.IndexOrConstraintAlreadyExists Neo.ClientNotification.Schema.IndexOrConstraintDoesNotExist +Neo.ClientError.Statement.InvalidTargetDatabaseError ----- == Neo4j 5.15 @@ -80,12 +134,22 @@ The usage of `Neo.ClientNotification.Statement.RuntimeExperimental` has been rem [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:** @@ -96,6 +160,17 @@ 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:** @@ -103,11 +178,12 @@ Neo.ClientNotification.Security.ImpossibleRevokeCommand [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"] @@ -115,6 +191,16 @@ Neo.ClientNotification.Statement.RepeatedRelationshipReference Neo.ClientNotification.Statement.UnsatisfiableRelationshipTypeExpression ----- +== Neo4j 5.3 + +**New:** + +[source, status codes, role="noheader"] +----- +Neo.DatabaseError.Transaction.TransactionTerminationFailed +----- + + == Neo4j 5.0 **New:** @@ -164,6 +250,8 @@ Neo.ClientNotification.Statement.UnboundedVariableLengthPatternWarning ----- Neo.ClientError.Statement.UnsupportedAdministrationCommand Neo.DatabaseError.Transaction.LinkedTransactionError +Neo.TransientError.Transaction.LeaderSwitch +Neo.ClientError.Database.IllegalAliasChain ----- diff --git a/modules/ROOT/pages/errors/all-errors.adoc b/modules/ROOT/pages/errors/all-errors.adoc index 0f4b50a4..a3bb5ff9 100644 --- a/modules/ROOT/pages/errors/all-errors.adoc +++ b/modules/ROOT/pages/errors/all-errors.adoc @@ -145,6 +145,9 @@ If you want to drop the index, you must also drop the constraint. | Neo.ClientError.Schema.RepeatedRelationshipTypeInSchema | Unable to create an index or a constraint because the schema had a repeated relationship type. +| Neo.ClientError.Schema.TokenLengthError +| A token name, such as a label, relationship type or property key is too long + | Neo.ClientError.Schema.TokenNameError | An invalid name is used for a token (label, relationship type, property key). @@ -188,6 +191,9 @@ Please reconnect. | Neo.ClientError.Statement.ExternalResourceFailed | Access to an external resource failed. +| Neo.ClientError.Statement.InvalidTargetDatabaseError +| The specified database is not a valid target for this command. + | Neo.ClientError.Statement.NotSystemDatabaseError | This is an administration command and it should be executed against the `system` database. @@ -319,6 +325,10 @@ You could try increasing the stack size; for example to set the stack size to `2 There is not enough memory to perform the current task. Please try increasing `server.memory.off_heap.transaction_max_size` in the Neo4j configuration file (normally in _conf/neo4j.conf_ or, if you are using Neo4j Desktop, found through the user interface), and then restart the database. +| Neo.TransientError.Invalid.ResourceExhaustion +| The server has rejected this request as a resource is exhausted at the moment. +You can retry at a later time. For further details see server logs. + | Neo.TransientError.Request.NoThreadsAvailable | There are no available threads to serve this request at the moment. diff --git a/modules/ROOT/pages/notifications/all-notifications.adoc b/modules/ROOT/pages/notifications/all-notifications.adoc index b74cdcf5..dbcd1f48 100644 --- a/modules/ROOT/pages/notifications/all-notifications.adoc +++ b/modules/ROOT/pages/notifications/all-notifications.adoc @@ -3369,7 +3369,7 @@ Use `DATABASE *` without the parameter to revoke the privilege on all databases. ===== [#_neo_clientnotification_security_authprovidernotdefined] -=== AuthProviderNotDefined +=== The auth provider is not defined .Notification details [cols="<1s,<4"] @@ -3485,7 +3485,7 @@ If it is correct, make sure to add it as a known auth provider in one or both of [#_neo_clientnotification_security_externalauthnotenabled] -=== ExternalAuthNotEnabled +=== External auth for user is not enabled .Notification details [cols="<1s,<4"] @@ -3587,6 +3587,30 @@ Until enabled, the new external auth will be ignored, and current external auth ====== ===== +[role=label--new-5.26] +=== Query uses an insecure protocol + +.Notification details +[cols="<1s,<4"] +|=== +|Neo4j code +m|Neo.ClientNotification.Statement.InsecureProtocol +|Title +a|Query uses an insecure protocol +|Description +a|The query uses an insecure protocol. Please consider using 'https' instead. +|Category +m|SECURITY +|GQLSTATUS code +m|01N72 +|Status description +a|warn: insecure URL protocol. Query uses an insecure protocol. Consider using 'https' instead. +|Classification +m|SECURITY +|SeverityLevel +m|WARNING +|=== + [#_topology_notifications] == `TOPOLOGY` notifications @@ -4100,7 +4124,7 @@ Investigate the failing server using the provided message. [cols="<1s,<4"] |=== |Neo4j code -m|Neo.ClientNotification.Cluster.ServerCachingUp +m|Neo.ClientNotification.Cluster.ServerCatchingUp |Title a|Server is still catching up. |Description