Я отлаживаю проблему с дисковым пространством в моей системе и обнаружил, что файлы .jdb занимают большую часть пространства.
во время просмотра нашел эту ссылку https://backstage.forgerock.com/knowledge/kb/article/a14630082, В моем случае lnSizeCorrectionFactor был примерно1.4 и fileDeleted = false.Я выполнил команду дискового пространства, чтобы найти использование пространства, оно оказалось ненулевым для всех файлов JDB, но большинство файлов имеют использование в виде однозначных значений в диапазоне от 2 до 9.
Яиспользуя версию je-5.0.58, которая не является последней.Мой вопрос в соответствии с BDB doc https://docs.oracle.com/cd/E17277_02/html/GettingStartedGuide/backgroundthreads.html#cleaner, jdb файл должен быть очищен, если он достигает значения, меньшего, чем значение по умолчанию 50%.В моем случае, даже если они имеют одну цифру, почему они не очищаются?
Я не устанавливал явную конфигурацию среды, поэтому она должна по умолчанию использовать значения по умолчанию.Ниже приведен код для создания хранилища bdb.
private static Repository createBDBRepository(File environmentHome) throws
RepositoryException {
BDBRepositoryBuilder builder = new BDBRepositoryBuilder();
builder.setName("localbdb");
builder.setEnvironmentHomeFile(environmentHome);
builder.setTransactionNoSync(false);
// Set BDB-JE flavor
builder.setProduct("JE");
builder.setCacheSize(20 * 1024 * 1024L);
return builder.build();
}
Строка журнала из файла je.info
Chose lowest utilized file for cleaning. fileChosen: 0x50cbecc totalUtilization: 49 bestFileUtilization: 8 lnSizeCorrectionFactor: 1.1012049 isProbe: false
No file selected for cleaning. totalUtilization: 50 bestFileUtilization: 8 lnSizeCorrectionFactor: 1.1012049 isProbe: false