4

I'm not seeing the solid milestone tracker thread any more. No exceptions I can see in the logs e.g. related to GC. Any details or pointers as to where I should look?

I'm connected to five community nodes that are fully synced. When I restart the IRI, the solid milestone jumps close to the latest milestone, then never updates after that whilst latest milestone continues normally.

Helmar
  • 1,293
  • 1
  • 15
  • 28
Scott Foster
  • 429
  • 2
  • 7

1 Answers1

5

(This is specific to linux)

To dump all iri process threads, one can issue the following command:

jstack -l <pid of iri java process>

Search for the named thread of interest.

Example:

test@test:~$ pgrep -l java
10783 java
test@test:~$ jstack -l 10783  > /tmp/thread_dump.log
test@test:~$ du -s /tmp/thread_dump.log 
212 /tmp/thread_dump.log
test@test:~$ awk '/Milestone/,/- None/{ print $0 }' /tmp/thread_dump.log 
"Solid Milestone Tracker" #22 prio=5 os_prio=0 tid=0x00007f26f0ea0800 nid=0x2a53 waiting on condition [0x00007f26c0780000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at com.iota.iri.Milestone.lambda$init$1(Milestone.java:144)
    at com.iota.iri.Milestone$$Lambda$12/550402284.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:748)

   Locked ownable synchronizers:
    - None
"Latest Milestone Tracker" #21 prio=5 os_prio=0 tid=0x00007f26f0976800 nid=0x2a52 waiting on condition [0x00007f26c81e5000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at com.iota.iri.Milestone.lambda$init$0(Milestone.java:109)
    at com.iota.iri.Milestone$$Lambda$11/58940486.run(Unknown Source)
    at java.lang.Thread.run(Thread.java:748)

   Locked ownable synchronizers:
    - None
Scott Foster
  • 429
  • 2
  • 7