메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, 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

번호 제목 글쓴이 날짜 조회 수
110 [TLS/SSL]Kudu Master 설정하기 총관리자 2022.05.13 61
109 Scala버젼 변경 혹은 상황에 맞게 Spark소스 컴파일하기 총관리자 2016.05.31 67
» [impala]쿼리 수행중 발생하는 오류(due to memory pressure: the memory usage of this transaction, Failed to write to server) gooper 2022.10.05 67
107 kudu hms check 사용법(예시) 총관리자 2021.10.22 69
106 Scala를 이용한 Streaming예제 총관리자 2018.03.08 69
105 small file 한개 파일로 만들기(text file 혹은 parquet file의 테이블) gooper 2022.07.04 75
104 How-to: Tune Your Apache Spark Jobs (Part 2) file 총관리자 2016.10.31 77
103 Query Status: Sender xxx.xxx.xxx.xxx timed out waiting for receiver fragment instance: 1234:cdsf, dest node: 10 의 오류 원인및 대응방안 총관리자 2021.11.03 77
102 파일끝에 붙는 ^M 일괄 지우기(linux, unix(AIX)) 혹은 파일내에 있는 ^M지우기 총관리자 2016.09.24 78
101 Query 1234:1234 expired due to client inactivity(timeout is 5m)및 invalid query handle gooper 2022.06.10 81
100 kudu rebalance수행 command예시 총관리자 2022.01.17 85
99 hive의 메타정보 테이블을 MariaDB로 사용하는 경우 table comment나 column comment에 한글 입력시 깨지는 경우 utf8로 바꾸는 방법. gooper 2023.03.10 86
98 우분투 16.04LTS에 Jupyter설치 총관리자 2018.04.17 90
97 impala session type별 표시되는 정보로 구분하는 방법 총관리자 2021.05.25 90
96 Kudu tablet이 FAILED일때 원인 확인 방법 총관리자 2022.01.17 90
95 Impala Admission Control 설정시 쿼리가 사용하는 메모리 사용량 판단 방법 gooper 2023.05.19 92
94 It is indirectly referenced from required .class files 오류 발생시 조치방법 총관리자 2017.03.09 93
93 참고할만한 spark예제를 설명하는 사이트 총관리자 2016.11.11 98
92 spark 2.0.0를 windows에서 실행시 로컬 파일을 읽을때 발생하는 오류 해결 방법 총관리자 2017.01.12 106
91 impala external 테이블 생성시 컬럼과 라인 구분자를 지정하여 테이블 생성하는 예시 총관리자 2020.02.20 107

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로