You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by mi...@apache.org on 2025/08/27 15:33:23 UTC
(jackrabbit-oak) 06/09: OAK-11884 use writeAccessController.isWritingAllowed() to decide on deleting the archive
This is an automated email from the ASF dual-hosted git repository.
miroslav pushed a commit to branch issue/OAK-9212_2
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git
commit 5fed72e4142a8912996be5b55b72ba9642c194df
Author: Miroslav Smiljanic <mi...@apache.com>
AuthorDate: Wed Aug 27 17:09:46 2025 +0200
OAK-11884 use writeAccessController.isWritingAllowed() to decide on deleting the archive
---
.../apache/jackrabbit/oak/segment/azure/AzureArchiveManager.java | 4 +---
.../org/apache/jackrabbit/oak/segment/azure/AzurePersistence.java | 6 ++++++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureArchiveManager.java b/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureArchiveManager.java
index cbcaba9e2b..f35bc1cf36 100644
--- a/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureArchiveManager.java
+++ b/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzureArchiveManager.java
@@ -73,8 +73,6 @@ public class AzureArchiveManager implements SegmentArchiveManager {
private final WriteAccessController writeAccessController;
- private final boolean isReadOnly = false;
-
public AzureArchiveManager(BlobContainerClient readBlobContainerClient, BlobContainerClient writeBlobContainerClient, String rootPrefix, IOMonitor ioMonitor, FileStoreMonitor fileStoreMonitor, WriteAccessController writeAccessController) {
this.readBlobContainerClient = readBlobContainerClient;
this.writeBlobContainerClient = writeBlobContainerClient;
@@ -97,7 +95,7 @@ public class AzureArchiveManager implements SegmentArchiveManager {
while (it.hasNext()) {
String archiveName = it.next();
if (deleteInProgress(archiveName)) {
- if (!isReadOnly) {
+ if (!writeAccessController.isWritingAllowed()) {
delete(archiveName);
}
it.remove();
diff --git a/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzurePersistence.java b/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzurePersistence.java
index 295ca41b1e..e517a0462a 100644
--- a/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzurePersistence.java
+++ b/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/AzurePersistence.java
@@ -33,6 +33,7 @@ import org.apache.jackrabbit.oak.segment.spi.persistence.ManifestFile;
import org.apache.jackrabbit.oak.segment.spi.persistence.RepositoryLock;
import org.apache.jackrabbit.oak.segment.spi.persistence.SegmentArchiveManager;
import org.apache.jackrabbit.oak.segment.spi.persistence.SegmentNodeStorePersistence;
+import org.jetbrains.annotations.TestOnly;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -151,4 +152,9 @@ public class AzurePersistence implements SegmentNodeStorePersistence {
public void setWriteAccessController(WriteAccessController writeAccessController) {
this.writeAccessController = writeAccessController;
}
+
+ @TestOnly
+ void disableWriting() {
+ writeAccessController.disableWriting();
+ }
}