Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

실섭 서버 팟 메모리 설정 늘리기 #399

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jyoo0515
Copy link
Member

@jyoo0515 jyoo0515 commented Oct 10, 2024

  • blur 이미지를 하면서 OOM 이 나는 경우가 꽤 있어서 메모리 설정을 늘립니다
  • 실제로 현재도 평상시에 955MB 를 쓰는 상황이라 리밋의 90% 이상을 쓰고 있습니다
에러 로그
{"timestamp":"2024-10-09 23:20:12.507Z","level":"ERROR","thread":"pool-13-thread-463","mdc":{"trace_id":"330fc2d3cdf5023805da118649f647d4","trace_flags":"01","span_id":"8a270a2a3cb8cde8"},"logger":"club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService","message":"Detecting and blurring faces in the image(https://scc-prod-accessibility-images.s3.ap-northeast-2.amazonaws.com/20240523095011_61393E933F674846.jpeg) failed.","exception":"java.lang.OutOfMemoryError: Cannot allocate new BytePointer(807224): totalBytes = 16, physicalBytes = 993M\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:134)\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:99)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageProcessor.blur(AccessibilityImageProcessor.kt:17)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService.detectAndBlurFaces(AccessibilityImageFaceBlurringService.kt:70)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService.access$detectAndBlurFaces(AccessibilityImageFaceBlurringService.kt:13)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService$detectAndBlurFaces$3.invokeSuspend(AccessibilityImageFaceBlurringService.kt)\n\tat kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)\n\tat kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)\n\tat kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)\n\tat kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)\n\tat kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)\n\tat kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)\n\tat kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)\n\tat kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)\n\tat club.staircrusher.accessibility.application.port.in.BlurFacesInLatestPlaceAccessibilityImagesUseCase.handle(BlurFacesInLatestPlaceAccessibilityImagesUseCase.kt:51)\n\tat club.staircrusher.accessibility.application.port.in.BlurFacesInLatestPlaceAccessibilityImagesUseCase.handleAsync$lambda$0(BlurFacesInLatestPlaceAccessibilityImagesUseCase.kt:35)\n\tat io.opentelemetry.javaagent.bootstrap.executors.ContextPropagatingRunnable.run(ContextPropagatingRunnable.java:37)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)\n\tat java.base/java.lang.Thread.run(Thread.java:1589)\nCaused by: java.lang.OutOfMemoryError: Physical memory usage is too high: physicalBytes (993M) > maxPhysicalBytes (990M)\n\tat org.bytedeco.javacpp.Pointer.deallocator(Pointer.java:741)\n\tat org.bytedeco.javacpp.Pointer.init(Pointer.java:127)\n\tat org.bytedeco.javacpp.BytePointer.allocateArray(Native Method)\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:126)\n\t... 19 common frames omitted\n"}
{"timestamp":"2024-10-09 23:27:13.307Z","level":"ERROR","thread":"pool-13-thread-465","mdc":{"trace_id":"e637d69030e3d62b256fab7892ee7ecd","trace_flags":"01","span_id":"8c35fb911592a5c7"},"logger":"club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService","message":"Detecting and blurring faces in the image(https://scc-prod-accessibility-images.s3.ap-northeast-2.amazonaws.com/20240523101712_FD20A96D4C1946F7.jpeg) failed.","exception":"java.lang.OutOfMemoryError: Cannot allocate new BytePointer(883254): totalBytes = 16, physicalBytes = 993M\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:134)\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:99)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageProcessor.blur(AccessibilityImageProcessor.kt:17)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService.detectAndBlurFaces(AccessibilityImageFaceBlurringService.kt:70)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService.access$detectAndBlurFaces(AccessibilityImageFaceBlurringService.kt:13)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService$detectAndBlurFaces$3.invokeSuspend(AccessibilityImageFaceBlurringService.kt)\n\tat kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)\n\tat kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)\n\tat kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)\n\tat kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)\n\tat kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)\n\tat kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)\n\tat kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)\n\tat kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)\n\tat club.staircrusher.accessibility.application.port.in.BlurFacesInLatestPlaceAccessibilityImagesUseCase.handle(BlurFacesInLatestPlaceAccessibilityImagesUseCase.kt:51)\n\tat club.staircrusher.accessibility.application.port.in.BlurFacesInLatestPlaceAccessibilityImagesUseCase.handleAsync$lambda$0(BlurFacesInLatestPlaceAccessibilityImagesUseCase.kt:35)\n\tat io.opentelemetry.javaagent.bootstrap.executors.ContextPropagatingRunnable.run(ContextPropagatingRunnable.java:37)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)\n\tat java.base/java.lang.Thread.run(Thread.java:1589)\nCaused by: java.lang.OutOfMemoryError: Physical memory usage is too high: physicalBytes (993M) > maxPhysicalBytes (990M)\n\tat org.bytedeco.javacpp.Pointer.deallocator(Pointer.java:741)\n\tat org.bytedeco.javacpp.Pointer.init(Pointer.java:127)\n\tat org.bytedeco.javacpp.BytePointer.allocateArray(Native Method)\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:126)\n\t... 19 common frames omitted\n"}
{"timestamp":"2024-10-09 23:37:11.210Z","level":"ERROR","thread":"pool-13-thread-467","mdc":{"trace_id":"275b71898a309802ae5a9fd51ad8e3aa","trace_flags":"01","span_id":"9674457267975e69"},"logger":"club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService","message":"Detecting and blurring faces in the image(https://scc-prod-accessibility-images.s3.ap-northeast-2.amazonaws.com/20240523102930_0B64857BFE7C480C.jpeg) failed.","exception":"java.lang.OutOfMemoryError: Cannot allocate new BytePointer(1299993): totalBytes = 16, physicalBytes = 993M\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:134)\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:99)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageProcessor.blur(AccessibilityImageProcessor.kt:17)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService.detectAndBlurFaces(AccessibilityImageFaceBlurringService.kt:70)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService.access$detectAndBlurFaces(AccessibilityImageFaceBlurringService.kt:13)\n\tat club.staircrusher.accessibility.application.port.in.AccessibilityImageFaceBlurringService$detectAndBlurFaces$3.invokeSuspend(AccessibilityImageFaceBlurringService.kt)\n\tat kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)\n\tat kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)\n\tat kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)\n\tat kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)\n\tat kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)\n\tat kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)\n\tat kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)\n\tat kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)\n\tat club.staircrusher.accessibility.application.port.in.BlurFacesInLatestPlaceAccessibilityImagesUseCase.handle(BlurFacesInLatestPlaceAccessibilityImagesUseCase.kt:51)\n\tat club.staircrusher.accessibility.application.port.in.BlurFacesInLatestPlaceAccessibilityImagesUseCase.handleAsync$lambda$0(BlurFacesInLatestPlaceAccessibilityImagesUseCase.kt:35)\n\tat io.opentelemetry.javaagent.bootstrap.executors.ContextPropagatingRunnable.run(ContextPropagatingRunnable.java:37)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)\n\tat java.base/java.lang.Thread.run(Thread.java:1589)\nCaused by: java.lang.OutOfMemoryError: Physical memory usage is too high: physicalBytes (993M) > maxPhysicalBytes (990M)\n\tat org.bytedeco.javacpp.Pointer.deallocator(Pointer.java:741)\n\tat org.bytedeco.javacpp.Pointer.init(Pointer.java:127)\n\tat org.bytedeco.javacpp.BytePointer.allocateArray(Native Method)\n\tat org.bytedeco.javacpp.BytePointer.<init>(BytePointer.java:126)\n\t... 19 common frames omitted\n"}

Checklist

  • 충분한 양의 자동화 테스트를 작성했는가?
    • 계단정복지도 서비스는 사이드 프로젝트로 진행되는 만큼 충분한 QA 없이 배포되는 경우가 많습니다. 따라서 자동화 테스트를 꼼꼼하게 작성하는 것이 서비스 품질을 유지하는 데 매우 중요합니다.

@jyoo0515 jyoo0515 requested a review from a team as a code owner October 10, 2024 08:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant