관리 메뉴

멍개의 연구소

[ethereum] transaction 발생 시 - Warning! Error encountered during contract execution [Out of gas] 에러 본문

블록체인

[ethereum] transaction 발생 시 - Warning! Error encountered during contract execution [Out of gas] 에러

멍개. 2022. 8. 27. 16:25

이더리움에서 스마트 컨트랙트를 개발하다보면 상당히 다양한 에러를 접할 수 있습니다. 그중에 하나가 gas와 관련된 에러입니다.

● 정상 Transaction VS 비정상 Transaction

우선 정상적인 transaction과 비정상적으로 처리된 transaction을 비교해보겠습니다.

· 정상 Transaction

정상적인 transaction은 Success 상태가 됩니다.

· 비정상 Transaction

gas 문제로 발생된 트랜잭션 실패는 Out of gas라고 표기됩니다. 과연 이 문제가 왜 발생할까요??

적색으로 박스친 부분을 명심해야 합니다. Gas Used By Transaction(해당 트랜잭션을 실행하면서 소모한 가스)가 Gas Limit을 넘치면 앞의 에러처럼 발생합니다. 이때는 해결법이 매우매우 간단합니다.

· 해결방법

해결 방법은 gas limit(가스한도)를 올려서 트랜잭션을 발생하면 됩니다. 앞의 이미지는 metamask 기준이고 사용하는 지갑에서 gas limit(가스한도)를 더 높여주고 실행하면 됩니다.

참고로 gas limit이 21000은 이더전송을 의미합니다. 또한, gas는 ethereum에서 수수료를 지불하는 수단입니다.

Comments