diff --git a/src/it/java/io/weaviate/integration/BackupITest.java b/src/it/java/io/weaviate/integration/BackupITest.java index bcab53de8..43b62d017 100644 --- a/src/it/java/io/weaviate/integration/BackupITest.java +++ b/src/it/java/io/weaviate/integration/BackupITest.java @@ -245,7 +245,7 @@ public void test_lifecycle_async() throws ExecutionException, InterruptedExcepti @Test(expected = IllegalStateException.class) public void test_waitForCompletion_unknown() throws IOException, TimeoutException { var backup = new Backup("#1", "/tmp/bak/#1", "filesystem", List.of("Things"), BackupStatus.STARTED, - null, null, null, null, null); + null, null, null, null, null, null); backup.waitForCompletion(client); } diff --git a/src/main/java/io/weaviate/client6/v1/api/backup/Backup.java b/src/main/java/io/weaviate/client6/v1/api/backup/Backup.java index 9fa1c1025..a945040ef 100644 --- a/src/main/java/io/weaviate/client6/v1/api/backup/Backup.java +++ b/src/main/java/io/weaviate/client6/v1/api/backup/Backup.java @@ -35,6 +35,8 @@ public record Backup( @SerializedName("completedAt") OffsetDateTime completedAt, /** Backup size in GiB. */ @SerializedName("size") Float sizeGiB, + /** Prefix for the incremental backup IDs. */ + @SerializedName("incremental_base_backup_id") String prefixIncremental, /** * This value indicates if a backup is being created or restored from. * For operations like LIST this value is null. @@ -55,6 +57,7 @@ Backup withOperation(Operation operation) { startedAt, completedAt, sizeGiB, + prefixIncremental, operation); } diff --git a/src/main/java/io/weaviate/client6/v1/api/backup/CreateBackupRequest.java b/src/main/java/io/weaviate/client6/v1/api/backup/CreateBackupRequest.java index e7c15d02e..9a4950c6c 100644 --- a/src/main/java/io/weaviate/client6/v1/api/backup/CreateBackupRequest.java +++ b/src/main/java/io/weaviate/client6/v1/api/backup/CreateBackupRequest.java @@ -26,6 +26,7 @@ public static record BackupCreate( @SerializedName("id") String id, @SerializedName("include") List includeCollections, @SerializedName("exclude") List excludeCollections, + @SerializedName("incremental_base_backup_id") String prefixIncremental, @SerializedName("config") Config config) { private static record Config( @@ -48,6 +49,7 @@ public BackupCreate(Builder builder) { builder.backupId, builder.includeCollections, builder.excludeCollections, + builder.prefixIncremental, new Config( builder.cpuPercentage, builder.compressionLevel, @@ -58,6 +60,7 @@ public BackupCreate(Builder builder) { public static class Builder implements ObjectBuilder { private final String backupId; + private String prefixIncremental; private Integer cpuPercentage; private CompressionLevel compressionLevel; private String bucket; @@ -69,6 +72,12 @@ public Builder(String backupId) { this.backupId = backupId; } + /** Prefix for incremental backup IDs. */ + public Builder prefixIncremental(String prefixIncremental) { + this.prefixIncremental = prefixIncremental; + return this; + } + /** Collection that should be included in the backup. */ public Builder includeCollections(String... includeCollections) { return includeCollections(Arrays.asList(includeCollections));