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

feat: S3 오브젝트 벌크 삭제 시 1000건 단위로 삭제되도록 변경 #153

Merged
merged 2 commits into from
Jan 14, 2024

Conversation

kth990303
Copy link
Member

개요

  • 매일 오전 4시 경, 사용하지 않는 이미지를 삭제할 때마다 아래 에러가 발생합니다.
ERROR [org.springframework.aop.interceptor.SimpleAsyncUncaughtExceptionHandler.handleUncaughtException:39] - Unexpected exception occurred invoking async method: public void mocacong.server.support.AwsS3Uploader.deleteImages(mocacong.server.service.event.DeleteNotUsedImagesEvent)
com.amazonaws.services.s3.model.AmazonS3Exception: The XML you provided was not well-formed or did not validate against our published schema (Service: Amazon S3; Status Code: 400; Proxy: null)

이로 인해, 불필요한 에러 로그가 매일 쌓이고 있습니다.
(고객 입장에선 문제없지만, 로그 분석하는 데에 불필요한 에러로그가 쌓이는 상황)
image

작업사항

  • 1,000건 단위로 이미지를 삭제하도록 작업했습니다.
  • 로컬에서 S3가 미연동돼있으므로, 그리고 매일 오전 4시에 배치로 작동되는 코드이므로, 관련 테스트코드는 생략합니다.
  • 로컬에서 더이상 에러가 나지 않는 걸 확인했습니다.
image

주의사항

관련문서

@kth990303 kth990303 added 사소한 버그 사용자가 눈치채지 못할 정도의 사소한 버그 인프라 인프라 및 데브옵스 세팅 labels Jan 8, 2024
@kth990303 kth990303 self-assigned this Jan 8, 2024
Copy link

sonarqubecloud bot commented Jan 8, 2024

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Copy link
Member

@Ji-soo708 Ji-soo708 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

해당 에러에 대해 찾아보니 S3가 삭제 요청 날릴 때 최대 1000개의 이미지 키에 대해서만 삭제가 가능해서 생기는 문제로 보이네요. 잘 해결해주셔서 바로 approve합니다! 수고하셨어요. 👍

Copy link
Contributor

@jung-woo-kim jung-woo-kim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

작업사항 보고 삭제할 이미지 파일이 1000개가 넘을 때 이 에러가 발생할 것으로 예상이 됐었는데요. 지금 삭제할 이미지가 1000개가 넘는 경우가 있었을까? 싶은데, 우선 작업 맥락과 결과는 이해가 되어서 approve 남깁니다! 👍

@jung-woo-kim jung-woo-kim merged commit 22d0115 into develop Jan 14, 2024
3 checks passed
@Ji-soo708 Ji-soo708 deleted the MOCACONG-365-백-S3-delete-chunk-thousand branch January 17, 2024 15:01
jung-woo-kim added a commit that referenced this pull request Feb 29, 2024
* docs: change README.md

* style: fix name

* docs: update readme

* Update README.md

* Update README.md

* Update README.md

* docs: 모카콩 README 소개 부분 수정 작업 (#152)

* feat: S3 오브젝트 벌크 삭제 시 1000건 단위로 삭제되도록 변경 (#153)

* feat: List 파티셔닝을 위한 Guava 라이브러리 추가

mvn: https://mvnrepository.com/artifact/com.google.guava/guava/32.1.3-jre

* feat: S3 오브젝트 삭제 시, 1000건 단위로 삭제하도록 기능 구현

---------

Co-authored-by: 김태현 <[email protected]>

---------

Co-authored-by: Jisu Lim <[email protected]>
Co-authored-by: Lea <[email protected]>
Co-authored-by: TaeHyeon Kim <[email protected]>
Co-authored-by: 김태현 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
사소한 버그 사용자가 눈치채지 못할 정도의 사소한 버그 인프라 인프라 및 데브옵스 세팅
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants