Duniter node on Raspberry Pi 3

Hi all,

Trying to get a node up on a Raspberry Pi 3 (there is a raspi3 in the nodes list, so it must be possible) I run into some errors. Not sure if it is due to my configuration so here I’ll just summarize both installation process I took and the errors from duniter.log …

  1. Installed Node Version Manager nmp

  2. Installed Node v4.5.0 with “nmp install 4”

  3. from /home/pi I did

    wget https://github.com/duniter/duniter/releases/download/v0.31.0b13/duniter-v0.31.0b7-linux-armv7l.deb
    sudo dpkg -i duniter-v0.31.0b7-linux-armv7l.deb

4 Followed with a “duniter network” then “duniter key” and “duniter sync …” (which took a very long time but seemed to end successful) but the next day, after a fresh “duniter start” I get this in the log:

Duniter.log

2016-09-26T19:07:14+00:00 - ^[[32minfo^[[39m: >> NODE STARTING
2016-09-26T19:07:14+00:00 - ^[[32minfo^[[39m: UPnP: configuring...
2016-09-26T19:07:15+00:00 - ^[[32minfo^[[39m: Node version: 0.31.0b7
2016-09-26T19:07:15+00:00 - ^[[32minfo^[[39m: Node pubkey: Cr1c1urrUMbmnVwjP3fHKhe6nr3sgsiiFFQhtY18GWqb
2016-09-26T19:07:15+00:00 - ^[[32minfo^[[39m: Crawling the network...
2016-09-26T19:07:15+00:00 - ^[[33mwarn^[[39m: Local node is not a member. Waiting to be a member before computing a block.
2016-09-26T19:07:15+00:00 - ^[[32minfo^[[39m: Crawling done.
2016-09-26T19:07:15+00:00 - ^[[32minfo^[[39m: Storing self peer...

So far so good, but then two minutes later:

2016-09-26T19:09:22+00:00 - ^[[33mwarn^[[39m: Wrong endpoint 'BASIC_MERKLED_API leprat.aufildudoux.fr 8999': 'Error: connect ETIMEDOUT 88.139.56.131:8999'
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: External access: 88.139.56.131:8999
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: Next peering signal in 10 min
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: POST Peer Cr1c1urrUM#18479
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: Pulling blocks from the network...
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: Will pull blocks from the network in 10 min 0 sec
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: Duniter server listening on http://192.168.1.2:8999
2016-09-26T19:09:22+00:00 - ^[[32minfo^[[39m: >> Server ready!
2016-09-26T19:09:32+00:00 - ^[[33mwarn^[[39m: ETIMEDOUT
2016-09-26T19:09:32+00:00 - ^[[31merror^[[39m: Routing error: TypeError: Cannot set property 'status' of undefined
    at /opt/duniter/sources/app/lib/dal/fileDAL.js:598:16
    at next (native)
    at onFulfilled (/opt/duniter/sources/node_modules/co/index.js:65:19)
    at process._tickCallback (node.js:412:9)

This error is repeated every 10 minutes. I’ve checked remote accessibility (browser says "Cannot GET / " as expected, I suppose) and when I try a manual “duniter sync …” I get this error in the log:

2016-09-26T19:30:30+00:00 - ^[[32minfo^[[39m: Try with 51.255.197.83:8999 BSmbyQ
2016-09-26T19:30:30+00:00 - ^[[32minfo^[[39m: Sync started.
2016-09-26T19:30:31+00:00 - ^[[32minfo^[[39m: Downloading Blockchain...
2016-09-26T19:30:46+00:00 - ^[[31merror^[[39m: No answer after 15000ms, will retry download later.
...
2016-09-26T19:31:01+00:00 - ^[[31merror^[[39m: No answer after 15000ms, will retry download later.
2016-09-26T19:31:08+00:00 - ^[[33mwarn^[[39m: Chunk #0 is COMPLETE from testnet.duniter.inso.ovh:80
2016-09-26T19:31:09+00:00 - ^[[31merror^[[39m: Error: All kicked members must be present under Excluded members
    at Error (native)
    at /opt/duniter/sources/app/lib/rules/global_rules.js:448:13
    at next (native)
    at onFulfilled (/opt/duniter/sources/node_modules/co/index.js:65:19)
    at process._tickCallback (node.js:412:9)

I tried upgrading Node to v6.6.0 but the errors remain.

Anybody know what’s up? Should I have built from source rather than installing the deb package? Or is there something else missing?

Debian package is working well.
Duniter doesn’t works currently with Node.js 6.x.

Hi Moul, I just upgraded to Duniter version .0b13 then did a complete duniter reset all and started fresh with a duniter config --autoconf, duniter sync cgeek.fr 9330 and duniter start

The log looks very different now and (so far) no errors…

This is with Node.js 6 now but I’ll revert to 4 again later. Will let it running for tonight and check the log tomorrow.

Thanks so far!

UPDATE: it just appeared in the network list on Sakia – still syncing but looking good so far :slight_smile:

Sadly, I’m getting another error now…

After reverting back to Node.js 4.5.0 to be sure, and trying duniter sync cgeek.fr 9330 I get an error err.indexOf is not a function.

In the log file:

016-09-27T16:57:21+00:00 - ^[[32minfo^[[39m: Try with 88.174.120.187:9330 HnFcSm
2016-09-27T16:57:21+00:00 - ^[[32minfo^[[39m: Sync started.
2016-09-27T16:57:21+00:00 - ^[[32minfo^[[39m: Getting remote blockchain info...
2016-09-27T16:57:21+00:00 - ^[[32minfo^[[39m: Downloading Blockchain...
2016-09-27T16:57:22+00:00 - ^[[31merror^[[39m: TypeError: err.indexOf is not a function
    at /opt/duniter/sources/app/lib/sync.js:334:17
    at throw (native)
    at onRejected (/opt/duniter/sources/node_modules/co/index.js:81:24)
    at _rejected (/opt/duniter/sources/node_modules/q/q.js:804:24)
    at /opt/duniter/sources/node_modules/q/q.js:830:30
    at Promise.when (/opt/duniter/sources/node_modules/q/q.js:1064:31)
    at Promise.promise.promiseDispatch (/opt/duniter/sources/node_modules/q/q.js:748:41)
    at /opt/duniter/sources/node_modules/q/q.js:564:44
    at flush (/opt/duniter/sources/node_modules/q/q.js:110:17)
    at _combinedTickCallback (node.js:376:9)
    at process._tickCallback (node.js:407:11)

I think you could open a ticket.

For reference, two tickets here:

https://github.com/duniter/duniter/issues/616

https://github.com/duniter/duniter/issues/618

Petit commentaire : https://github.com/duniter/duniter/issues/618#issuecomment-250090631