bcgov / von-network

A portable development level Indy Node network.
Apache License 2.0
163 stars 188 forks source link

Invalid library state Caused by: Ledger merkle tree is not acceptable for current tree. #265

Closed gucmurat closed 1 year ago

gucmurat commented 1 year ago

Hello,

I am using an API which I did not construct for developing DID app. It uses genesis file to reach ledgers and successfully runs with greenlight/test.bcovrin pools. Now, I have built the local von-network with docker on my computer. The genesis file includes the ip nodes as host.docker.internal that I transformed it to the 127.0.0.1. Then, everytime I run my script, I can see the reaction in the logs. But my program returns "Invalid library state Caused by: Ledger merkle tree is not acceptable for current tree." error.

when the host.docker.internal stays, program crashes due to pool time out error.

What can be the problem, any ideas?

Screenshot 2023-06-07 at 15 07 36
WadeBarnes commented 1 year ago

Try running von-network using the IP (or public IP) of the machine you're running it on. That way the genesis files will contain an IP address that is accessible from that or other machines.

./manage start <public_ip_address>

The host.docker.internal address is for local use. It ensures the containers are accessible from processes on your local machine as well as other containers running on the same machine. If you've transformed those into 127.0.0.1 in the genesis file or even at the agent level, you're essentially telling the process or container to look for the nodes on the machine's internal network, which for a container is itself since a container is essentially it's own machine, so using 127.0.0.1 will always break things.

gucmurat commented 1 year ago

It worked. Thank you so much!