TransactionHash에서 0x09 오류가 발생하였는데 확인이 필요하여 문의드립니다

안녕하세요.

메인넷에 transfer를 호출하여 정상적인 응답을 받아서 서비스를 운영중인데
특정 tx에 대한 정보가 계속해서 "0x09"응답이 발생하였습니다.

Tx는

  1. 0xf150d027ac3acda4960a9f186f0138c3805fb8eddb8fc6a1c1d5c437165e9889
  2. 0x8da8a437aef84997a2d42d404bd9dadb9866e7593c8bdca0dce8e2f0876fa40c
  3. 0x451967a8358d63cc6e1670ddd5173bb04b1b53a175269514bb8595607032e8d0
    이렇게 3가지 Tx입니다.

from, feepayer, amount는 모두 동일하게 설정하고 transfer함수를 호출하였습니다.
저희쪽에서는 원인을 알수없어 확인요청드립니다.

감사합니다.

@ToTheMoon

안녕하세요.

우선 문제를 파악하기 위해 소스코드 및 사용하시는 Smart Contract Solidity 소스코드 공유를 부탁드립니다.

참고로 주신 Tx는 Smart Contract를 실행할 때 Revert가 발생한 케이스입니다.

트랜잭션은 네트워크에 잘 전송이 되었으나 EVM에서 해당 Smart Contract 코드를 실행하면서 문제가 생겼다고 볼 수 있겠습니다.

따라서 주로 점검 하셔야 하는 포인트는 아래와 같습니다 :slight_smile:

  • 호출하신 스마트 컨트랙트의 함수 로직 파악
  • 어디서 Revert가 발생했을 거 같은지 파악 그리고 재현 테스트

이 부분들을 위주로 원인을 파악해주신 뒤에 답글 달아주시면 감사하겠습니다. :+1:

@Denver

확인해보니 저희쪽 문제로 발생한 이슈인거 같아 확인이 조금 더 필요한 것 같습니다.

추가적으로 확인차 질문드리고 싶은 사항이 있는데
"0x1"이 정상적인 트랜잭션 상태값으로 알고 있습니다
정상적인 트랜잭션인 경우 log가 빈값([ ])으로 전달되는 경우도 있을까요??

@ToTheMoon

상태 값이 0x1 이라는 것은 말씀하신 것처럼 트랜잭션이 Revert 없이 잘 처리되었다는 걸 의미합니다.

트랜잭션의 실행 결과로 나오는 Transaction Receipt에 담겨 있는 Logs에 값이 있냐 없냐의 여부는 @ToTheMoon 님께서 호출하시는 Contract의 함수 내에서 Event를 호출하냐 안하냐에 달려 있습니다.

즉 Event 호출을 별도로 넣어두시지 않았다면 로그가 없는 게 맞습니다.
이 부분을 체크해보시기 바랍니다 :slight_smile:

감사합니다.

1개의 좋아요