안녕하세요 클레이튼 노드를 운영하는데 질문이 있습니다.
안녕하세요.
특정 블락 넘버에서 balance 정보를 알고 싶어서 이 문서(https://docs.klaytn.com/bapp/json-rpc/api-references/klay/account#klay_getbalance )를 참고하여 두번째 파라미터에 블락 넘버를 넣어서 호출했더니 아래와 같은 에러 메시지를 받았습니다.
{“jsonrpc”:“2.0”,“id”:1,“error”:{“code”:-32000,“message”:“missing trie node 12ff0579b1915575cc8da1b9c4d7823f34d7f0bb9a6fa32bd4cdbbf228e9c010 (path )”}}
구글링을 해보니 노드 자체가 fast node 라서 그런 것 같은데, 제 경우에는 노드를 kend로 돌리고 있었습니다. kend로 노드를 동작시키면 기본적으로 fast node 설정인것인가요? kend.conf에서는 관련 파라미터를 찾지 못하여 질문드립니다.
그리고 제 노드에서 임의의 블럭에서…
위의 링크에 따르면 클레이튼의 경우에는 매 128 블록마다 state정보를 저장하고, 최신 4개의 블록에 대해서 메모리에 state정보를 가지고 있는 것으로 파악됩니다.
최신 4개의 블록이 너무 적다고 생각하여 좀 더 많은 블록 정보가 메모리에 담기기를 희망합니다.
최신 10-30개정도의 블록에 대해 요청을 해야할 일이 있는데 이를 위해 Archive노드를 운영하는 것은 비용이 많이 들어서 지양하고 있습니다.
혹시 configuration 변경을 통해 메모리 상에 저장되는 블록의 개수를 늘릴 수 있는지 궁금합니다.
감사합니다.
1개의 좋아요
Ethan
10월 29, 2020, 4:41오전
2
안녕하세요. Klaytn 블록체인에 문의를 주셔서 감사합니다.
말씀하신데로 기본적으로 full 노드로 설정되며 128블록마다 state를 저장하며 최신 4개에 대해서 cache를 하고 있습니다.
cache에 최신 4블록이 아닌 임의 갯수의 최신 블록 유지로 설정하시기 위해서는 아래 옵션을 사용하시면 되겠습니다.
daemon file에 옵션은 없고 아래와 같이 별도옵션으로 추가해주시면 되겠습니다.
ADDITIONAL="--state.tries-in-memory 50" #최신 50개 블록에 대해서 memory에 state를 유지함
참조: 토큰 전송 관련 오류 "insufficient funds of the sender for value"
감사합니다.
2개의 좋아요