This is an automated email from the ASF dual-hosted git repository.
rnewson pushed a commit to branch nouveau-update-bundle
in repository https://gitbox.apache.org/repos/asf/couchdb.git
The following commit(s) were added to refs/heads/nouveau-update-bundle by this
push:
new 78d6f92eb commit purge seq update before returning
78d6f92eb is described below
commit 78d6f92eb69ccfeb29e1c4eb1697b2e590ff4096
Author: Robert Newson <[email protected]>
AuthorDate: Tue Mar 24 21:34:23 2026 +0000
commit purge seq update before returning
---
.../main/java/org/apache/couchdb/nouveau/api/IndexInfoRequest.java | 5 ++++-
.../java/org/apache/couchdb/nouveau/resources/IndexResource.java | 3 +++
src/nouveau/src/nouveau_api.erl | 3 ++-
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git
a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfoRequest.java
b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfoRequest.java
index bc2f016f8..5e584a005 100644
---
a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfoRequest.java
+++
b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfoRequest.java
@@ -15,7 +15,9 @@ package org.apache.couchdb.nouveau.api;
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
+import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.PositiveOrZero;
+import java.util.Optional;
import java.util.OptionalLong;
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
@@ -23,4 +25,5 @@ public record IndexInfoRequest(
@PositiveOrZero OptionalLong matchUpdateSeq,
@PositiveOrZero OptionalLong updateSeq,
@PositiveOrZero OptionalLong matchPurgeSeq,
- @PositiveOrZero OptionalLong purgeSeq) {}
+ @PositiveOrZero OptionalLong purgeSeq,
+ @NotNull Optional<Boolean> commit) {}
diff --git
a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/IndexResource.java
b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/IndexResource.java
index 18539fbed..ac73054af 100644
---
a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/IndexResource.java
+++
b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/IndexResource.java
@@ -108,6 +108,9 @@ public final class IndexResource {
index.setPurgeSeq(
request.matchPurgeSeq().getAsLong(),
request.purgeSeq().getAsLong());
}
+ if (request.commit().orElse(false)) {
+ index.commit();
+ }
return Ok.INSTANCE;
});
}
diff --git a/src/nouveau/src/nouveau_api.erl b/src/nouveau/src/nouveau_api.erl
index 8c85ec910..2e8b1c37d 100644
--- a/src/nouveau/src/nouveau_api.erl
+++ b/src/nouveau/src/nouveau_api.erl
@@ -284,7 +284,8 @@ set_update_seq(#index{} = Index, MatchSeq, UpdateSeq) ->
set_purge_seq(#index{} = Index, MatchSeq, PurgeSeq) ->
ReqBody = #{
match_purge_seq => MatchSeq,
- purge_seq => PurgeSeq
+ purge_seq => PurgeSeq,
+ commit => true
},
set_seq(Index, ReqBody).