Skip to content

Commit 3c7f192

Browse files
authored
Merge branch 'dev' into kubernetes-backup-refactor
2 parents 5e3580b + 7e2472c commit 3c7f192

File tree

16 files changed

+135
-69
lines changed

16 files changed

+135
-69
lines changed

modules/ROOT/pages/backup-restore/inspect.adoc

Lines changed: 42 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,17 @@ The metadata contains the following information:
2929

3030
[source,role=noheader]
3131
----
32-
neo4j-admin backup inspect [-h] [--empty] [--expand-commands] [--latest-backup]
33-
[--latest-chain] [--show-metadata] [--verbose]
34-
[--additional-config=<file>] [--database=<database>]
35-
[--format=<value>] <backup-path>
32+
neo4j-admin backup inspect [-h] [--empty] [--expand-commands] [--latest-backup] [--latest-chain]
33+
[--verbose] [--additional-config=<file>] [--database=<database>] [--format=<value>]
34+
<backup-path>
3635
----
3736

37+
[NOTE]
38+
====
39+
Starting with Neo4j 2025.07, the backup metadata is always shown by default when using the `neo4j-admin backup inspect` command.
40+
If you are on a previous version of Neo4j, you must specify the `--show-metadata` option to see the backup metadata.
41+
====
42+
3843
=== Description
3944

4045
Command to read the backup metadata.
@@ -87,10 +92,6 @@ The `<backup-path>` parameter can also inspect backups stored in AWS S3 buckets,
8792
| List the full backup chain ending with the latest downloaded backup.
8893
| false
8994

90-
| --show-metadata
91-
| Show the backup metadata.
92-
| false
93-
9495
| --database=<database>
9596
| Name of the database to inspect.
9697
|
@@ -113,6 +114,12 @@ The `<backup-path>` parameter can also inspect backups stored in AWS S3 buckets,
113114
The `--latest-backup` and `--latest-chain` options cannot be used together.
114115
====
115116

117+
[NOTE]
118+
====
119+
Starting with Neo4j 2025.07, the `--show-metadata` option is deprecated and ignored.
120+
The backup metadata is always shown by default when using the `neo4j-admin backup inspect` command.
121+
However, if you are on a previous version of Neo4j, you must specify the `--show-metadata` option to see the backup metadata.
122+
====
116123

117124
[[aggregate-backup-example]]
118125
== Examples
@@ -140,7 +147,7 @@ The following command lists the backup files' names along with their respective
140147

141148
[source,shell]
142149
----
143-
bin/neo4j-admin backup inspect /backups --show-metadata --empty
150+
bin/neo4j-admin backup inspect /backups --empty
144151
----
145152

146153
The `--empty` option is used to include the empty backups.
@@ -163,13 +170,19 @@ Empty backups are used to record the backup history.
163170
| file:///backups/london-2024-10-07T16-03-51.backup | london | d4dae73c-dfef-4d28-88cd-fe6cc88ddca1 | 2024-10-07T16:03:51 | true | true | 1 | 5 | true |
164171
----
165172

173+
[NOTE]
174+
====
175+
Starting with Neo4j 2025.07, the backup metadata is always shown by default when using the `neo4j-admin backup inspect` command.
176+
If you are on a previous version of Neo4j, you must specify the `--show-metadata` option to see the backup metadata.
177+
====
178+
166179
=== Listing the latest backups
167180

168181
To list only the most recent backups performed for each database, use the `--latest-backup` option.
169182

170183
[source,shell]
171184
----
172-
bin/neo4j-admin backup inspect /backups --show-metadata --latest-backup
185+
bin/neo4j-admin backup inspect /backups --latest-backup
173186
----
174187

175188
.Example output
@@ -181,14 +194,20 @@ bin/neo4j-admin backup inspect /backups --show-metadata --latest-backup
181194
| file:///backups/london-2024-10-07T16-04-05.backup | london | d4dae73c-dfef-4d28-88cd-fe6cc88ddca1 | 2024-10-07T16:04:05 | false | true | 6 | 6 | false |
182195
----
183196

197+
[NOTE]
198+
====
199+
Starting with Neo4j 2025.07, the backup metadata is always shown by default when using the `neo4j-admin backup inspect` command.
200+
If you are on a previous version of Neo4j, you must specify the `--show-metadata` option to see the backup metadata.
201+
====
202+
184203
=== Inspecting backup chains
185204

186205
A backup chain corresponds to a sequence of one or more backup(s) logically connected by their transaction IDs.
187206
To inspect the backup chains of a given database, use the `--latest-chain` option and the `--database` option with the database whose backup chain you want to inspect:
188207

189208
[source,shell]
190209
----
191-
bin/neo4j-admin backup inspect /backups --show-metadata --latest-chain --database=london
210+
bin/neo4j-admin backup inspect /backups --latest-chain --database=london
192211
----
193212

194213
.Example output
@@ -206,14 +225,19 @@ The result returns a chain of size two:
206225
Those modifications are materialised by a sequence of transactions to apply.
207226
Its range is [6,6].
208227

228+
[NOTE]
229+
====
230+
Starting with Neo4j 2025.07, the backup metadata is always shown by default when using the `neo4j-admin backup inspect` command.
231+
If you are on a previous version of Neo4j, you must specify the `--show-metadata` option to see the backup metadata.
232+
====
209233

210234
=== Inspecting a backup chain ending with a specific backup
211235

212236
To inspect a backup chain ending with a specific backup, use the `--latest-chain` option as follows:
213237

214238
[source,shell]
215239
----
216-
bin/neo4j-admin backup inspect /backups/london-2024-10-07T16-04-05.backup --show-metadata --latest-chain
240+
bin/neo4j-admin backup inspect /backups/london-2024-10-07T16-04-05.backup --latest-chain
217241
----
218242

219243
.Example output
@@ -229,6 +253,12 @@ bin/neo4j-admin backup inspect /backups/london-2024-10-07T16-04-05.backup --sho
229253
In this case, the `--database` option is unnecessary because the database identifier is part of the metadata stored in the header of the backup file _london-2024-10-07T16-04-05.backup_.
230254
====
231255

256+
[NOTE]
257+
====
258+
Starting with Neo4j 2025.07, the backup metadata is always shown by default when using the `neo4j-admin backup inspect` command.
259+
If you are on a previous version of Neo4j, you must specify the `--show-metadata` option to see the backup metadata.
260+
====
261+
232262

233263

234264

modules/ROOT/pages/configuration/command-expansion.adoc

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,31 @@ Scripts and their syntax differ between operating systems.
4141

4242
== Enabling
4343

44-
The Neo4j startup script and the `neo4j` service can expand and execute the external commands by using the argument `--expand-commands`.
44+
To enable command expansion, you must add the `--expand-commands` argument to the Neo4j startup script or _neo4j.service_ file.
45+
46+
=== Starting Neo4j with command expansion
47+
48+
To start Neo4j with command expansion enabled, you can use the following command:
4549

4650
[source, shell]
4751
----
4852
bin/neo4j start --expand-commands
4953
----
5054

51-
If the startup script does not receive the `--expand-commands` argument, commands in the configuration file are treated as invalid settings.
55+
=== Enabling command expansion in Neo4j as a service
56+
57+
If you are using Neo4j as a service, you can enable command expansion by adding the `--expand-commands` argument to the _/etc/systemd/system/neo4j.service_  file.
58+
Otherwise, the commands in the configuration file are treated as invalid settings.
59+
60+
You must also add `Type=forking` under the `[Service]` section of _/etc/systemd/system/neo4j.service_ to allow for the command expansion.
61+
62+
[source]
63+
----
64+
[Service]
65+
Type=forking
66+
----
67+
68+
=== Security checks
5269

5370
Neo4j performs the following basic security checks on the _neo4j.conf_ file.
5471
If they fail, Neo4j does not evaluate the script commands in _neo4j.conf_, and the Neo4j process does not start.

modules/ROOT/pages/configuration/configuration-settings.adoc

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,22 @@ a|An integer.
184184
m|+++600+++
185185
|===
186186

187+
188+
[role=label--new-2025.07 label--dynamic]
189+
[[config_db.checkpoint.throughput.limit]]
190+
=== `db.checkpoint.throughput.limit`
191+
192+
.db.checkpoint.throughput.limit
193+
[frame="topbot", stripes=odd, grid="cols", cols="<1s,<4"]
194+
|===
195+
|Description
196+
a|Limit the write throughput per second of the background checkpoint process. This setting is advisory. It is ignored in Neo4j Community Edition and is followed to best effort in Enterprise Edition. Limiting the write IO in this way leaves more bandwidth in the IO subsystem to service random-read IOs, which is important for the response time of queries when the database cannot fit entirely in memory. The only drawback of this setting is that longer checkpoint times may lead to slightly longer recovery times in case of a database or system crash. A lower number means lower IO pressure and, consequently, longer checkpoint times. Set this to null to disable the throughput limit and fallback to IOPS limit.
197+
|Valid values
198+
a|A byte size (valid multipliers are B, KiB, KB, K, kB, kb, k, MiB, MB, M, mB, mb, m, GiB, GB, G, gB, gb, g, TiB, TB, PiB, PB, EiB, EB) that is minimum 8.00KiB.
199+
|Default value
200+
m|++++++
201+
|===
202+
187203
== Cloud storage integration settings
188204

189205
Cloud integration settings allow you to specify custom Azure blob storage endpoints and host authorities, set the project ID for Google Cloud Storage buckets, and define the desired throughput for transfer operations in Amazon S3.
@@ -1825,7 +1841,7 @@ For more information, see xref:/performance/statistics-execution-plans.adoc[Stat
18251841
|Description
18261842
a|The default language of a database determines which language is used to evaluate queries that do not explicitly select a language. This setting determines the default language used for new (and initial) databases where not specified as part of `CREATE` or `ALTER` database.
18271843
|Valid values
1828-
a|One of [CYPHER_5, CYPHER_25] that the [] values acceptance depend on 'internal.dbms.cypher.enable_experimental_versions'.
1844+
a|One of [CYPHER_5, CYPHER_25]. label:changed[Changed in 2025.07]
18291845
|Default value
18301846
m|+++CYPHER_5+++
18311847
|===

modules/ROOT/pages/configuration/dynamic-settings.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ RETURN name
3636
| name |
3737
+----------------------------------------------------------------+
3838
| "db.checkpoint.iops.limit" |
39+
| "db.checkpoint.throughput.limit" |
3940
| "db.format" |
4041
| "db.lock.acquisition.timeout" |
4142
| "db.logs.query.annotation_data_format" |

modules/ROOT/pages/database-internals/checkpointing.adoc

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -115,42 +115,42 @@ The following details the expected messages to appear in the _logs\debug.log_ up
115115
+
116116
....
117117
2023-05-28 12:55:05.174+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for time threshold" @ txId: 49 checkpoint started...
118-
2023-05-28 12:55:05.253+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for time threshold" @ txId: 49 checkpoint completed in 79ms
118+
2023-05-28 12:55:05.253+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for time threshold" @ txId: 49 checkpoint completed in 79ms. Checkpoint flushed 74 pages (7% of total available pages), in 58 IOs. Checkpoint performed with IO limit: 789 IOPS, paused in total 0 times(0 millis). Average checkpoint flush speed: 592.0KiB/s.
119119
....
120120

121121
* Checkpoint based upon `db.checkpoint.interval.tx`:
122122
+
123123
....
124124
2023-05-28 13:08:51.603+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for tx count threshold" @ txId: 118 checkpoint started...
125-
2023-05-28 13:08:51.669+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for tx count threshold" @ txId: 118 checkpoint completed in 66ms
125+
2023-05-28 13:08:51.669+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for tx count threshold" @ txId: 118 checkpoint completed in 66ms. Checkpoint flushed 74 pages (7% of total available pages), in 58 IOs. Checkpoint performed with IO limit: 789 IOPS, paused in total 0 times(0 millis). Average checkpoint flush speed: 592.0KiB/s.
126126
....
127127

128128
* Checkpoint when `db.checkpoint=continuous`:
129129
+
130130
....
131131
2023-05-28 13:17:21.927+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for continuous threshold" @ txId: 171 checkpoint started...
132-
2023-05-28 13:17:21.941+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for continuous threshold" @ txId: 171 checkpoint completed in 13ms
132+
2023-05-28 13:17:21.941+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Scheduled checkpoint for continuous threshold" @ txId: 171 checkpoint completed in 13ms. Checkpoint flushed 74 pages (7% of total available pages), in 58 IOs. Checkpoint performed with IO limit: 789 IOPS, paused in total 0 times(0 millis). Average checkpoint flush speed: 592.0KiB/s.
133133
....
134134

135135
* Checkpoint as a result of database shutdown:
136136
+
137137
....
138138
2023-05-28 12:35:56.272+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Database shutdown" @ txId: 47 checkpoint started...
139-
2023-05-28 12:35:56.306+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Database shutdown" @ txId: 47 checkpoint completed in 34ms
139+
2023-05-28 12:35:56.306+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Database shutdown" @ txId: 47 checkpoint completed in 34ms. Checkpoint flushed 74 pages (7% of total available pages), in 58 IOs. Checkpoint performed with IO limit: 789 IOPS, paused in total 0 times(0 millis). Average checkpoint flush speed: 592.0KiB/s.
140140
....
141141

142142
* Checkpoint as a result of `CALL db.checkpoint()`:
143143
+
144144
....
145145
2023-05-28 12:31:56.463+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Call to db.checkpoint() procedure" @ txId: 47 checkpoint started...
146-
2023-05-28 12:31:56.490+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Call to db.checkpoint() procedure" @ txId: 47 checkpoint completed in 27ms
146+
2023-05-28 12:31:56.490+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Call to db.checkpoint() procedure" @ txId: 47 checkpoint completed in 27ms. Checkpoint flushed 74 pages (7% of total available pages), in 58 IOs. Checkpoint performed with IO limit: 789 IOPS, paused in total 0 times(0 millis). Average checkpoint flush speed: 592.0KiB/s.
147147
....
148148

149149
* Checkpoint as a result of a backup run:
150150
+
151151
....
152152
2023-05-28 12:33:30.489+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Full backup" @ txId: 47 checkpoint started...
153-
2023-05-28 12:33:30.509+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Full backup" @ txId: 47 checkpoint completed in 20ms
153+
2023-05-28 12:33:30.509+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Checkpoint triggered by "Full backup" @ txId: 47 checkpoint completed in 20ms. Checkpoint flushed 74 pages (7% of total available pages), in 58 IOs. Checkpoint performed with IO limit: 789 IOPS, paused in total 0 times(0 millis). Average checkpoint flush speed: 592.0KiB/s.
154154
....
155155

156156
https://neo4j.com/docs/operations-manual/current/monitoring/metrics/reference/#metrics-general-purpose[Checkpoint Metrics] are also available and are detailed in the following files, in the _metrics/_ directory:

modules/ROOT/pages/import.adoc

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1136,6 +1136,7 @@ For example, you can use `uuid:ID(Person){label:Person}`, where the relationship
11361136
* For examples of creating property uniqueness constraints, see link:{neo4j-docs-base-uri}/cypher-manual/current/constraints/managing-constraints/#create-property-uniqueness-constraints[Cypher Manual -> Create property uniqueness constraints].
11371137
====
11381138

1139+
[role=label--new-2025.04]
11391140
=== Extended header support for Parquet
11401141

11411142
In addition to the header format supported by the CSV import, the Parquet import supports name-mapping header files.
@@ -1462,8 +1463,9 @@ Now use the previously defined ID spaces when connecting the actors to movies.
14621463
[[import-tool-multiple-ids]]
14631464
== Using multiple node IDs
14641465

1465-
A node header can also contain multiple `ID` columns, where the relationship data references the composite value of all those columns.
1466-
This also implies using `string` as `id-type`.
1466+
A node header can contain multiple `ID` columns.
1467+
The relationship data must then use a matching number of `START_ID` / `END_ID` columns as references to the composite value of those ID columns.
1468+
This implies using `string` as `id-type`.
14671469

14681470
For each `ID` column, you can specify to store its values as different node properties.
14691471
However, the composite value cannot be stored as a node property.
@@ -1498,13 +1500,13 @@ Now use both IDs when defining the relationship:
14981500
.relationships_header.csv
14991501
[source, csv]
15001502
----
1501-
:START_ID,:TYPE,:END_ID
1503+
:START_ID,:START_ID,:TYPE,:END_ID,:END_ID
15021504
----
15031505
15041506
.relationships.csv
15051507
[source, csv]
15061508
----
1507-
aa11,WORKS_WITH,bb22
1509+
aa,11,WORKS_WITH,bb,22
15081510
----
15091511
====
15101512

@@ -1532,13 +1534,13 @@ Now use the defined ID space when connecting John with Paul, and use both IDs in
15321534
.relationships_header.csv
15331535
[source, csv]
15341536
----
1535-
:START_ID(MyGroup),:TYPE,:END_ID(MyGroup)
1537+
:START_ID(MyGroup),:START_ID(MyGroup),:TYPE,:END_ID(MyGroup),:END_ID(MyGroup)
15361538
----
15371539
15381540
.relationships.csv
15391541
[source, csv]
15401542
----
1541-
aa11,WORKS_WITH,bb22
1543+
aa,11,WORKS_WITH,bb,22
15421544
----
15431545
====
15441546

0 commit comments

Comments
 (0)