Skip to main content

Troubleshooting

This topic covers some common troubleshooting steps you can take to identify and resolve problems with your token bridge.

Initialization

TokenBridge: validator address is invalid

  • Error Description: The validator address cannot be zero (entirely zeros).
  • Solution: Set a valid, non-zero validator address.

Ownership

TokenBridge: renounce ownership is not allowed

  • Error Description: Renouncing ownership is not permitted.
  • Solution: Ownership cannot be renounced. Verify the ownership requirements.

Setting blockchain RID

TokenBridge: blockchain RID is invalid

  • Error Description: The blockchain RID cannot be zero (entirely zeros).
  • Solution: Set a valid, non-zero blockchain RID.

Token Allowance

TokenBridge: token address is invalid

  • Error Description: The token address cannot be zero (entirely zeros).
  • Solution: Verify the token address and ensure it is not zero.

TokenBridge: not allowed token

  • Error Description: Operations with the token are not permitted.
  • Solution: Call the allowToken() function first to enable the token.

Mass exit

TokenBridge: mass exit already set

  • Error Description: Mass exit has already been triggered.
  • Solution: Mass exit should only be triggered once.

Withdrawal request

TokenBridge: event hash is invalid

  • Error Description: The withdrawal event hash cannot be zero (entirely zeros).
  • Solution: Verify the event hash and ensure it is not zero.

TokenBridge: withdraw request status is not withdrawable

  • Error Description: The withdrawal event must have the Withdrawable status to be processed.
  • Solution: Ensure the withdrawal event status is set to Withdrawable.

TokenBridge: withdraw request status is not pending

  • Error Description: The withdrawal event must have the Pending status to be withdrawable.
  • Solution: Ensure the withdrawal event status is set to Pending.

TokenBridge: blockchain RID is not set

  • Error Description: The blockchain RID value is not set.
  • Solution: Call the setBlockchainRid() function first.

TokenBridge: event hash was already used

  • Error Description: A withdrawal event on the Chromia side might be used as a withdrawal request only once.
  • Solution: Use a unique event hash for each withdrawal request.

Postchain errors

TokenBridge: cannot withdraw request after the mass exit block height

  • Error Description: Withdrawal requests cannot be processed after the mass exit block height.
  • Solution: Try to withdraw funds by snapshot (withdrawBySnapshot()) or withdraw funds back to Chromia (withdrawToPostchain()).

TokenBridge: block signature is invalid

  • Error Description: The signature of the block containing the withdrawal event is invalid.
  • Solution: Check the withdrawal event data on the Chromia side. Ensure the validator set on the EVM side matches the validator list hosted in the IValidator contract of the token bridge.

TokenBridge: invalid merkle proof

  • Error Description: The provided merkle proof for the withdrawal event is invalid.
  • Solution: Check the withdrawal event data on the Chromia side.

TokenBridge: incorrect network ID

  • Error Description: The network ID provided is incorrect.
  • Solution: Verify the provided network ID matches the expected value.

TokenBridge: invalid amount to make request withdraw

  • Error Description: Invalid amount to make request withdraw (amount less than or equal to 0).
  • Solution: Ensure the withdrawal amount is greater than zero.

Withdrawal and withdrawal back to Chromia

TokenBridge: no fund for the beneficiary

  • Error Description: There is no withdrawal request for the specified beneficiary or transaction sender.
  • Solution: Verify a withdrawal request exists for the beneficiary.

TokenBridge: not mature enough to withdraw the fund

  • Error Description: The requested withdrawal has not met the required number of block confirmations.
  • Solution: Ensure the requested withdrawal has the required number of block confirmations.

TokenBridge: fund is pending or was already claimed

  • Error Description: The requested withdrawal is either pending or has already been executed.
  • Solution: Check the status of the requested withdrawal to ensure it is not pending or already executed.

Withdraw by snapshot

TokenBridge: snapshot already used

  • Error Description: The specified snapshot has already been used.
  • Solution: Use a unique, unused snapshot for each withdrawal.

TokenBridge: snapshot data is not correct

  • Error Description: The snapshot data is incorrect.
  • Solution: Verify the snapshot data matches the Chromia side withdrawal event data.

TokenBridge: snapshot block should be the same with mass exit block

  • Error Description: The snapshot block does not match the block on which the Mass Exit was triggered.
  • Solution: Ensure the snapshot block matches the mass exit block.

Emergency withdrawal

TokenBridge: token address is invalid

  • Error Description: Token address value must not be equal to zero value (consisting entirely of zeros).
  • Solution: Set a valid, non-zero token address.

TokenBridge: beneficiary address is invalid

  • Error Description: Beneficiary address value must not be equal to zero value (consisting entirely of zeros).
  • Solution: Set a valid, non-zero beneficiary address.

TokenBridge: cannot do emergency withdrawal until 90 days after mass exit

  • Error Description: Emergency withdrawal can only be executed after a 90-day period from the Mass Exit event.
  • Solution: Emergency withdrawal is only available after 90 days from the mass exit event.