This is an automated email from the ASF dual-hosted git repository.
houston pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/main by this push:
new 919ad85 SOLR-15089: Solidify S3 tests when running with less
resources.
919ad85 is described below
commit 919ad85ebe3130f82f793dd8b5fdaff808eb9e3e
Author: Houston Putman <[email protected]>
AuthorDate: Fri Aug 20 14:58:47 2021 -0400
SOLR-15089: Solidify S3 tests when running with less resources.
---
.../src/java/org/apache/solr/s3/S3StorageClient.java | 9 +++++++--
.../cloud/api/collections/AbstractIncrementalBackupTest.java | 6 +++---
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git
a/solr/contrib/s3-repository/src/java/org/apache/solr/s3/S3StorageClient.java
b/solr/contrib/s3-repository/src/java/org/apache/solr/s3/S3StorageClient.java
index 5f0c796..e147adf 100644
---
a/solr/contrib/s3-repository/src/java/org/apache/solr/s3/S3StorageClient.java
+++
b/solr/contrib/s3-repository/src/java/org/apache/solr/s3/S3StorageClient.java
@@ -460,7 +460,12 @@ public class S3StorageClient {
return true;
}
- return pathExists(parentDirectory);
+ // Check for existence twice, because s3Mock has issues in the tests
+ if (pathExists(parentDirectory)) {
+ return true;
+ } else {
+ return pathExists(parentDirectory);
+ }
}
private String getParentDirectory(String path) {
@@ -475,7 +480,7 @@ public class S3StorageClient {
}
return fromEnd > 0
? path.substring(0, path.lastIndexOf(S3_FILE_PATH_DELIMITER, fromEnd)
+ 1)
- : S3_FILE_PATH_DELIMITER;
+ : "";
}
/** Ensures path adheres to some rules: -Doesn't start with a leading slash
*/
diff --git
a/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractIncrementalBackupTest.java
b/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractIncrementalBackupTest.java
index b8d4c18..a854f91 100644
---
a/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractIncrementalBackupTest.java
+++
b/solr/test-framework/src/java/org/apache/solr/cloud/api/collections/AbstractIncrementalBackupTest.java
@@ -234,7 +234,7 @@ public abstract class AbstractIncrementalBackupTest extends
SolrCloudTestCase {
try (BackupRepository repository =
cluster.getJettySolrRunner(0).getCoreContainer()
.newBackupRepository(BACKUP_REPO_NAME)) {
String backupLocation =
repository.getBackupLocation(getBackupLocation());
- URI fullBackupLocationURI =
repository.resolve(repository.createURI(backupLocation), backupName,
getCollectionName());
+ URI fullBackupLocationURI =
repository.resolveDirectory(repository.createDirectoryURI(backupLocation),
backupName, getCollectionName());
BackupFilePaths backupPaths = new BackupFilePaths(repository,
fullBackupLocationURI);
IncrementalBackupVerifier verifier = new
IncrementalBackupVerifier(repository, backupLocation, backupName,
getCollectionName(), 3);
@@ -448,7 +448,7 @@ public abstract class AbstractIncrementalBackupTest extends
SolrCloudTestCase {
String backupName, String collection, int
maxNumberOfBackupToKeep) {
this.repository = repository;
this.backupLocation = backupLocation;
- this.backupURI =
repository.resolve(repository.createURI(backupLocation), backupName,
collection);
+ this.backupURI =
repository.resolveDirectory(repository.createURI(backupLocation), backupName,
collection);
this.incBackupFiles = new BackupFilePaths(repository,
this.backupURI);
this.backupName = backupName;
this.maxNumberOfBackupToKeep = maxNumberOfBackupToKeep;
@@ -536,7 +536,7 @@ public abstract class AbstractIncrementalBackupTest extends
SolrCloudTestCase {
URI zkBackupFolder = repository.resolve(backupURI,
"zk_backup_"+numBackup);
assertTrue(repository.exists(backupPropertiesFile));
assertTrue(repository.exists(zkBackupFolder));
- assertFolderAreSame(repository.resolve(backupURI,
BackupFilePaths.getZkStateDir(prevBackupId)), zkBackupFolder);
+ assertFolderAreSame(repository.resolveDirectory(backupURI,
BackupFilePaths.getZkStateDir(prevBackupId)), zkBackupFolder);
// verify indexes file
for(Slice slice :
getCollectionState(getCollectionName()).getSlices()) {