트랜잭션에 실패하는 다양한 이유들이 궁금합니다.
암호화폐를 전송하다가 보면 트랜잭션에 실패 하는 경우가 종종 생기더라구요 단순히 수수료 부족인가 싶기도 하였지만 이게 상황에 따라 실패 원인이 다양한것 같았습니다. 트랜잭션에 실패하는 원인들에 대하여 알기 쉽게 설명해 주시면 감사하겠습니다.
이더리움지갑 트랜잭션 실패원인은
아래와 같은 원인이 있습니다.
1.Out of Gas(가스부족)
out of gas'로 실패한 경우는 거래 중에 설정한 가스한도(Gas Limit)가
거래수행에 필요한 가스보다 적음을 의미합니다
- 'Out of Gas'란 오류의 경고가 나오는 원인은 뭘까요??
불충분한 가스한도를 설정했기 때문.
계약과 상호작용하는 경우, 최소 가스 한도는 21,000을 초과해야합니다. (기본 21,000보다 가스 한도를 높게 설정하세요)
계약 이행이 필요한 최소 가스한도를 초과하여 설정하세요.
계약 실행 오류가 발생했지만, VM 실행(거래를 진행하는 시스템)은 설정한 가스한도가 모두 소진될 때가지 계속 됩니다.2. Bad Jump Destination(잘못된 목적지 입력)
이 오류의 경우는, 계약과 기본적인 성격 관련있습니다.
이는 계약코드의 기술요소로 인해 발생하는 일반적 오류일 수 있습니다.
추가 도움을 받으려면 계약 작성자에게 문의해야합니다.
흠 특별한 원인이 아닌 일반적인 기술요소로 인한 오류인데요.이런 경우 시간텀을 둔 다음에 다시 계약을 시도해보거나, 문의를 해보는게 좋을 듯 합니다.
3. 잘못된 명령 (Bad Instruction)
이 오류도 계약의 성격과 관련있으며 계약코드의 기술요소로 인해 발생하는 일반적인 오류 일 수 있습니다.
추가 도움은 계약작성자에게 문의하세요
-이런 잘못된 명령이 나오는 이유는?
계약 실행 중 논리적인 오류를 나타냅니다.
토큰 계약과 상호작용하는 경우 다음과 같은 일도 발생할 수 있다.
토큰세일과 ICO 계약이 상호작용한다면 토큰을 전송할 수 없다.
아래와 같은 경우이다.
ICO has yet to start 아쇼 아직 시작 전
ICO has ended 아쇼 끝남
ICO has reached its maximum contribution limit 아쇼 최대기부한도에 도달했음
4. 토큰 전송 실패(ERC-20 Token Transfer might have Failed)
ERC-20 토큰 전송이 실패했을 수있는 가장 일반적인 이유는 다음과 같습니다.
토큰 계약이 잠겨 있습니다 (토큰은 아직 전송 할 수 없습니다).
계정에서 보내는 토큰 잔액이 충분하지 않습니다.
잔액이 실제로 차감 되었더라도 토큰 계약에서는 전송 이벤트가 발생하지 않습니다. (완전히 ERC-20을 준수하지는 않음)