You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
func (m*SimpleTxManager) send(ctx context.Context, tx*types.Transaction) (*types.Receipt, error) {
m.logger.Debug("Estimating gas and nonce")
tx, err:=m.estimateGasAndNonce(ctx, tx)
iferr!=nil {
returnnil, err
}
bumpedGasTx:=&types.DynamicFeeTx{
To: tx.To(),
Nonce: tx.Nonce(),
GasFeeCap: tx.GasFeeCap(),
GasTipCap: tx.GasTipCap(),
Gas: uint64(float64(tx.Gas()) *m.gasLimitMultiplier),
Value: tx.Value(),
Data: tx.Data(),
}
// When the wallet is fireblocks wallet, it returns uuid as the txID.txID, err:=m.wallet.SendTransaction(ctx, types.NewTx(bumpedGasTx))
iferr!=nil {
returnnil, errors.Join(errors.New("send: failed to estimate gas and nonce"), err)
}
return&types.Receipt{
// TxHash become an invalid hex because converting UUID to hex. // Then the wait for receipt will be called with invalid txID and run in infinite loopTxHash: common.HexToHash(txID),
}, nil
}
The fireblocks wallet returns UUID instead of hex when call SendTransaction. After that it is trying to convert hash assuming it is a hex. Then the converted invalid value pass for querying receipt. It creates an infinite loop.
To Reproduce
Register operator with EigenLayer using fireblocks
Introduce `isTxIdHex` to handle tx ID formats in transaction receipt retrieval. Updated relevant function signatures and logic to support this flag and added necessary changes across dependent tests and usages.
Introduce `isTxIdHex` to handle tx ID formats in transaction receipt retrieval. Updated relevant function signatures and logic to support this flag and added necessary changes across dependent tests and usages.
induwarabas
added a commit
to induwarabas/eigensdk-go
that referenced
this issue
Jan 6, 2025
…n wallets
This change introduces an IsHexTxID method to the Wallet interface, with implementations for privateKeyWallet, fireblocksWallet, and MockWallet. The method is used to handle differing TxID formats (hexadecimal or custom) when processing transaction receipts. Adjustments were made to the SimpleTxManager to incorporate this new method for better compatibility.
Describe the bug
The fireblocks wallet returns UUID instead of hex when call
SendTransaction
. After that it is trying to convert hash assuming it is a hex. Then the converted invalid value pass for querying receipt. It creates an infinite loop.To Reproduce
Register operator with EigenLayer using fireblocks
Expected behavior
Registration complete successfully
OS details
The text was updated successfully, but these errors were encountered: