consensushyperledger-sawtoothdev-mode

Devmode-engine-rust on Sawtooth running on Ubuntu 16.04


I want to install devmode-engine-rust on Sawtooth 1.0.5 running on Ubuntu 16.04. Standard installation using apt-get gives:

sawtooth-devmode-engine-rust : 
Depends: libstdc++6 (>= 8.3.0) but 5.4.0-6ubuntu1~16.04.11 is to be installed 
Depends: libnorm1 (>= 1.5r6+dfsg1) but it is not installable 
Depends: libzmq5 (>= 4.2.5) but 4.1.4-7ubuntu0.1 is to be installed 
Depends: libssl1.1 (>= 1.1.1) but it is not installable 
Depends: libsodium23 (>= 1.0.16) but it is not installable 
Depends: libc6 (>= 2.27) but 2.23-0ubuntu11 is to be installed 
Depends: libgcc1 (>= 1:8.3.0) but 1:6.0.1-0ubuntu1 is to be installed 

E: Unable to correct problems, you have held broken packages

Could not correct this one, so tried to compile from sources. Looks like compilation went OK. Now the question: what are correct directories where to copy compiled binaries and supporting files? Tried the simplest one - put devmode-engine-rust on the path, but that doesn't work.

Alternatively, if anybody knows how to solve the problem with

sudo apt-get install sawtooth-devmode-engine-rust

that would be great, too. Any suggestions on installing sawtooth-devmode-engine-rust are very welcome.

Thank you!

(I did find several stackoverflow articles on that, i.e. adding another depository and doing apt-get update, etc. None of them worked)

P.S. Here is what happens when I start different parts of sawtooth: Window 1 - Validator:

$ sudo -u sawtooth sawtooth-validator -vv --scheduler parallel
[sudo] password for ahg2009:
[2019-08-04 11:41:31.052 INFO     path] Loading path information from config: /etc/sawtooth/path.toml
[2019-08-04 11:41:31.058 INFO     validator] Loading validator information from config: /etc/sawtooth/validator.toml
[2019-08-04 11:41:31.076 INFO     path] Loading path information from config: /etc/sawtooth/path.toml
[2019-08-04 11:41:31.082 INFO     keys] Loading signing key: /etc/sawtooth/keys/validator.priv
[2019-08-04 11:41:31.109 INFO     cli] sawtooth-validator (Hyperledger Sawtooth) version 1.0.5
[2019-08-04 11:41:31.110 INFO     cli] config [path]: config_dir = "/etc/sawtooth"; config [path]: key_dir = "/etc/sawtooth/keys"; config [path]: data_dir = "/var/lib/sawtooth"; config [path]: log_dir = "/var/log/sawtooth"; config [path]: policy_dir = "/etc/sawtooth/policy" .....etc. long output

Window 2

$ sudo -u sawtooth settings-tp -v
[sudo] password for ahg2009:
[2019-08-04 11:42:06.578 INFO     core] register attempt: OK

Window 3.

$ sudo -u sawtooth /home/ahg2009/sawtooth-devmode-master/target/release/devmode-engine-rust -vvv --connect tcp://localhost:5050
TRACE | sawtooth_sdk::messag | Sending 37 bytes

{{After a while...}}

ERROR | devmode_engine_rust: | ReceiveError: TimeoutError
```

Solution

  • If I understand correctly, you are trying to run the consensus engine and connect to the validator. Use Sawtooth version >= 1.1. The 1.0.5 version has the consensus module running inside the validator, so you can't connect it from outside as a separate process. It will be running dev mode consensus by default.