Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다.
문의사항은 gooper@gooper.com로 메일을
보내주세요.
Cloudera CDH/CDP [Hive canary]Hive에 Metastore canary red alert및 hive log파일에 Duplicate entry '123456' for key 'NOTIFICATION_LOG_EVENT_ID'가 발생시 조치사항
MariaDB를 metastore DB로 사용하는 경우 msyqldump -uroot -p --all-databases > backup.sql로 전체DB를 백업했다가 "nohup mysql -uroot -p < backup.sql 2>&1 &"로 복구를 수행하면 보통 12시간 정도 시간이 걸린다.
(/etc/mysql.cnf에서 max_allowed_packet = 1000M(default 32M), bulk_insert_buffer_size = 256M, key_buffer_size = 100G(가용 메모리의 60%) 로 설정하고 복구함)
DB가 복구된후 CDP의 CM화면에 보면 Hive에 Metastore canary관련 red alert가 뜨면서 hive METASTORE의 log 파일을 보면 ERROR... Duplicate entry '123456' for key 'NOTIFICATION_LOG_EVENT_ID'가 보인다.
이때는 다음과 같이 조치해준다.
hive.NOTIFICATION_SEQUENCE테이블의 next_event_id를 "select max(event_id)+1 from hive.NOTIFICATION_LOG"의 값으로 update시켜준다.