Hi Canton Team,
Working through Getting Started — Canton 0.26.0 documentation on a Raspberry Pi. So far the Ledger runs stable, can run the Sandbox. Basic tests are OK.
However an issue arose when executing participant1.health.ping(participant2)
.
Prior to this the Health Status command worked as per spec:
@ health status
@ health.status
res8: CantonStatus = Status for Domain 'mydomain':
Domain id: mydomain::12205eb22b829e791330727259e6e5770c58b39d5e71089922dcf18ebfa4215ae9be
Uptime: 1h 37m 58.999439s
Ports:
public: 5018
admin: 5019
Connected Participants: None
Status for Participant 'participant1':
Participant id: PAR::participant1::12205b3ea0b61e84ce053da36b3b7165b7664f158aae2e4b4622fbe552041a15852c
Uptime: 1h 37m 18.993575s
Ports:
ledger: 5011
admin: 5012
Connected Domains: None
Active: true
Status for Participant 'participant2':
Participant id: PAR::participant2::122013bceeeb0ab3e3ea30fab5779b00e24804f3cf1a474b95b45307295721eccc3c
Uptime: 1h 36m 52.633865s
Ports:
ledger: 5021
admin: 5022
Connected Domains: None
Active: true
When the Health Status command was executed, CPU usage was almost 300% on 4 x 1.4Ghz cores.
Ping failure output below:
participant1.health.ping(participant2)
@ participant1.health.ping(participant2)
WARN c.d.c.p.a.PingService:participant=participant1 tid:d4a306084b56a450cf193fe9bc348534 - Ping/pong with id=2d16ba26-4753-4453-a6d2-671bd4657357-ping failed with reason Failed(
Completion(
Status(PERMISSION_DENIED, NotConnectedToAnyDomain(CN10051-2): This participant is not connected to any domain.; participant=participant1),
commandId = '2d16ba26-4753-4453-a6d2-671bd4657357-ping-85495b8c-96d7-4ad4-8723-0b8bd041ad47'
)
).
ERROR c.d.c.e.CommunityConsoleEnvironment - Unable to ping PAR::participant2::122013bceeeb0ab3e3ea30fab5779b00e24804f3cf1a474b95b45307295721eccc3c within 10000ms
Command execution failed.
When the Ping command was executed, CPU utilisation was about 200% on 4 x 1.4Ghz cores, while MEM utilisation jumped to 680M/973M and stayed there. 10 minutes after executing the command, the MEM has only dropped back to 602M/973M, and the command still fails.
Questions
- Is this issue likely to be a reduced MEM footprint in the RPi v3 (1Gb), which causes the Ping command to timeout ( T > 10000ms)?
- If so, if there a option to extend or ignore the T > 10000ms limit?
- Or can I assign a larger slice of MEM for Java to access immediately?
Screenshot of HTOP with Java/Canton process tagged below: