메뉴 건너뛰기

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

번호 제목 날짜 조회 수
190 oozie job 구동시 JA009: User: hadoop is not allowed to impersonate hadoop 오류나는 경우 2014.06.02 3304
189 ./spark-sql 실행시 "java.lang.NumberFormatException: For input string: "1s"오류발생시 조치사항 2016.06.09 3299
188 php auction 프로그램 2017.05.14 3297
187 github에 있는 프로젝트와 로컬에서 작업한 프로젝트 합치기 2016.11.22 3295
186 Cleaning up the staging area file시 'cannot access' 혹은 'Directory is not writable' 발생시 조치사항 2017.05.02 3291
185 Could not compute split, block input-0-1517397051800 not found형태의 오류가 발생시 조치방법 2018.02.01 3290
184 JAVA_HOME을 명시적으로 지정하는 방법 2018.06.04 3284
183 solrcloud에 solrdf1.1설치하고 테스트 하기 2016.04.22 3284
182 hadoop 기반 문서 검색 2014.09.25 3279
181 impala,hive및 hdfs만 접근가능하고 파일을 이용한 테이블생성가능하도록 hue 권한설정설정 2018.09.17 3273
180 bin/cassandra -f -R로 startup할때 NullPointerException오류가 나면 조치할 내용 2016.04.14 3273
179 데이타 분석및 머신러닝에 도움이 도움이 되는 사이트 2016.11.04 3264
178 [SBT] SBT 사용법 정리(링크) 2016.08.04 3259
177 pom.xml에서 build.gradle로 변환 2015.09.14 3258
176 spark2.0.0에서 hive 2.0.1 table을 읽어 출력하는 예제 소스(HiveContext, SparkSession, SQLContext) 2017.03.09 3254
175 hadoop클러스터를 구성하던 서버중 HA를 담당하는 서버의 hostname등이 변경되어 문제가 발생했을때 조치사항 2016.07.29 3254
174 로컬의 라이브러리파일들을 dependency에 포함시키는 방법 2016.08.09 3251
173 [hive] hive.tbls테이블의 owner컬럼값은 hadoop.security.auth_to_local에 의해서 filtering된다. 2022.04.14 3249
172 [shell script]test.txt에 space로 분리된 내용을 일어들이는 예제 2017.02.21 3240
171 [Elephas] Jena Elephas를 이용하여 Spark에서 rdfTriples의 RDD를 만들고 RDD관련 작업하는 샘플소스 2016.08.10 3238
위로