jackrabbit-oak 1.8.3 дБ: хранилище данных mongodb: FileDataStore, SharedS3DataStore [каждый]
Я подтвердил, что данные mongodb удалены через VersionGarbageCollector.
Однако мы знаем, чтодвоичные файлы в FileDataStore и SharedS3DataStore будут удалены с помощью вызова сборщика мусора.
Источник TESTCASE выполняется следующим образом.
MarkSweepGarbageCollector gc = new MarkSweepGarbageCollector (новый DocumentBlobReferenceRetbageStoreStoreBollectStoreBollectStoreStoreBollectStoreStoreBollectStoreStoreBollectStoreStoreBareStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreStoreBtoreStoreStoreBareBareStoreStoreBareBareStore) Store) store.getBlobStore (), executor, root, 5, blobGcMaxAgeInSecs, repoId);
Я использую версию jackabbit-oak stanadalone, как показано ниже, и использую OakOSGiRepositoryFactory для создания javax.jcr.Repository.
Посоветуйте, пожалуйста, о сборщике мусора из дуба кроликаСпасибо.
private Repository createRepository(List<String> repoConfigs, File repoHomeDir) throws RepositoryException {
Map<String,Object> config = Maps.newHashMap();
config.put(OakOSGiRepositoryFactory.REPOSITORY_HOME, repoHomeDir.getAbsolutePath());
config.put(OakOSGiRepositoryFactory.REPOSITORY_CONFIG_FILE, commaSepFilePaths(repoConfigs));
config.put(OakOSGiRepositoryFactory.REPOSITORY_SHUTDOWN_ON_TIMEOUT, false);
config.put(OakOSGiRepositoryFactory.REPOSITORY_ENV_SPRING_BOOT, true);
config.put(OakOSGiRepositoryFactory.REPOSITORY_TIMEOUT_IN_SECS, 10);
config.put("repo.home", repoHomeDir.getAbsolutePath());
config.put("oak.mongo.db", mongoDbName);
config.put("oak.mongo.uri", getMongoURI());
if(useAwsS3) {
config.put("oak.aws.s3.accessKey", accessKey);
config.put("oak.aws.s3.secretKey", secretKey);
config.put("oak.aws.s3.s3Bucket", s3Bucket);
config.put("oak.aws.s3.s3Region", s3Region);
}
configureActivator(config);
return new OakOSGiRepositoryFactory().getRepository(config);
}