From a71ed3e852602134ec278eca745bd9b892468c1a Mon Sep 17 00:00:00 2001 From: Ben Guidarelli Date: Wed, 12 Apr 2023 13:39:19 -0400 Subject: [PATCH] revert to just jasons patch --- daemon/algod/api/algod.oas2.json | 6 - daemon/algod/api/algod.oas3.yml | 8 - .../api/server/v2/generated/model/types.go | 3 - .../generated/participating/public/routes.go | 363 +++++++++--------- daemon/algod/api/server/v2/handlers.go | 9 +- daemon/algod/api/server/v2/test/helpers.go | 2 +- node/follower_node.go | 2 +- node/node.go | 25 +- 8 files changed, 197 insertions(+), 221 deletions(-) diff --git a/daemon/algod/api/algod.oas2.json b/daemon/algod/api/algod.oas2.json index a7fa7a92ac..3f63053140 100644 --- a/daemon/algod/api/algod.oas2.json +++ b/daemon/algod/api/algod.oas2.json @@ -1423,12 +1423,6 @@ }, { "$ref": "#/parameters/format" - }, - { - "type": "integer", - "description": "Max number of rounds to look back in case the transaction is not in pending pool.", - "name": "lookback", - "in": "query" } ], "responses": { diff --git a/daemon/algod/api/algod.oas3.yml b/daemon/algod/api/algod.oas3.yml index e6fc490f8d..09ed0b08cf 100644 --- a/daemon/algod/api/algod.oas3.yml +++ b/daemon/algod/api/algod.oas3.yml @@ -5643,14 +5643,6 @@ ], "type": "string" } - }, - { - "description": "Max number of rounds to look back in case the transaction is not in pending pool.", - "in": "query", - "name": "lookback", - "schema": { - "type": "integer" - } } ], "responses": { diff --git a/daemon/algod/api/server/v2/generated/model/types.go b/daemon/algod/api/server/v2/generated/model/types.go index e7a26c2e11..eb61d6ad66 100644 --- a/daemon/algod/api/server/v2/generated/model/types.go +++ b/daemon/algod/api/server/v2/generated/model/types.go @@ -1201,9 +1201,6 @@ type GetPendingTransactionsParamsFormat string type PendingTransactionInformationParams struct { // Format Configures whether the response object is JSON or MessagePack encoded. If not provided, defaults to JSON. Format *PendingTransactionInformationParamsFormat `form:"format,omitempty" json:"format,omitempty"` - - // Lookback Max number of rounds to look back in case the transaction is not in pending pool. - Lookback *uint64 `form:"lookback,omitempty" json:"lookback,omitempty"` } // PendingTransactionInformationParamsFormat defines parameters for PendingTransactionInformation. diff --git a/daemon/algod/api/server/v2/generated/participating/public/routes.go b/daemon/algod/api/server/v2/generated/participating/public/routes.go index d4322f3ad1..1bb7c09d39 100644 --- a/daemon/algod/api/server/v2/generated/participating/public/routes.go +++ b/daemon/algod/api/server/v2/generated/participating/public/routes.go @@ -134,13 +134,6 @@ func (w *ServerInterfaceWrapper) PendingTransactionInformation(ctx echo.Context) return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter format: %s", err)) } - // ------------- Optional query parameter "lookback" ------------- - - err = runtime.BindQueryParameter("form", true, false, "lookback", ctx.QueryParams(), ¶ms.Lookback) - if err != nil { - return echo.NewHTTPError(http.StatusBadRequest, fmt.Sprintf("Invalid format for parameter lookback: %s", err)) - } - // Invoke the callback with all the unmarshalled arguments err = w.Handler.PendingTransactionInformation(ctx, txid, params) return err @@ -184,184 +177,184 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL // Base64 encoded, gzipped, json marshaled Swagger object var swaggerSpec = []string{ - "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", + "AAA=", } // GetSwagger returns the content of the embedded swagger specification file diff --git a/daemon/algod/api/server/v2/handlers.go b/daemon/algod/api/server/v2/handlers.go index 7f4765a2d9..e04217e779 100644 --- a/daemon/algod/api/server/v2/handlers.go +++ b/daemon/algod/api/server/v2/handlers.go @@ -101,7 +101,7 @@ type NodeInterface interface { GenesisHash() crypto.Digest BroadcastSignedTxGroup(txgroup []transactions.SignedTxn) error Simulate(txgroup []transactions.SignedTxn) (result simulation.Result, err error) - GetPendingTransaction(txID transactions.Txid, lookbackRounds uint64) (res node.TxnWithStatus, found bool) + GetPendingTransaction(txID transactions.Txid) (res node.TxnWithStatus, found bool) GetPendingTxnsFromPool() ([]transactions.SignedTxn, error) SuggestedFee() basics.MicroAlgos StartCatchup(catchpoint string) error @@ -1177,12 +1177,7 @@ func (v2 *Handlers) PendingTransactionInformation(ctx echo.Context, txid string, return badRequest(ctx, err, errNoValidTxnSpecified, v2.Log) } - lookbackRounds := uint64(0) - if params.Lookback != nil { - lookbackRounds = *params.Lookback - } - - txn, ok := v2.Node.GetPendingTransaction(txID, lookbackRounds) + txn, ok := v2.Node.GetPendingTransaction(txID) // We didn't find it, return a failure if !ok { diff --git a/daemon/algod/api/server/v2/test/helpers.go b/daemon/algod/api/server/v2/test/helpers.go index a109236b69..d0409eadac 100644 --- a/daemon/algod/api/server/v2/test/helpers.go +++ b/daemon/algod/api/server/v2/test/helpers.go @@ -169,7 +169,7 @@ func (m *mockNode) Simulate(txgroup []transactions.SignedTxn) (simulation.Result return simulator.Simulate(txgroup) } -func (m *mockNode) GetPendingTransaction(txID transactions.Txid, lookbackRounds uint64) (res node.TxnWithStatus, found bool) { +func (m *mockNode) GetPendingTransaction(txID transactions.Txid) (res node.TxnWithStatus, found bool) { res = node.TxnWithStatus{} found = true return diff --git a/node/follower_node.go b/node/follower_node.go index ff6062efed..b2e6b58295 100644 --- a/node/follower_node.go +++ b/node/follower_node.go @@ -246,7 +246,7 @@ func (node *AlgorandFollowerNode) Simulate(_ []transactions.SignedTxn) (result s } // GetPendingTransaction no-ops in follower mode -func (node *AlgorandFollowerNode) GetPendingTransaction(_ transactions.Txid, _ uint64) (res TxnWithStatus, found bool) { +func (node *AlgorandFollowerNode) GetPendingTransaction(_ transactions.Txid) (res TxnWithStatus, found bool) { return } diff --git a/node/node.go b/node/node.go index 0ffca076aa..595e699dbe 100644 --- a/node/node.go +++ b/node/node.go @@ -606,7 +606,7 @@ func (node *AlgorandFullNode) GetTransaction(addr basics.Address, txID transacti // blocks, in the txpool, and in the txpool's status cache. It returns // the SignedTxn (with status information), and a bool to indicate if the // transaction was found. -func (node *AlgorandFullNode) GetPendingTransaction(txID transactions.Txid, lookbackRounds uint64) (res TxnWithStatus, found bool) { +func (node *AlgorandFullNode) GetPendingTransaction(txID transactions.Txid) (res TxnWithStatus, found bool) { // We need to check both the pool and the ledger's blocks. // If the transaction is found in a committed block, that // takes precedence. But we check the pool first, because @@ -631,19 +631,24 @@ func (node *AlgorandFullNode) GetPendingTransaction(txID transactions.Txid, look // Keep looking in the ledger. } + var maxLife basics.Round latest := node.ledger.Latest() - // Backwards compat with in case old clients don't specify - if lookbackRounds == 0 { - proto, err := node.ledger.ConsensusParams(latest) - if err == nil { - lookbackRounds = proto.MaxTxnLife - } else { - node.log.Errorf("node.GetPendingTransaction: cannot get consensus params for latest round %v", latest) - } + proto, err := node.ledger.ConsensusParams(latest) + if err == nil { + maxLife = basics.Round(proto.MaxTxnLife) + } else { + node.log.Errorf("node.GetPendingTransaction: cannot get consensus params for latest round %v", latest) } + // Search from newest to oldest round up to the max life of a transaction. maxRound := latest - minRound := maxRound.SubSaturate(basics.Round(lookbackRounds)) + minRound := maxRound.SubSaturate(maxLife) + + // If we did find the transaction, we know there is no point + // checking rounds earlier than its first valid round + if found && tx.Txn.FirstValid > minRound { + minRound = tx.Txn.FirstValid + } // Since we're using uint64, if the minRound is 0, we need to check for an underflow. if minRound == 0 {