You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/docs/asciidoc/release_notes.adoc
+18Lines changed: 18 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -649,6 +649,24 @@ This non-standard behaviour may change before Jaybird 7.0.0 release, or in a lat
649
649
// TODO Revise above, depending on https://github.com/FirebirdSQL/jaybird/issues/343 or maybe https://github.com/FirebirdSQL/jaybird/issues/833
650
650
====
651
651
652
+
[#backup-skip-include-data]
653
+
=== Support for including and excluding table data in `BackupManager`
654
+
655
+
The backup manager API was extended with support for including and excluding table data for backup or restore.
656
+
657
+
Four properties were added to `org.firebirdsql.management.BackupManager` and its implementations:
658
+
659
+
[horizontal.compact]
660
+
`skipData`::
661
+
SQL regular expression for table names to skip
662
+
`skipSchemaData`::
663
+
(Firebird 6+) SQL regular expression for schema names to skip
664
+
`includeData`::
665
+
SQL regular expression for table names to include
666
+
`includeSchemaData`::
667
+
(Firebird 6+) SQL regular expression for schema names to include
668
+
669
+
For more information, refer to https://firebirdsql.org/file/documentation/html/en/firebirddocs/gbak/firebird-gbak.html[Firebird's gbak Backup and Restore Utility].
SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause
15
15
SPDX-FileComment: The constants listed here were obtained from the Firebird sources, which are licensed under the IPL (InterBase Public License) and/or IDPL (Initial Developer Public License), both are variants of the Mozilla Public License version 1.1
@@ -178,6 +178,8 @@ public interface ISCConstants {
178
178
intisc_spb_bkp_crypt = 18;
179
179
intisc_spb_bkp_include_data = 19;
180
180
intisc_spb_bkp_parallel_workers = 21;
181
+
intisc_spb_bkp_skip_schema_data = 22;
182
+
intisc_spb_bkp_include_schema_data = 23;
181
183
intisc_spb_bkp_ignore_checksums = 0x01;
182
184
intisc_spb_bkp_ignore_limbo = 0x02;
183
185
intisc_spb_bkp_metadata_only = 0x04;
@@ -288,6 +290,8 @@ public interface ISCConstants {
Copy file name to clipboardExpand all lines: src/main/org/firebirdsql/management/BackupManager.java
+120Lines changed: 120 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -8,6 +8,7 @@
8
8
packageorg.firebirdsql.management;
9
9
10
10
importorg.firebirdsql.gds.ISCConstants;
11
+
importorg.jspecify.annotations.Nullable;
11
12
12
13
importjava.sql.SQLException;
13
14
@@ -242,6 +243,124 @@ public interface BackupManager extends ServiceManager {
242
243
*/
243
244
voidsetRestoreReadOnly(booleanreadOnly);
244
245
246
+
/**
247
+
* SQL regular expression for the tables to exclude from the backup or restore.
248
+
* <p>
249
+
* Metadata of excluded tables is included, but their data is not included in the backup, or not written on restore.
250
+
* </p>
251
+
* <p>
252
+
* See also <a href="https://firebirdsql.org/file/documentation/html/en/firebirddocs/gbak/firebird-gbak.html#gbak-cmdline-skip-data">-SKIP_D[ATA]</a>
253
+
* in <em>Firebird's gbak Backup and Restore Utility</em>, and <a href="https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref50/fblangref50-commons-predicates.html#fblangref50-commons-syntaxregex">Syntax: SQL Regular Expressions</a>
254
+
* in the <em>Firebird 5.0 Language Reference</em>.
255
+
* </p>
256
+
*
257
+
* @param sqlRegex
258
+
* SQL regular expression for tables to exclude, {@code null} to clear
259
+
* @see #getSkipData()
260
+
* @see #setSkipSchemaData(String)
261
+
* @see #setIncludeData(String)
262
+
* @see #setIncludeSchemaData(String)
263
+
* @since 7
264
+
*/
265
+
voidsetSkipData(@NullableStringsqlRegex);
266
+
267
+
/**
268
+
* @return SQL regular expression for tables to exclude, {@code null} for no filtering
269
+
* @see #setSkipData(String)
270
+
* @since 7
271
+
*/
272
+
@NullableStringgetSkipData();
273
+
274
+
/**
275
+
* SQL regular expression for the schemas to exclude from the backup or restore.
276
+
* <p>
277
+
* Metadata of excluded schemas and tables is included, but their data is not included in the backup, or not written
278
+
* on restore.
279
+
* </p>
280
+
* <p>
281
+
* Ignored on Firebird 5.0 and older.
282
+
* </p>
283
+
* <p>
284
+
* See also <a href="https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref50/fblangref50-commons-predicates.html#fblangref50-commons-syntaxregex">Syntax: SQL Regular Expressions</a>
285
+
* in the <em>Firebird 5.0 Language Reference</em>.
286
+
* </p>
287
+
*
288
+
* @param sqlRegex
289
+
* SQL regular expression for schemas to exclude, {@code null} to clear
290
+
* @see #getSkipSchemaData()
291
+
* @see #setSkipData(String)
292
+
* @see #setIncludeData(String)
293
+
* @see #setIncludeSchemaData(String)
294
+
* @since 7
295
+
*/
296
+
voidsetSkipSchemaData(@NullableStringsqlRegex);
297
+
298
+
/**
299
+
* @return SQL regular expression for schemas to exclude, {@code null} for no filtering
300
+
* @see #setSkipSchemaData(String)
301
+
* @since 7
302
+
*/
303
+
@NullableStringgetSkipSchemaData();
304
+
305
+
/**
306
+
* SQL regular expression for the tables to include in the backup or restore.
307
+
* <p>
308
+
* Metadata of excluded tables is included, but their data is not included in the backup, or not written on restore.
309
+
* </p>
310
+
* <p>
311
+
* See also <a href="https://firebirdsql.org/file/documentation/html/en/firebirddocs/gbak/firebird-gbak.html#gbak-cmdline-include-data">-INCLUDE[_DATA]</a>
312
+
* in <em>Firebird's gbak Backup and Restore Utility</em>, and <a href="https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref50/fblangref50-commons-predicates.html#fblangref50-commons-syntaxregex">Syntax: SQL Regular Expressions</a>
313
+
* in the <em>Firebird 5.0 Language Reference</em>.
314
+
* </p>
315
+
*
316
+
* @param sqlRegex
317
+
* SQL regular expression for tables to include, {@code null} to clear
318
+
* @see #getIncludeData()
319
+
* @see #setSkipData(String)
320
+
* @see #setSkipSchemaData(String)
321
+
* @see #setIncludeSchemaData(String)
322
+
* @since 7
323
+
*/
324
+
voidsetIncludeData(@NullableStringsqlRegex);
325
+
326
+
/**
327
+
* @return SQL regular expression for tables to include, {@code null} for no filtering
328
+
* @see #setIncludeData(String)
329
+
* @since 7
330
+
*/
331
+
@NullableStringgetIncludeData();
332
+
333
+
/**
334
+
* SQL regular expression for the schemas to include in the backup or restore.
335
+
* <p>
336
+
* Metadata of excluded schemas and tables is included, but their data is not included in the backup, or not written
337
+
* on restore.
338
+
* </p>
339
+
* <p>
340
+
* Ignored on Firebird 5.0 and older.
341
+
* </p>
342
+
* <p>
343
+
* See also <a href="https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref50/fblangref50-commons-predicates.html#fblangref50-commons-syntaxregex">Syntax: SQL Regular Expressions</a>
344
+
* in the <em>Firebird 5.0 Language Reference</em>.
345
+
* </p>
346
+
*
347
+
* @param sqlRegex
348
+
* SQL regular expression for schemas to include, {@code null} to clear
0 commit comments