메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


다음과 같은 오류가 발생하면서 쿼리가 실패할때 확인 및 조치 내용을 정리합니다.  
<오류내용>
Kudu error(s) reported, first error: Timed out: Failed to write batch of 838 ops to tablet 754b956462d840f6b2a7065efc817900 after 589 attempt(s): Failed to write to server: (no server available):
Write(tablet: 754b956462d840f6b2a7065efc817900, num_ops: 838, num_attempts: 589) passed its deadline: Illegal state: Tablet not RUNNING: FAILED: IO error: failing tablet
  Impala Version: impalad version 3.2.0-cdh6.3.4 RELEASE (build 5fe4723ad8fe1c3aaecbeb32c7533048be2420cf)

<확인사항>
1. datanode12 호스트의 TServer 로그에서 실패한 태블릿 ID 1개(754b956462d840f6b2a7065efc817900)를 확인했으며 다음 메시지를 볼 수 있습니다.
"W0924 02:47:02.611682 3793 leader_election.cc:348] T 754b956462d840f6b2a7065efc817900 P 4755be7391934535b21ec5be91e87bdd [CANDIDATE]: Term 9109 pre-election: Tablet error from VoteRequest() call to peer 9c863beb35d64899a11b0a570eb19cc3 (datanode05.gooper.com:7050): Illegal state: cannot vote while shut down"

2. 이번에는 datanode05에서 피어 Tserver 로그를 확인했습니다. 같은 날 02:47 이전에 다음과 같은 경고 메시지가 많이 있음을 알 수 있습니다.
"W0924 02:43:43.869937 18241 transaction_tracker.cc:156] transaction on tablet de58f99d829b43f88f3c527de4009904 rejected due to memory pressure: the memory usage of this transaction (10493974) plus the current consumption (62963844) exceeds the transaction memory limit (67108864) or the limit of an ancestral memory tracker. [suppressed 18 similar messages]"

3. 위의 경고의 결과로 트랜잭션 커밋이 지연되는 것을 볼 수 있습니다.
W0924 02:45:36.688170 13986 tablet_replica.cc:862] Time spent Committing in-flights took a long time.: real 15.343s user 0.000s sys 0.001s

4. Tablet_transaction_memory_limit_mb의 기본값을 초과하여 태블릿 선택에 실패했습니다.
https://kudu.apache.org/docs/configuration_reference.html#kudu-tserver_tablet_transaction_memory_limit_mb

<조치내용>
Tablet_transaction_memory_limit_mb의 값을 64M에서 128M으로 늘리고 Tablet Sever들을 모두 restart하고 결과를 모니터링 하면 됩니다. 
CM ->Kudu -> Configuration -> Tablet Server Advanced Configuration Snippet (Safety Valve) for gflagfile
--tablet_transaction_memory_limit_mb =128

번호 제목 날짜 조회 수
407 insert hbase by hive ... error occured after 5 hours..HMaster가 뜨지 않는 장애에 대한 복구 방법 2014.04.29 9668
406 oozie가 말하는 start시간은..서버에서 확인되는 시간이 아닙니다. 2014.05.14 4559
405 sqoop export/import등을 할때 driver를 못찾는 오류가 발생하면... 2014.05.15 4493
404 sqoop에서 oracle관련 작업할때 테이블명, 사용자명, DB명은 모두 대문자로 사용할것 2014.05.15 4090
403 dual table만들기 2014.05.16 4246
402 특정파일이 생성되어야 action이 실행되는 oozie job만들기(coordinator.xml) 2014.05.20 6728
401 source의 type을 spooldir로 하는 경우 해당 경로에 파일이 들어오면 파일단위로 전송함 2014.05.20 4445
400 hive에서 insert overwrite directory.. 로 하면 default column구분자는 'SOH'혹은 't'가 됨 2014.05.20 3595
399 import 혹은 export할때 hive파일의 default 구분자는 --input-fields-terminated-by "x01"와 같이 지정해야함 2014.05.20 6701
398 hiverserver2기동시 connection refused가 발생하는 경우 조치방법 2014.05.22 4643
397 hive query에서 mapreduce돌리지 않고 select하는 방법 2014.05.23 4430
396 oozie의 meta정보를 mysql에서 관리하기 2014.05.26 4968
395 hive job실행시 meta정보를 원격의 mysql에 저장하는 경우 설정방법 2014.05.28 5098
394 hadoop및 ecosystem에서 사용되는 명령문 정리 2014.05.28 6435
393 oozie job 구동시 JA009: User: hadoop is not allowed to impersonate hadoop 오류나는 경우 2014.06.02 3306
392 Cannot create /var/run/oozie/oozie.pid: Directory nonexistent오류 2014.06.03 4451
391 2개 data를 join하고 마지막으로 code정보를 join하여 결과를 얻는 mr 프로그램 2014.06.30 3426
390 banana pi에(lubuntu)에 hadoop설치하고 테스트하기 - 성공 file 2014.07.05 5344
389 org.apache.hadoop.security.AccessControlException: Permission denied: user=hadoop, access=WRITE, inode="":root:supergroup:rwxr-xr-x 오류 처리방법 2014.07.05 5385
388 access=WRITE, inode="staging":ubuntu:supergroup:rwxr-xr-x 오류 2014.07.05 4636
위로