SNR#2648 생명주기 프로파일을 삭제해도 기존에 지정한 S3 경로에 접근하려 하는 문제 해결

버전: 4.0.2409.1

Cold 티어에 오브젝트 스토리지 설정을 했을 때, 생명주기 프로파일을 삭제해도 기존에 사용 중이던 S3 경로에 접근을 시도하는 문제를 수정했습니다. 오브젝트 스토리지 피쳐가 도입된 4.0.2409.0 버전에서 발생한 이슈입니다.

ERROR (StorageObjectStateManagerImpl) - logpresso replicator: idx io exception from table [****] partition [2024-08-01]
java.io.IOException: Failed to get last modified time for: test/table/****/2024-08-01+****.idx with S3Exception
        at com.logpresso.objectstorage.filepath.ObjectStorageFilePath.lastModified(ObjectStorageFilePath.java:537)
        at com.logpresso.replicator.impl.StorageObjectStateManagerImpl.__M_runOnce(StorageObjectStateManagerImpl.java:562)
        at com.logpresso.replicator.impl.StorageObjectStateManagerImpl.runOnce(StorageObjectStateManagerImpl.java)
        at com.logpresso.replicator.impl.StorageObjectStateManagerImpl.__M_run(StorageObjectStateManagerImpl.java:537)
        at com.logpresso.replicator.impl.StorageObjectStateManagerImpl.run(StorageObjectStateManagerImpl.java)
        at org.araqne.cron.impl.Job.run(Job.java:120)
        at org.araqne.cron.impl.Scheduler$Runner.run(Scheduler.java:218)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: software.amazon.awssdk.services.s3.model.NoSuchKeyException: null (Service: S3, Status Code: 404, Request ID: ****) (Service: S3, Status Code: 404, Request ID: ****)
        at software.amazon.awssdk.services.s3.model.NoSuchKeyException$BuilderImpl.build(NoSuchKeyException.java:126)
        at software.amazon.awssdk.services.s3.model.NoSuchKeyException$BuilderImpl.build(NoSuchKeyException.java:80)
        at software.amazon.awssdk.services.s3.internal.handlers.ExceptionTranslationInterceptor.modifyException(ExceptionTranslationInterceptor.java:63)
        at software.amazon.awssdk.core.interceptor.ExecutionInterceptorChain.modifyException(ExecutionInterceptorChain.java:181)
        at software.amazon.awssdk.core.internal.http.pipeline.stages.utils.ExceptionReportingUtils.runModifyException(ExceptionReportingUtils.java:54)
        at software.amazon.awssdk.core.internal.http.pipeline.stages.utils.ExceptionReportingUtils.reportFailureToInterceptors(ExceptionReportingUtils.java:38)
        at software.amazon.awssdk.core.internal.http.pipeline.stages.ExecutionFailureExceptionReportingStage.execute(ExecutionFailureExceptionReportingStage.java:39)
        at software.amazon.awssdk.core.internal.http.pipeline.stages.ExecutionFailureExceptionReportingStage.execute(ExecutionFailureExceptionReportingStage.java:26)
        at software.amazon.awssdk.core.internal.http.AmazonSyncHttpClient$RequestExecutionBuilderImpl.execute(AmazonSyncHttpClient.java:224)
        at software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.invoke(BaseSyncClientHandler.java:103)
        at software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.doExecute(BaseSyncClientHandler.java:173)
        at software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.lambda$execute$1(BaseSyncClientHandler.java:80)
        at software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.measureApiCallSuccess(BaseSyncClientHandler.java:182)
        at software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.execute(BaseSyncClientHandler.java:74)
        at software.amazon.awssdk.core.client.handler.SdkSyncClientHandler.execute(SdkSyncClientHandler.java:45)
        at software.amazon.awssdk.awscore.client.handler.AwsSyncClientHandler.execute(AwsSyncClientHandler.java:53)
        at software.amazon.awssdk.services.s3.DefaultS3Client.headObject(DefaultS3Client.java:6348)
        at com.logpresso.objectstorage.filepath.ObjectStorageFilePath.lastModified(ObjectStorageFilePath.java:531)
        ... 7 more