guieec
guieec

Reputation: 21

PoET engine error when setting up Docker Sawtooth Network Environment

I'm trying to set up the Docker Sawtooth Network Environment using PoET Simulator (CFT) following these steps: https://sawtooth.hyperledger.org/docs/core/releases/latest/app_developers_guide/docker_test_network.html.

The intkey set transaction works properly in the PBFT network. I can get the key value using inktey show in all REST API containers and a new block is created.

But, with PoET, I don't have any response in log terminal and no block is created. What happens when i try to get key value in any node:

root@e9b57e11feb6:/# intkey set --url http://sawtooth-rest-api-default-0:8008 MyKey 999
{
  "link": "http://sawtooth-rest-api-default-0:8008/batch_statuses?id=35f975022d853deddf0b7329ca8d10e608d3a3fa3e5f2318164e6de738c705e11aa335d709dfda12c50dc807346e8dace2e204cb14ad32699cb2a87b2a6e6f1b"
}
root@e9b57e11feb6:/# intkey show --url http://sawtooth-rest-api-default-1:8008 MyKey
Error: No such key: MyKey

When I started the network with docker-compose up, the following error message appeared:

sawtooth-poet-engine-0          | [2020-12-12 14:28:55.147 ERROR    zmq_driver] Uncaught driver exception
sawtooth-poet-engine-0          | Traceback (most recent call last):
sawtooth-poet-engine-0          |   File "/usr/lib/python3/dist-packages/sawtooth_sdk/consensus/zmq_driver.py", line 88, in _driver_loop
sawtooth-poet-engine-0          |     result = self._process(message)
sawtooth-poet-engine-0          |   File "/usr/lib/python3/dist-packages/sawtooth_sdk/consensus/zmq_driver.py", line 237, in _process
sawtooth-poet-engine-0          |     'Received unexpected message type: {}'.format(type_tag))
sawtooth-poet-engine-0          | sawtooth_sdk.consensus.exceptions.ReceiveError: Received unexpected message type: 700

I found these messages in the end of /var/log/sawtooth/poet-engine-debug.log file in the sawtooth-poet-engine-0 container:

[14:28:37.840 [MainThread] engine DEBUG] Received message: CONSENSUS_NOTIFY_BLOCK_NEW
[14:28:37.840 [MainThread] engine INFO] Received Block(block_num: 1, block_id: a4299924b77cc32934ac6a470636312b24c9153327b5b7e2e878640f85c0442d5f3dca4bfc4dd4b6575ef047c63e01da3228cbac8d4b6d68c149b9d2589720b1, previous_id: e268a0b21a0d33b0e57a162deb41dd55af7a88fee69382d4bfa3f26f93be7afc485ea8e73f00764cf8e99cbe3efa3c0c42a4357183e227388b1cf51c33737e5b, signer_id: 02d69ef8bd879297899bac65fcde686c74fefeb7010a58db99a9eb24ed014f39db, payload: b'{"SerializedCertificate": "{\\"block_hash\\": \\"b\'\\\\\\\\xf6#>>V\\\\\\\\xd25%\\\\\\\\xd1{\\\\\\\\x87\\\\\\\\r\\\\\\\\xda\\\\\\\\x91t\\\\\\\\xc2\\\\\\\\x97\\\\\\\\x8c\\\\\\\\xf1\\\\\\\\x08C5\\\\\\\\x92\\\\\\\\x15\\\\\\\\x83^H}\\\\\\\\x02\\\\\\\\xb7\\\\\\\\x85T\'\\", \\"duration\\": 11.998389297959184, \\"local_mean\\": 5.0, \\"nonce\\": \\"8e1661a9178b8faacf94b67cd8efcbb964ddce04cdd8a3c09e78532100726480\\", \\"previous_certificate_id\\": \\"0000000000000000\\", \\"request_time\\": 1607783305.7010527, \\"validator_address\\": \\"020dd2bd7c5992708b9f48c2fa72e78ddd61d5cd3608c21cb27957dc576887f614\\"}", "Signature": "7844aa644f3a40f5fe63e2208648415b0212f4fd8af1fcbf3b71a17f97fcfd5d097aac398aea1c2640b08c0b8396353bd88df5166f2f7d85c2cb93ad0fe29695"}', summary: f6233e3e56d23525d17b870dda9174c2978cf10843359215835e487d02b78554)
[14:28:37.928 [MainThread] poet_block_verifier ERROR] Block a4299924 rejected: Received block from an unregistered validator 02d69ef8...014f39db
[14:28:37.928 [MainThread] engine INFO] Failed consensus check: a4299924b77cc32934ac6a470636312b24c9153327b5b7e2e878640f85c0442d5f3dca4bfc4dd4b6575ef047c63e01da3228cbac8d4b6d68c149b9d2589720b1
[14:28:55.147 [Thread-2] zmq_driver ERROR] Uncaught driver exception
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/sawtooth_sdk/consensus/zmq_driver.py", line 88, in _driver_loop
    result = self._process(message)
  File "/usr/lib/python3/dist-packages/sawtooth_sdk/consensus/zmq_driver.py", line 237, in _process
    'Received unexpected message type: {}'.format(type_tag))
sawtooth_sdk.consensus.exceptions.ReceiveError: Received unexpected message type: 700

Edit: I'm currenly working on Ubuntu 18.04

Upvotes: 1

Views: 497

Answers (2)

DO EAT NOW
DO EAT NOW

Reputation: 1

Try not to use hyperledger/sawtooth-poet-engine:chime docker image for poet-engine-# containers in sawtooth-default-poet.yaml file.

Change it to hyperledger/sawtooth-poet-engine:nightly to all containers if you are building a network.

If you feel uncomfortable with the nightly version try others(https://hub.docker.com/r/hyperledger/sawtooth-poet-engine/tags) but it seems outdated.

Don't forget to use this command to clear all of the previous block data in docker volume when necessary.

    docker volume rm $(docker volume ls -q)

Upvotes: 0

Andre
Andre

Reputation: 1

So, poet-engine doesn't implement PING Message (MessageType=700)

Upvotes: 0

Related Questions