Skip to content
This repository has been archived by the owner on Feb 29, 2024. It is now read-only.

Libindy VM returns 'CommonInvalidState' when running test cases to connecting to the pool #843

Closed
r-soltani opened this issue Jun 6, 2018 · 3 comments

Comments

@r-soltani
Copy link

Setting up the Vagrant VM environment (or Docker) and running the Python Test programs from the Libindy01 VM produces the following error.

Note: Both the 'Stable' branch and the 'Master' branch of Indy-Node have been tested and both return this error.

INFO|indy::commands | src/commands/mod.rs:108 | PoolCommand command received INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node1 pi INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node3 pi INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node2 pi INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node4 pi INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node2 po INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node2 {"op":"LEDGER_STATUS","txnSeqNo":4,"merkleRoot":"HPjXYNQy1UMjoD3XkBnZZaoL8B8a4N4foZdKCpyQDBC6","ledgerId":0,"ppSeqNo":null,"viewNo":null} INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node1 po INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node1 {"op":"LEDGER_STATUS","txnSeqNo":4,"merkleRoot":"HPjXYNQy1UMjoD3XkBnZZaoL8B8a4N4foZdKCpyQDBC6","ledgerId":0,"ppSeqNo":null,"viewNo":null} INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node4 po INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node4 {"op":"LEDGER_STATUS","txnSeqNo":4,"merkleRoot":"HPjXYNQy1UMjoD3XkBnZZaoL8B8a4N4foZdKCpyQDBC6","ledgerId":0,"ppSeqNo":null,"viewNo":null} INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node3 po INFO|indy::services::pool | src/services/pool/mod.rs:549 | RemoteNode::send_str Node3 {"op":"LEDGER_STATUS","txnSeqNo":4,"merkleRoot":"HPjXYNQy1UMjoD3XkBnZZaoL8B8a4N4foZdKCpyQDBC6","ledgerId":0,"ppSeqNo":null,"viewNo":null} INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node4 {"ledgerId":0,"viewNo":null,"txnSeqNo":4,"ppSeqNo":null,"op":"LEDGER_STATUS","merkleRoot":"DKTaqoxsaDxNwVBhGyqH5W6HRMmQ8viSSeypSKekfuQw"} INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node2 {"ledgerId":0,"viewNo":null,"txnSeqNo":4,"op":"LEDGER_STATUS","merkleRoot":"DKTaqoxsaDxNwVBhGyqH5W6HRMmQ8viSSeypSKekfuQw","ppSeqNo":null} INFO|indy::services::pool | src/services/pool/mod.rs:543 | RemoteNode::recv_msg Node3 {"viewNo":null,"ppSeqNo":null,"ledgerId":0,"txnSeqNo":4,"op":"LEDGER_STATUS","merkleRoot":"DKTaqoxsaDxNwVBhGyqH5W6HRMmQ8viSSeypSKekfuQw"} INFO|indy::commands | src/commands/mod.rs:108 | PoolCommand command received INFO|indy::commands::pool | src/commands/pool.rs:67 | OpenAck handle 1, pool_id 2, result Err(CommonError(InvalidState("Ledger merkle tree doesn\'t acceptable for current tree."))) ERROR|indy::errors::indy | src/errors/indy.rs:68 | Casting error to ErrorCode: Invalid library state: Ledger merkle tree doesn't acceptable for current tree. DEBUG:indy.libindy:_indy_callback: >>> command_handle: 1, err 112, args: (0,) DEBUG:indy.libindy:_indy_callback: <<< DEBUG:indy.libindy:_indy_loop_callback: >>> command_handle: 1, err 112, args: (0,) WARNING:indy.libindy:_indy_loop_callback: Function returned error 112 DEBUG:indy.libindy:_indy_loop_callback <<< ERROR|indy::services::pool | src/services/pool/mod.rs:428 | Pool worker thread finished with error CommonError(InvalidState("Ledger merkle tree doesn\'t acceptable for current tree.")) Traceback (most recent call last): File "ServiceOntario.py", line 168, in <module> loop.run_until_complete(main()) File "/usr/lib/python3.5/asyncio/base_events.py", line 387, in run_until_complete return future.result() File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result raise self._exception File "/usr/lib/python3.5/asyncio/tasks.py", line 241, in _step result = coro.throw(exc) File "ServiceOntario.py", line 122, in main pool_handle = await open_pool() File "ServiceOntario.py", line 97, in open_pool pool_handle = await pool.open_pool_ledger(pool_name, None) File "/usr/local/lib/python3.5/dist-packages/indy/pool.py", line 82, in open_pool_ledger open_pool_ledger.cb) File "/usr/lib/python3.5/asyncio/futures.py", line 361, in __iter__ yield self # This tells Task to wait for completion. File "/usr/lib/python3.5/asyncio/tasks.py", line 296, in _wakeup future.result() File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result raise self._exception indy.error.IndyError: ErrorCode.CommonInvalidState

@vimmerru
Copy link

vimmerru commented Jun 7, 2018

You have clear error here "Ledger merkle tree doesn't acceptable for current tree." Most probably genesis transactions that you provided to SDK doesn't compatible with the pool. I will ask our QA to check that there is no additional problems.

@zhigunenko-dsr
Copy link
Contributor

@r-soltani
Helping with fixing your issue, please do following things:

  1. Attach both pool_transactions_genesis files which you use on node and libindy machine (at least first node record)
  2. Clarify certain versions of indy-node and libindy packages where you revealed problems
  3. Clarify certain file which you intended as "Python Test programs from the Libindy01 "VM

@vimmerru
Copy link

vimmerru commented Jun 27, 2018

  • It works for our qa
  • We don't have additional input from requester for 19 days
  • 99% problem is related to incorrect environment configuration

I suggest close this. @r-soltani You can re-open this if problem is still here.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

3 participants