8000 "TransactionPool.ingest: no pending block evaluator" when trying to do a transaction on just a single node · Issue #6303 · algorand/go-algorand · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
"TransactionPool.ingest: no pending block evaluator" when trying to do a transaction on just a single node #6303
Closed as not planned
@henophilia

Description

@henophilia

Subject of the issue

I am working on a self-contained script through which one can set up a completely new Algorand network with a newly provisioned node hosted on fly.io.

In my code, I have very simple unit tests which show that I can connect to the node, but whenever I want to perform a transaction from one address to another, I get the error "TransactionPool.ingest: no pending block evaluator".

Your environment

A Dockerfile based on algorand/algod:latest

Steps to reproduce

Make sure that you have python3 and the fly CLI installed and you're logged in to your fly.io account. Then:

  1. git clone https://github.com/hermesloom/algorand-node-fly
  2. cd algorand-node-fly
  3. ./setup.sh 100 EUR
    • Answer Would you like to copy its configuration to the new app? with y
    • Answer Do you want to tweak these settings before proceeding? with n
    • Answer Would you like to allocate dedicated ipv4 and ipv6 addresses now? with y

Expected behaviour

The unit tests in the script local/test.py in the aforementioned repository should be executed successfully.

Actual behaviour

Unit tests test_04_transfer_funds and test_05_multiple_accounts fail with the following errors:

Using app name: algorand-node
Getting IP address for algorand-node...
Using Fly.io app IP address: <redacted>
Using API at: http://<redacted>
Using Genesis address: <redacted>
Waiting for API to be healthy (max 15 attempts)...
✅ API is healthy! (attempt 1/15)
..Genesis account balance: 10000000000000000 picoXDRs
.FF
======================================================================
FAIL: test_04_transfer_funds (__main__.AlgorandAPITest.test_04_transfer_funds)
Test transferring funds from genesis to a new test account.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/nalenz/Programmierung/algorand-node-fly/local/test.py", line 222, in test_04_transfer_funds
    result = self.api_client.transfer(
        self.genesis_address,
    ...<3 lines>...
        "Test transfer",
    )
  File "/Users/nalenz/Programmierung/algorand-node-fly/local/api_client.py", line 70, in transfer
    raise Exception(f"Error transferring funds: {response.text}")
Exception: Error transferring funds: {"error":"Failed to transfer funds: TransactionPool.Remember: TransactionPool.ingest: no pending block evaluator"}


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/nalenz/Programmierung/algorand-node-fly/local/test.py", line 260, in test_04_transfer_funds
    self.fail(f"Failed to transfer funds and verify: {e}")
    ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Failed to transfer funds and verify: Error transferring funds: {"error":"Failed to transfer funds: TransactionPool.Remember: TransactionPool.ingest: no pending block evaluator"}


======================================================================
FAIL: test_05_multiple_accounts (__main__.AlgorandAPITest.test_05_multiple_accounts)
Test creating multiple accounts and transferring between them.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/nalenz/Programmierung/algorand-node-fly/local/test.py", line 270, in test_05_multiple_accounts
    fund_result = self.api_client.transfer(
        self.genesis_address,
    ...<3 lines>...
        "Fund for multi-account test",
    )
  File "/Users/nalenz/Programmierung/algorand-node-fly/local/api_client.py", line 70, in transfer
    raise Exception(f"Error transferring funds: {response.text}")
Exception: Error transferring funds: {"error":"Failed to transfer funds: TransactionPool.Remember: TransactionPool.ingest: no pending block evaluator"}


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/nalenz/Programmierung/algorand-node-fly/local/test.py", line 312, in test_05_multiple_accounts
    self.fail(f"Failed in multiple account test: {e}")
    ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: Failed in multiple account test: Error transferring funds: {"error":"Failed to transfer funds: TransactionPool.Remember: TransactionPool.ingest: no pending block evaluator"}


----------------------------------------------------------------------
Ran 5 tests in 1.604s

FAILED (failures=2)

More specifically, in my server logs I see that the error happens here in algod_client.send_transaction, but it just says HTTP Error 400: Bad Request:

[2025-04-15 12:27:22,499] ERROR in server_api: Error transferring funds: TransactionPool.Remember: TransactionPool.ingest: no pending block evaluator
Traceback (most recent call last):
File "/algod/venv/lib/python3.11/site-packages/algosdk/v2client/algod.py", line 106, in algod_request
resp = urlopen(req, timeout=timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/urllib/request.py", line 216, in urlopen
return opener.open(url, data, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/urllib/request.py", line 525, in open
response = meth(req, response)
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/urllib/request.py", line 634, in http_response
response = self.parent.error(
^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/urllib/request.py", line 563, in error
return self._call_chain(*args)
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/urllib/request.py", line 496, in _call_chain
result = func(*args)
^^^^^^^^^^^
File "/usr/lib/python3.11/urllib/request.py", line 643, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 400: Bad Request

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/algod/server_api.py", line 590, in transfer_funds
tx_id = algod_client.send_transaction(signed_txn)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/algod/venv/lib/python3.11/site-packages/algosdk/v2client/algod.py", line 336, in send_transaction
return self.send_raw_transaction(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/algod/venv/lib/python3.11/site-packages/algosdk/v2client/algod.py", line 363, in send_raw_transaction
resp = self.algod_request("POST", req, data=txn_bytes, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/algod/venv/lib/python3.11/site-packages/algosdk/v2client/algod.py", line 116, in algod_request
raise error.AlgodHTTPError(m, code, j.get("data"))
algosdk.error.AlgodHTTPError: TransactionPool.Remember: TransactionPool.ingest: no pending block evaluator

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0