⚡ Bolt: List.any{}에서 Iterator 할당을 방지하기 위해 arrayOf로 변경 - #823
seonghobae wants to merge 1 commit into
Conversation
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
|
Warning Review limit reachedNext included review available in 26 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
💡 What:
main.kt의Constants객체 내defaultSensitiveExtensions속성을List(listOf)에서Array(arrayOf)로 변경하고, 사용되지 않는@JvmField어노테이션을 제거했습니다.🎯 Why: 디렉토리 순회 중 민감한 파일 확장자를 필터링할 때(
.any {}사용),List에 대한 인라인 함수 호출은 내부적으로Iterator객체를 매번 할당하여 핫 루프(hot loop)에서 가비지 컬렉션(GC) 압력을 높이는 원인이 됩니다.📊 Impact:
Array의.any {}함수는 원시 인덱스 기반 루프(primitive indexed loop)로 컴파일되므로Iterator객체 할당을 완전히 제거합니다. 이를 통해 수많은 파일이 포함된 대규모 디렉토리를 크롤링할 때 메모리 오버헤드를 줄이고 성능을 향상시킵니다.🔬 Measurement: 디렉토리 트리 생성에 대한 프로파일링 및 벤치마크 테스트, 특히 크롤링 중 발생하는 GC 로그를 통해 객체 할당 감소 효과를 검증할 수 있습니다. (테스트 성공 확인 완료)
PR created automatically by Jules for task 11282086876453579377 started by @seonghobae