Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suppress recoverable errors for inactive addresses #8290

Open
steven-sheehy opened this issue May 11, 2024 · 0 comments
Open

Suppress recoverable errors for inactive addresses #8290

steven-sheehy opened this issue May 11, 2024 · 0 comments
Labels
bug Type: Something isn't working contract Area: Smart contracts

Comments

@steven-sheehy
Copy link
Member

steven-sheehy commented May 11, 2024

Description

Previously, consensus nodes were required to always send us shard.realm.num entity IDs in the TransactionRecord. With the EVM equivalence work, contract calls are now allowed against inactive EVM addresses which will result in no changes to state. Since these inactive addresses have never been created on consensus nodes, there's no shard.realm.num ID to convert to and consensus nodes put shard.realm.address in the TransactionRecord. Mirror node attempts to map this back to its numeric form and fails and logs a recoverable error which causes an alert.

Steps to reproduce

https://hashscan.io/testnet/transaction/1714759950.957066003
https://hashscan.io/testnet/account/0x7e8a489e17fc9eaec4a4b0ade5acf7f31eb5b961?pt=1

Additional context

Recoverable Error Logs for testnet-na/testnet/mirror-importer-544d7857c7-f9kdk have reached 2 error messages/s in a 1m period

2024-05-10T22:12:00.241Z ERROR pool-12-thread-2 c.h.m.i.util.Utility Recoverable error. Entity not found for EVM address 7e8a489e17fc9eaec4a4b0ade5acf7f31eb5b961 
2024-05-10T22:12:00.241Z ERROR pool-12-thread-2 c.h.m.i.util.Utility Recoverable error. Invalid contract id for contract result at 1714759950957066003 
receipt {
  status: SUCCESS
  contractID {
    evm_address: "~\212H\236\027\374\236\256\304\244\260\255\345\254\367\363\036\265\271a"
  }
  exchangeRate {
    currentRate {
      hbarEquiv: 30000
      centEquiv: 340516
      expirationTime {
        seconds: 1714762800
      }
    }
    nextRate {
      hbarEquiv: 30000
      centEquiv: 338602
      expirationTime {
        seconds: 1714766400
      }
    }
  }
}
transactionHash: "\355q\025l\310\032\305\r\257\263\347\271\206\300\026\367\235\2359\325\2226 \362\216\263\000}E]\r\035&\225\301v:\376O-(\033NAo\233\370\a"
consensusTimestamp {
  seconds: 1714759950
  nanos: 957066003
}
transactionID {
  transactionValidStart {
    seconds: 1714759942
    nanos: 398861689
  }
  accountID {
    accountNum: 3038782
  }
}
transactionFee: 948003430
contractCallResult {
  contractID {
    evm_address: "~\212H\236\027\374\236\256\304\244\260\255\345\254\367\363\036\265\271a"
  }
  bloom: "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
  gasUsed: 12000000
  gas: 15000000
  functionParameters: ".\230&\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nIGNHMKYBAT\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
  sender_id {
    accountNum: 3432148
  }
  signer_nonce {
    value: 109
  }
}
transferList {
  accountAmounts {
    accountID {
      accountNum: 3
    }
    amount: 1719755
  }
  accountAmounts {
    accountID {
      accountNum: 98
    }
    amount: 941655308
  }
  accountAmounts {
    accountID {
      accountNum: 800
    }
    amount: 4628367
  }
  accountAmounts {
    accountID {
      accountNum: 3038782
    }
    amount: -48003430
  }
  accountAmounts {
    accountID {
      accountNum: 3432148
    }
    amount: -900000000
  }
}
ethereum_hash: "\206\370\033/\230\032\360z\201\2206\330\212\263\212F\252\037\204;v\f0i= \2558m\"7\241"

Hedera network

testnet

Version

v0.103.0

Operating system

None

@steven-sheehy steven-sheehy added bug Type: Something isn't working contract Area: Smart contracts labels May 11, 2024
@steven-sheehy steven-sheehy changed the title Suppress recoverable errors in the logs for inactive addresses Suppress recoverable error for inactive addresses May 11, 2024
@steven-sheehy steven-sheehy changed the title Suppress recoverable error for inactive addresses Suppress recoverable errors for inactive addresses May 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Type: Something isn't working contract Area: Smart contracts
Projects
Status: 📋 Backlog
Development

No branches or pull requests

1 participant