모듈 테스트중에 kafka 프로듀싱은 되는데 컨슈밍은 안되는 이상한 현상이 발생했습니다.
22:12:12.475 [reactive-kafka-...-consumer-1] ERROR reactor.core.scheduler.Schedulers - KafkaScheduler worker in group main failed with an uncaught exception
org.xerial.snappy.SnappyError: [FAILED_TO_LOAD_NATIVE_LIBRARY] no native library is found for os.name=Mac and os.arch=aarch64
at org.xerial.snappy.SnappyLoader.findNativeLibrary(SnappyLoader.java:361)
at org.xerial.snappy.SnappyLoader.loadNativeLibrary(SnappyLoader.java:195)
at org.xerial.snappy.SnappyLoader.loadSnappyApi(SnappyLoader.java:167)
에러메시지를 읽어보면 snappy에서 Mac - aarch64의 native library를 찾을 수 없다고 나옵니다.
해당 라이브러리가 애플 실리콘 아키텍처로 빌드가 되어 있지 않아 그런 건데요, 당시 snappy-java는 1.1.8.1 버전을 사용중이었습니다.
(snappy는 압축 라이브러리이고, snappy-java는 JNI 기반 snappy 자바 구현체입니다.)
해결방법은 snappy-java 라이브러리를 1.1.8.2 이상 버전으로 올리는 겁니다.
1.1.8.2 버전에 픽스됐고, diff를 보면 Makefile에서 해당 내용이 추가된 것을 확인할 수 있습니다.
1.1.8.1 ~ 1.1.8.2 diff입니다
반응형
'프로그래밍 > Java' 카테고리의 다른 글
Caffine cache RemovalListener 작동하지 않을 때 (0) | 2024.01.28 |
---|---|
[Java] 객체 비교 (0) | 2022.07.22 |
[Jitpack] 소개 및 사용법 (배포, 의존성 추가) (0) | 2022.06.01 |
[Java8] 매개변수 3개 이상인 함수형 인터페이스 만드는 법 (0) | 2022.01.08 |
[Java] finally 블록 (0) | 2021.12.23 |