TRON Synchronization node
zhangtiantian222 opened this issue · 10 comments
Please answer these questions before submitting your issue. Thanks!
The node runs for a few days, a synchronization exception occurs, and the node is restarted to resume synchronization.
LOG:
Peer 47.74.241.160:18888: [ d2463295, ping 0 ms]-----------
connect time: 2019-05-20 09:51:02.971
last know block num: 7198241
needSyncFromPeer:true
needSyncFromUs:false
syncToFetchSize:3941
syncToFetchSizePeekNum:7198243
syncBlockRequestedSize:0
unFetchSynNum:2179717
syncChainRequested:NULL
blockInPorc:1
NodeStat[reput: 169(99), discover: 1/1 1/1 1/1 0/0 283ms, p2p: 1/1/1 , tron: 9/6 , tcp flow: 164273
Peer 47.74.242.55:18888: [ b3454099, ping 84 ms]-----------
connect time: 2019-05-20 09:51:28.009
last know block num: 7198241
needSyncFromPeer:true
needSyncFromUs:false
syncToFetchSize:3967
syncToFetchSizePeekNum:7198243
syncBlockRequestedSize:0
unFetchSynNum:2179700
syncChainRequested:NULL
blockInPorc:1
NodeStat[reput: 174(90), discover: 9/9 1/1 1/1 0/0 110ms, p2p: 1/1/1 , tron: 16/5 , tcp flow: 164551
@zhangbinbin625 Please confirm whether your node failed to sync or not? From the attached log, we can't see the exception.
Using this command please: "tail -f logs/tron.log -i pushblock", and watch the output. If the block doesn't change for more than 1 minute, there must be something wrong. Then please provide the detail tron.log.
Appear every few days,The tron.log log is all link nodes and is stuck here.
I meet this issue every 2-3 days, the same tron.log as above (java-tron version v3.5.1)
tron.log
I usually meet above issue, restart "FullNode.jar" did not work. Please see my "tron.log"
In the "tron.log" above, I see exception, could anyone explain me about that? Maybe it's reason to disconnect peers for a long time:
15:25:13.211 INFO [pool-35-thread-1] VM timeout: CPU timeout for 'ISZERO' operation executing
15:25:13.211 INFO [pool-35-thread-1] DB Retry result for tx id: ca50aad5ad2d666c5a5d1037dfc101d4dae66be0b174fa95166f499c5ef4aceb, tx resultCode in receipt: OUT_OF_TIME
15:25:13.211 INFO [TronJClientWorker-7] net Receive from /47.88.172.95:18888, type: BLOCK
Num:10370349,ID:00000000009e3d2decbc85e3445480d1e443e18ae54724b8b68af61aeedf08d1, trx size: 63
15:25:13.211 INFO [pool-35-thread-1] TransactionTrace this tx id: ca50aad5ad2d666c5a5d1037dfc101d4dae66be0b174fa95166f499c5ef4aceb, the resultCode in received block: SUCCESS, the resultCode in self: OUT_OF_TIME
15:25:13.221 ERROR [pool-35-thread-1] DB Different resultCode
org.tron.core.exception.ReceiptCheckErrException: Different resultCode
at org.tron.core.db.TransactionTrace.check(TransactionTrace.java:252)
at org.tron.core.db.Manager.processTransaction(Manager.java:1243)
at org.tron.core.db.Manager.processBlock(Manager.java:1527)
at org.tron.core.db.Manager.applyBlock(Manager.java:845)
at org.tron.core.db.Manager.pushBlock(Manager.java:1048)
at org.tron.core.net.TronNetDelegate.processBlock(TronNetDelegate.java:174)
at org.tron.core.net.service.SyncService.processSyncBlock(SyncService.java:260)
at org.tron.core.net.service.SyncService.lambda$handleSyncBlock$8(SyncService.java:250)
at java.util.concurrent.ConcurrentHashMap.forEach(ConcurrentHashMap.java:1597)
at org.tron.core.net.service.SyncService.handleSyncBlock(SyncService.java:233)
at org.tron.core.net.service.SyncService.lambda$init$1(SyncService.java:77)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
@zhangbinbin625 @thinhtn-ibl
hi, the transaction in the block processed with different resultCode,as you mentioned the code is OUT_OF_TIME ,is caused by the low computer performance.
You can increase the maxTimeRatio field in the config, the default is 5.0, so you can try it with 15.0 or 20.0. I think this will make the problem solved.
@shydesky Thanks for your support. I will try and get back to you.
@shydesky Works like a charm! thank you so much!
Version
troncli 1.0.6 only support java-tron 3.5
the newest version of java-tron is 3.6
and 3.6 is not compatible with 3.5

