Skip to content

Commit 8de295a

Browse files
committed
Merge remote-tracking branch 'upstream/trunk' into OAK-11438
2 parents bf4fce4 + 4f84b5c commit 8de295a

File tree

96 files changed

+6537
-1288
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+6537
-1288
lines changed

oak-commons/src/test/java/org/apache/jackrabbit/oak/commons/FixturesHelper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ private FixturesHelper() { }
5353
* default fixtures when no {@code nsfixtures} system property is provided
5454
*/
5555
public enum Fixture {
56-
DOCUMENT_NS, @Deprecated SEGMENT_MK, DOCUMENT_RDB, MEMORY_NS, DOCUMENT_MEM, SEGMENT_TAR, SEGMENT_AWS, SEGMENT_AZURE, COMPOSITE_SEGMENT, COMPOSITE_MEM, COW_DOCUMENT
56+
DOCUMENT_NS, @Deprecated SEGMENT_MK, DOCUMENT_RDB, MEMORY_NS, DOCUMENT_MEM, SEGMENT_TAR, SEGMENT_AWS, SEGMENT_AZURE_V8, SEGMENT_AZURE, COMPOSITE_SEGMENT, COMPOSITE_MEM, COW_DOCUMENT
5757
}
5858

5959
private static final Set<Fixture> FIXTURES;

oak-it/src/test/java/org/apache/jackrabbit/oak/NodeStoreFixtures.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import org.apache.jackrabbit.oak.composite.CompositeSegmentStoreFixture;
3434
import org.apache.jackrabbit.oak.segment.aws.fixture.SegmentAwsFixture;
3535
import org.apache.jackrabbit.oak.segment.azure.fixture.SegmentAzureFixture;
36+
import org.apache.jackrabbit.oak.segment.azure.fixture.SegmentAzureFixtureV8;
3637
import org.apache.jackrabbit.oak.segment.fixture.SegmentTarFixture;
3738

3839
public class NodeStoreFixtures {
@@ -43,6 +44,8 @@ public class NodeStoreFixtures {
4344

4445
public static final NodeStoreFixture SEGMENT_AWS = new SegmentAwsFixture();
4546

47+
public static final NodeStoreFixture SEGMENT_AZURE_V8 = new SegmentAzureFixtureV8();
48+
4649
public static final NodeStoreFixture SEGMENT_AZURE = new SegmentAzureFixture();
4750

4851
public static final NodeStoreFixture DOCUMENT_NS = new DocumentMongoFixture();
@@ -80,6 +83,9 @@ public static Collection<Object[]> asJunitParameters(Set<FixturesHelper.Fixture>
8083
if (fixtures.contains(FixturesHelper.Fixture.SEGMENT_AZURE)) {
8184
configuredFixtures.add(SEGMENT_AZURE);
8285
}
86+
if (fixtures.contains(FixturesHelper.Fixture.SEGMENT_AZURE_V8)) {
87+
configuredFixtures.add(SEGMENT_AZURE_V8);
88+
}
8389
if (fixtures.contains(FixturesHelper.Fixture.COMPOSITE_SEGMENT)) {
8490
configuredFixtures.add(COMPOSITE_SEGMENT);
8591
}

oak-it/src/test/java/org/apache/jackrabbit/oak/spi/state/NodeStoreTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,7 @@ public void moveToDescendant() {
460460
if (fixture == NodeStoreFixtures.SEGMENT_TAR || fixture == NodeStoreFixtures.MEMORY_NS
461461
|| fixture == NodeStoreFixtures.COMPOSITE_MEM || fixture == NodeStoreFixtures.COMPOSITE_SEGMENT
462462
|| fixture == NodeStoreFixtures.COW_DOCUMENT || fixture == NodeStoreFixtures.SEGMENT_AWS
463-
|| fixture == NodeStoreFixtures.SEGMENT_AZURE) {
463+
|| fixture == NodeStoreFixtures.SEGMENT_AZURE_V8 || fixture == NodeStoreFixtures.SEGMENT_AZURE) {
464464
assertTrue(x.moveTo(x, "xx"));
465465
assertFalse(x.exists());
466466
assertFalse(test.hasChildNode("x"));

oak-parent/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,11 @@
682682
<artifactId>jackson-dataformat-smile</artifactId>
683683
<version>${jackson.version}</version>
684684
</dependency>
685+
<dependency>
686+
<groupId>com.fasterxml.jackson.dataformat</groupId>
687+
<artifactId>jackson-dataformat-xml</artifactId>
688+
<version>${jackson.version}</version>
689+
</dependency>
685690
<dependency>
686691
<groupId>org.apache.httpcomponents</groupId>
687692
<artifactId>httpclient</artifactId>

oak-run-commons/src/main/java/org/apache/jackrabbit/oak/fixture/SegmentTarFixture.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
import org.apache.jackrabbit.oak.segment.aws.AwsContext;
4545
import org.apache.jackrabbit.oak.segment.aws.AwsPersistence;
4646
import org.apache.jackrabbit.oak.segment.aws.Configuration;
47-
import org.apache.jackrabbit.oak.segment.azure.AzurePersistence;
47+
import org.apache.jackrabbit.oak.segment.azure.v8.AzurePersistenceV8;
4848
import org.apache.jackrabbit.oak.segment.compaction.SegmentGCOptions;
4949
import org.apache.jackrabbit.oak.segment.file.FileStore;
5050
import org.apache.jackrabbit.oak.segment.file.FileStoreBuilder;
@@ -289,7 +289,7 @@ public Oak getOak(int clusterId) throws Exception {
289289
CloudBlobContainer container = cloud.createCloudBlobClient().getContainerReference(azureContainerName);
290290
container.createIfNotExists();
291291
CloudBlobDirectory directory = container.getDirectoryReference(azureRootPath);
292-
fileStoreBuilder.withCustomPersistence(new AzurePersistence(directory));
292+
fileStoreBuilder.withCustomPersistence(new AzurePersistenceV8(directory));
293293
}
294294

295295
BlobStore blobStore = null;
@@ -341,7 +341,7 @@ public Oak[] setUpCluster(int n, StatisticsProvider statsProvider) throws Except
341341
container.createIfNotExists();
342342
containers[i] = container;
343343
CloudBlobDirectory directory = container.getDirectoryReference(azureRootPath + "/primary-" + i);
344-
builder.withCustomPersistence(new AzurePersistence(directory));
344+
builder.withCustomPersistence(new AzurePersistenceV8(directory));
345345
}
346346

347347
if (blobStore != null) {

oak-run-commons/src/main/java/org/apache/jackrabbit/oak/run/cli/SegmentTarFixtureProvider.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
import org.apache.jackrabbit.guava.common.io.Closer;
3131
import org.apache.commons.io.FileUtils;
3232
import org.apache.jackrabbit.oak.segment.SegmentNodeStoreBuilders;
33-
import org.apache.jackrabbit.oak.segment.azure.AzureStorageCredentialManager;
33+
import org.apache.jackrabbit.oak.segment.azure.v8.AzureStorageCredentialManagerV8;
3434
import org.apache.jackrabbit.oak.segment.azure.tool.ToolUtils;
3535
import org.apache.jackrabbit.oak.segment.file.FileStore;
3636
import org.apache.jackrabbit.oak.segment.file.FileStoreBuilder;
@@ -53,12 +53,12 @@ static NodeStore configureSegment(Options options, BlobStore blobStore, Whiteboa
5353

5454
FileStoreBuilder builder;
5555
if (segmentStoreType == ToolUtils.SegmentStoreType.AZURE) {
56-
final AzureStorageCredentialManager azureStorageCredentialManager = new AzureStorageCredentialManager();
56+
final AzureStorageCredentialManagerV8 azureStorageCredentialManagerV8 = new AzureStorageCredentialManagerV8();
5757
SegmentNodeStorePersistence segmentNodeStorePersistence =
58-
ToolUtils.newSegmentNodeStorePersistence(segmentStoreType, pathOrUri, azureStorageCredentialManager);
58+
ToolUtils.newSegmentNodeStorePersistence(segmentStoreType, pathOrUri, azureStorageCredentialManagerV8);
5959
File tempDir = Files.createTempDirectory("azure-segment-store").toFile();
6060
closer.register(() -> FileUtils.deleteQuietly(tempDir));
61-
closer.register(azureStorageCredentialManager);
61+
closer.register(azureStorageCredentialManagerV8);
6262
builder = fileStoreBuilder(tempDir).withCustomPersistence(segmentNodeStorePersistence);
6363
} else {
6464
builder = fileStoreBuilder(new File(pathOrUri)).withMaxFileSize(256);

oak-run-elastic/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
105 MB: Azure updates
4343
107 MB: RDB/Tomcat (OAK-10752)
4444
-->
45-
<max.jar.size>112197632</max.jar.size>
45+
<max.jar.size>113039632</max.jar.size>
4646

4747
</properties>
4848

oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/AzureSegmentStoreExplorerBackend.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
package org.apache.jackrabbit.oak.explorer;
2020

2121
import org.apache.jackrabbit.guava.common.io.Files;
22-
import org.apache.jackrabbit.oak.segment.azure.AzureStorageCredentialManager;
22+
import org.apache.jackrabbit.oak.segment.azure.v8.AzureStorageCredentialManagerV8;
2323
import org.apache.jackrabbit.oak.segment.azure.tool.ToolUtils;
2424
import org.apache.jackrabbit.oak.segment.file.InvalidFileStoreVersionException;
2525
import org.apache.jackrabbit.oak.segment.spi.persistence.JournalFile;
@@ -39,16 +39,16 @@
3939
public class AzureSegmentStoreExplorerBackend extends AbstractSegmentTarExplorerBackend {
4040
private final String path;
4141
private SegmentNodeStorePersistence persistence;
42-
private final AzureStorageCredentialManager azureStorageCredentialManager;
42+
private final AzureStorageCredentialManagerV8 azureStorageCredentialManagerV8;
4343

4444
public AzureSegmentStoreExplorerBackend(String path) {
4545
this.path = path;
46-
this.azureStorageCredentialManager = new AzureStorageCredentialManager();
46+
this.azureStorageCredentialManagerV8 = new AzureStorageCredentialManagerV8();
4747
}
4848

4949
@Override
5050
public void open() throws IOException {
51-
this.persistence = newSegmentNodeStorePersistence(ToolUtils.SegmentStoreType.AZURE, path, azureStorageCredentialManager);
51+
this.persistence = newSegmentNodeStorePersistence(ToolUtils.SegmentStoreType.AZURE, path, azureStorageCredentialManagerV8);
5252

5353
try {
5454
this.store = fileStoreBuilder(Files.createTempDir())
@@ -63,7 +63,7 @@ public void open() throws IOException {
6363
@Override
6464
public void close() {
6565
super.close();
66-
azureStorageCredentialManager.close();
66+
azureStorageCredentialManagerV8.close();
6767
}
6868

6969
@Override

oak-run/src/main/java/org/apache/jackrabbit/oak/run/FileStoreDiffCommand.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import joptsimple.OptionSet;
2929
import joptsimple.OptionSpec;
3030
import org.apache.jackrabbit.oak.run.commons.Command;
31-
import org.apache.jackrabbit.oak.segment.azure.AzureStorageCredentialManager;
31+
import org.apache.jackrabbit.oak.segment.azure.v8.AzureStorageCredentialManagerV8;
3232
import org.apache.jackrabbit.oak.segment.azure.tool.ToolUtils;
3333
import org.apache.jackrabbit.oak.segment.file.ReadOnlyFileStore;
3434
import org.apache.jackrabbit.oak.segment.spi.persistence.SegmentNodeStorePersistence;
@@ -87,8 +87,8 @@ public void execute(String... args) throws Exception {
8787
}
8888
} else {
8989
if (pathOrURI.startsWith("az:")) {
90-
try (AzureStorageCredentialManager azureStorageCredentialManager = new AzureStorageCredentialManager()) {
91-
SegmentNodeStorePersistence azurePersistence = ToolUtils.newSegmentNodeStorePersistence(ToolUtils.SegmentStoreType.AZURE, pathOrURI, azureStorageCredentialManager);
90+
try (AzureStorageCredentialManagerV8 azureStorageCredentialManagerV8 = new AzureStorageCredentialManagerV8()) {
91+
SegmentNodeStorePersistence azurePersistence = ToolUtils.newSegmentNodeStorePersistence(ToolUtils.SegmentStoreType.AZURE, pathOrURI, azureStorageCredentialManagerV8);
9292
ReadOnlyFileStore store = fileStoreBuilder(Files.createTempDir()).withCustomPersistence(azurePersistence).withBlobStore(newBasicReadOnlyBlobStore()).buildReadOnly();
9393
statusCode = Diff.builder()
9494
.withPath(pathOrURI)

oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCommandTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@
7171
import org.apache.jackrabbit.oak.run.cli.BlobStoreOptions.Type;
7272
import org.apache.jackrabbit.oak.segment.SegmentNodeStore;
7373
import org.apache.jackrabbit.oak.segment.SegmentNodeStoreBuilders;
74-
import org.apache.jackrabbit.oak.segment.azure.AzureStorageCredentialManager;
75-
import org.apache.jackrabbit.oak.segment.azure.AzureUtilities;
74+
import org.apache.jackrabbit.oak.segment.azure.v8.AzureStorageCredentialManagerV8;
75+
import org.apache.jackrabbit.oak.segment.azure.v8.AzureUtilitiesV8;
7676
import org.apache.jackrabbit.oak.segment.azure.tool.ToolUtils;
7777
import org.apache.jackrabbit.oak.segment.compaction.SegmentGCOptions;
7878
import org.apache.jackrabbit.oak.segment.file.FileStore;
@@ -1128,7 +1128,7 @@ class SegmentStoreFixture implements StoreFixture {
11281128
class AzureSegmentStoreFixture extends SegmentStoreFixture {
11291129
private static final String AZURE_DIR = "repository";
11301130
private String container;
1131-
private final AzureStorageCredentialManager azureStorageCredentialManager = new AzureStorageCredentialManager();
1131+
private final AzureStorageCredentialManagerV8 azureStorageCredentialManagerV8 = new AzureStorageCredentialManagerV8();
11321132

11331133
@Override public NodeStore init(DataStoreBlobStore blobStore, File storeFile) throws Exception {
11341134
Properties props = AzureDataStoreUtils.getAzureConfig();
@@ -1138,14 +1138,14 @@ class AzureSegmentStoreFixture extends SegmentStoreFixture {
11381138
container = container + System.currentTimeMillis();
11391139
// Create the azure segment container
11401140
String connectionString = getAzureConnectionString(accessKey, secretKey, container, AZURE_DIR);
1141-
AzureUtilities.cloudBlobDirectoryFrom(connectionString, container, AZURE_DIR);
1141+
AzureUtilitiesV8.cloudBlobDirectoryFrom(connectionString, container, AZURE_DIR);
11421142

11431143
// get the azure uri expected by the command
11441144
storePath = getAzureUri(accessKey, container, AZURE_DIR);
11451145

11461146
// initialize azure segment for test setup
11471147
SegmentNodeStorePersistence segmentNodeStorePersistence =
1148-
ToolUtils.newSegmentNodeStorePersistence(ToolUtils.SegmentStoreType.AZURE, storePath, azureStorageCredentialManager);
1148+
ToolUtils.newSegmentNodeStorePersistence(ToolUtils.SegmentStoreType.AZURE, storePath, azureStorageCredentialManagerV8);
11491149
fileStore = fileStoreBuilder(storeFile).withBlobStore(blobStore)
11501150
.withCustomPersistence(segmentNodeStorePersistence).build();
11511151

@@ -1177,7 +1177,7 @@ protected String getAzureConnectionString(String accountName, String secret, Str
11771177
public void after() {
11781178
try {
11791179
AzureDataStoreUtils.deleteContainer(container);
1180-
azureStorageCredentialManager.close();
1180+
azureStorageCredentialManagerV8.close();
11811181
} catch(Exception e) {
11821182
log.error("Error in cleaning the container {}", container, e);
11831183
}

0 commit comments

Comments
 (0)