Deadlines NOT confirmed jminer
-
@sevencardz First of all, thanks for all your testing, you are finding stuff i never saw before :-)
On restart 'mining the same round again' ... the data is still in drive caches (i guess), so drives are no longer the bottleneck ... guess the 8s round was than limited by your gpu. Means you could add more drives without increasing round time, as long they use additional controllers.
I know i fixed the output on debug=true, but it seams it is not committed yet, sry, it will be in next version.
The info that on 2nd commit the deadline was accepted is very interesting ... even i can not remember i ever implemented that feature ... i will recheck and maybe improve it ... strange a commit result should be deterministic ...
-
@luxe Thank you for your help as well. :) Hard drive cache certainly makes sense for the 8s re-started rounds.
I was away most of the weekend but I left jminer running with your latest version to see how many plot files would identify bad deadlines and it seems that I've got at least one bad plot on every drive I'm mining, so it looks like I've got some replotting to do. Originally, I guessed the bad plots might have come from a drive I had to RMA a while back, but with the issue being this wide-spread, I am now thinking a power surge that fried my last motherboard also might've corrupted some of the plots on all the drives I was mining at the time.
I have plenty more TBs to plot though, so I will just make a bunch of brand new plots with GPU plot generator and test those to see if any of the deadlines get rejected. If they do, then I'll try again with Xplotter and see if maybe there's an issue with GPU plot generator. I somewhat doubt that though because I don't recall having these issues until recently. Either way, I will find the source of the issue.
-
@luxe So here's an interesting result. I created fresh plots on two 8TB drives with GPU plot generator and started mining them. In this round, deadline 173717 gets sent, sent again, sent again, and then gets a NOT confirmed. Not even a second later, the same deadline (from a different nonce?) gets sent again, gets confirmed and becomes the best deadline for the round.
-
@luxe I've been running jminer 0.4.5 and jminer 0.5.0 side by side for a few days. Besides the unconfirmed deadlines, one problem I've seen is that jminer 0.5.0 will queue a deadline (say 2000) and wait for a confirmation on a shorter deadline (say 1000). The problem happens when the shorter 1000 deadline never gets confirmed, then the queued deadline never gets submitted. You can end up with a round never completing and your best deadline never getting submitted (deadline 65148 was confirmed by jminer 0.4.5 in another window).
-
@sevencardz Thanks for reporting, i will look into it ... maybe it just happens due fast block ... makes no sense to commit queued after new block started ... the read order is not deterministic, so the other jminer instance may have found the deadline earlier.
-
@luxe Maybe I'm just being paranoid, but in looking at the logs, the round was finished by jminer for at least 2 minutes before the next round started:
2017-04-17 15:54:11.919 INFO 3904 --- [readerPool-9] burstcoin.jminer.JMinerCommandLine : 90% done (28TB 477GB), avg.'414 MB/s', eff.'713 MB/s' 2017-04-17 15:54:12.041 INFO 3904 --- [readerPool-10] burstcoin.jminer.core.round.Round : dl '65148' queued 2017-04-17 15:54:12.663 INFO 3904 --- [SimpleAsyncTaskExecutor-200] b.j.c.n.task.NetworkSubmitSoloNonceTask : Recommit dl: '48791' [nonce: '73247268'] 2017-04-17 15:54:12.926 INFO 3904 --- [SimpleAsyncTaskExecutor-200] burstcoin.jminer.JMinerCommandLine : dl '48791' NOT confirmed! [ 0d 13h 33m 11s ] 2017-04-17 15:54:13.608 INFO 3904 --- [readerPool-5] burstcoin.jminer.JMinerCommandLine : 100% done (31TB 997GB), avg.'423 MB/s', eff.'508 MB/s' 2017-04-17 15:56:15.640 INFO 3904 --- [roundPool-1] burstcoin.jminer.JMinerCommandLine : ------------------------------------------------------- 2017-04-17 15:56:15.740 INFO 3904 --- [SimpleAsyncTaskExecutor-269] burstcoin.jminer.JMinerCommandLine : winner block '350338', 'BURST-YSK8-PF8T-6F9D-2GDKS' 2017-04-17 15:56:15.740 INFO 3904 --- [roundPool-1] burstcoin.jminer.JMinerCommandLine : START block '350339', scoopNumber '988', capacity '31997 GB'jminer didn't report FINISH block like it does normally, assumedly because it was waiting for the 48791 deadline to confirm. However, it had two minutes to submit the 65148 deadline in the meantime. Had that been a really low deadline, that could have cost me the block.
-
@sevencardz Well, i could not see the times before ... than i guess it is a bug and miner has to check if still a deadline is queued on ready processing all plotfiles ... thanks for testing and reporting. I will try to include a fix in next version.
-
@luxe Thanks again for your time and help. :)
-
@sevencardz I had a round with a lot of 'NOT confirmed' too now ... and i have a new theory, what could cause it ... jminer runns a round with initial info from wallet on new block ... if wallet notices it was on wrong chain and changes generation signature and basetarget for same blockheigth, the comitted deadlines from miner result in 'NOT confirmed'. So miner needs to detect such a case and restart mining round for same blockheight, if something like this happens ...
2017-04-22 00:37:09.826 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : START block '351804', scoopNumber '707', capacity '330409 GB' 2017-04-22 00:37:09.853 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : targetDeadline '86400', baseTarget '1107963' 2017-04-22 00:37:09.854 DEBUG 2772 --- [kExecutor-14821] b.j.c.n.t.NetworkRequestLastWinnerTask : lastBlock from walletServer outdated, retry-1 in 1000ms 2017-04-22 00:37:10.705 INFO 2772 --- [readerPool-2112] burstcoin.jminer.JMinerCommandLine : 1% done (0TB 33GB), avg.'8 MB/s' 2017-04-22 00:37:10.862 DEBUG 2772 --- [kExecutor-14821] b.j.c.n.t.NetworkRequestLastWinnerTask : lastBlock from walletServer outdated, retry-2 in 1000ms 2017-04-22 00:37:11.866 INFO 2772 --- [kExecutor-14821] burstcoin.jminer.JMinerCommandLine : winner block '351803', 'BURST-H9JS-5U8U-VCFC-4KND9' 2017-04-22 00:37:12.744 INFO 2772 --- [readerPool-2164] burstcoin.jminer.JMinerCommandLine : 8% done (25TB 477GB), avg.'2036 MB/s', eff.'3046 MB/s' 2017-04-22 00:37:14.395 INFO 2772 --- [readerPool-2121] burstcoin.jminer.JMinerCommandLine : 16% done (50TB 943GB), avg.'2643 MB/s', eff.'3765 MB/s' 2017-04-22 00:37:14.723 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : dl '31218' send (pool) [nonce '3764908587'] 2017-04-22 00:37:15.374 INFO 2772 --- [kExecutor-14831] b.j.c.n.task.NetworkSubmitPoolNonceTask : dl '31218' not accepted by pool! 2017-04-22 00:37:15.380 DEBUG 2772 --- [kExecutor-14831] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error code: '1007'. 2017-04-22 00:37:15.384 DEBUG 2772 --- [kExecutor-14831] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error description: 'The deadline for your nonce is REALLY BAD: 404098 years, 6 months, 16 days, 11 hours, 53 mins, 22 secs - wrong block? are your plot files corrupted?'. 2017-04-22 00:37:15.392 DEBUG 2772 --- [kExecutor-14831] burstcoin.jminer.JMinerCommandLine : strange dl source 'C:\data\burst#91\12760599261465029898_3760000000_7500000_7500000' 2017-04-22 00:37:15.392 DEBUG 2772 --- [kExecutor-14831] burstcoin.jminer.JMinerCommandLine : strange dl file chunks '1', parts per chunk '10', block '351804' 2017-04-22 00:37:15.398 INFO 2772 --- [kExecutor-14831] burstcoin.jminer.JMinerCommandLine : dl '31218' NOT confirmed! [ 0d 8h 40m 18s ] 2017-04-22 00:37:15.398 DEBUG 2772 --- [kExecutor-14831] burstcoin.jminer.JMinerCommandLine : strange dl result '-1', calculated '31218' block '351804' nonce '3764908587' 2017-04-22 00:37:15.437 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : dl '75672' send (pool) [nonce '4221033711'] 2017-04-22 00:37:15.781 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : dl '14316' send (pool) [nonce '4983575774'] 2017-04-22 00:37:16.187 INFO 2772 --- [readerPool-2113] burstcoin.jminer.JMinerCommandLine : 24% done (76TB 274GB), avg.'2866 MB/s', eff.'3451 MB/s' 2017-04-22 00:37:16.425 INFO 2772 --- [kExecutor-14836] b.j.c.n.task.NetworkSubmitPoolNonceTask : dl '14316' not accepted by pool! 2017-04-22 00:37:16.425 DEBUG 2772 --- [kExecutor-14836] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error code: '1007'. 2017-04-22 00:37:16.425 DEBUG 2772 --- [kExecutor-14836] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error description: 'The deadline for your nonce is REALLY BAD: 481389 years, 1 month, 1 day, 19 hours, 13 secs - wrong block? are your plot files corrupted?'. 2017-04-22 00:37:16.425 DEBUG 2772 --- [kExecutor-14836] burstcoin.jminer.JMinerCommandLine : strange dl source 'C:\data\burst#25\12760599261465029898_4980000000_7629760_7629760' 2017-04-22 00:37:16.425 DEBUG 2772 --- [kExecutor-14836] burstcoin.jminer.JMinerCommandLine : strange dl file chunks '1', parts per chunk '10', block '351804' 2017-04-22 00:37:16.426 INFO 2772 --- [kExecutor-14836] burstcoin.jminer.JMinerCommandLine : dl '14316' NOT confirmed! [ 0d 3h 58m 36s ] 2017-04-22 00:37:16.426 DEBUG 2772 --- [kExecutor-14836] burstcoin.jminer.JMinerCommandLine : strange dl result '-1', calculated '14316' block '351804' nonce '4983575774' 2017-04-22 00:37:16.895 INFO 2772 --- [kExecutor-14834] b.j.c.n.task.NetworkSubmitPoolNonceTask : dl '75672' not accepted by pool! 2017-04-22 00:37:16.896 DEBUG 2772 --- [kExecutor-14834] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error code: '1007'. 2017-04-22 00:37:16.896 DEBUG 2772 --- [kExecutor-14834] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error description: 'The deadline for your nonce is REALLY BAD: 77667 years, 9 months, 8 days, 11 hours, 49 mins, 11 secs - wrong block? are your plot files corrupted?'. 2017-04-22 00:37:16.896 DEBUG 2772 --- [kExecutor-14834] burstcoin.jminer.JMinerCommandLine : strange dl source 'C:\data\burst#47\12760599261465029898_4220000000_7500000_7500000' 2017-04-22 00:37:16.896 DEBUG 2772 --- [kExecutor-14834] burstcoin.jminer.JMinerCommandLine : strange dl file chunks '1', parts per chunk '10', block '351804' 2017-04-22 00:37:16.896 INFO 2772 --- [kExecutor-14834] burstcoin.jminer.JMinerCommandLine : dl '75672' NOT confirmed! [ 0d 21h 1m 12s ] 2017-04-22 00:37:16.896 DEBUG 2772 --- [kExecutor-14834] burstcoin.jminer.JMinerCommandLine : strange dl result '-1', calculated '75672' block '351804' nonce '4221033711' 2017-04-22 00:37:17.759 INFO 2772 --- [readerPool-2121] burstcoin.jminer.JMinerCommandLine : 31% done (101TB 876GB), avg.'3082 MB/s', eff.'3976 MB/s' 2017-04-22 00:37:19.393 INFO 2772 --- [readerPool-2131] burstcoin.jminer.JMinerCommandLine : 39% done (127TB 135GB), avg.'3198 MB/s', eff.'3774 MB/s' 2017-04-22 00:37:20.994 INFO 2772 --- [readerPool-2103] burstcoin.jminer.JMinerCommandLine : 47% done (152TB 510GB), avg.'3293 MB/s', eff.'3869 MB/s' 2017-04-22 00:37:21.438 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : dl '69610' send (pool) [nonce '5027817887'] 2017-04-22 00:37:21.980 INFO 2772 --- [kExecutor-14848] b.j.c.n.task.NetworkSubmitPoolNonceTask : dl '69610' not accepted by pool! 2017-04-22 00:37:21.991 DEBUG 2772 --- [kExecutor-14848] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error code: '1007'. 2017-04-22 00:37:21.991 DEBUG 2772 --- [kExecutor-14848] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error description: 'The deadline for your nonce is REALLY BAD: 141602 years, 8 months, 3 days, 8 hours, 56 secs - wrong block? are your plot files corrupted?'. 2017-04-22 00:37:22.003 DEBUG 2772 --- [kExecutor-14848] burstcoin.jminer.JMinerCommandLine : strange dl source 'C:\data\burst#88\12760599261465029898_5025000000_7629448_7629448' 2017-04-22 00:37:22.003 DEBUG 2772 --- [kExecutor-14848] burstcoin.jminer.JMinerCommandLine : strange dl file chunks '1', parts per chunk '8', block '351804' 2017-04-22 00:37:22.011 INFO 2772 --- [kExecutor-14848] burstcoin.jminer.JMinerCommandLine : dl '69610' NOT confirmed! [ 0d 19h 20m 10s ] 2017-04-22 00:37:22.011 DEBUG 2772 --- [kExecutor-14848] burstcoin.jminer.JMinerCommandLine : strange dl result '-1', calculated '69610' block '351804' nonce '5027817887' 2017-04-22 00:37:22.669 INFO 2772 --- [readerPool-2105] burstcoin.jminer.JMinerCommandLine : 54% done (177TB 946GB), avg.'3347 MB/s', eff.'3707 MB/s' 2017-04-22 00:37:24.449 INFO 2772 --- [readerPool-2139] burstcoin.jminer.JMinerCommandLine : 62% done (203TB 379GB), avg.'3364 MB/s', eff.'3488 MB/s' 2017-04-22 00:37:25.893 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : dl '77288' send (pool) [nonce '5221581163'] 2017-04-22 00:37:25.961 INFO 2772 --- [readerPool-2153] burstcoin.jminer.core.round.Round : dl '77794' queued 2017-04-22 00:37:26.145 INFO 2772 --- [readerPool-2152] burstcoin.jminer.JMinerCommandLine : 70% done (228TB 755GB), avg.'3394 MB/s', eff.'3655 MB/s' 2017-04-22 00:37:26.439 INFO 2772 --- [kExecutor-14858] b.j.c.n.task.NetworkSubmitPoolNonceTask : dl '77288' not accepted by pool! 2017-04-22 00:37:26.444 DEBUG 2772 --- [kExecutor-14858] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error code: '1007'. 2017-04-22 00:37:26.445 DEBUG 2772 --- [kExecutor-14858] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error description: 'The deadline for your nonce is REALLY BAD: 430722 years, 10 months , 18 hours, 37 mins, 46 secs - wrong block? are your plot files corrupted?'. 2017-04-22 00:37:26.449 DEBUG 2772 --- [kExecutor-14858] burstcoin.jminer.JMinerCommandLine : strange dl source 'C:\data\burst#78\12760599261465029898_5200000000_30521880_30521880' 2017-04-22 00:37:26.450 DEBUG 2772 --- [kExecutor-14858] burstcoin.jminer.JMinerCommandLine : strange dl file chunks '1', parts per chunk '36', block '351804' 2017-04-22 00:37:26.454 INFO 2772 --- [kExecutor-14858] burstcoin.jminer.JMinerCommandLine : dl '77288' NOT confirmed! [ 0d 21h 28m 8s ] 2017-04-22 00:37:26.454 DEBUG 2772 --- [kExecutor-14858] burstcoin.jminer.JMinerCommandLine : strange dl result '-1', calculated '77288' block '351804' nonce '5221581163' 2017-04-22 00:37:27.955 INFO 2772 --- [readerPool-2139] burstcoin.jminer.JMinerCommandLine : 77% done (254TB 194GB), avg.'3397 MB/s', eff.'3429 MB/s' 2017-04-22 00:37:29.726 INFO 2772 --- [readerPool-2111] burstcoin.jminer.JMinerCommandLine : 85% done (279TB 651GB), avg.'3407 MB/s', eff.'3509 MB/s' 2017-04-22 00:37:32.028 INFO 2772 --- [readerPool-2130] burstcoin.jminer.JMinerCommandLine : 93% done (305TB 118GB), avg.'3334 MB/s', eff.'2700 MB/s' 2017-04-22 00:37:42.454 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : dl '77794' send (pool) [nonce '3944050956'] 2017-04-22 00:37:42.454 INFO 2772 --- [readerPool-2132] burstcoin.jminer.JMinerCommandLine : 100% done (330TB 409GB), avg.'2462 MB/s', eff.'592 MB/s' 2017-04-22 00:37:43.008 INFO 2772 --- [kExecutor-14892] b.j.c.n.task.NetworkSubmitPoolNonceTask : dl '77794' not accepted by pool! 2017-04-22 00:37:43.015 DEBUG 2772 --- [kExecutor-14892] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error code: '1007'. 2017-04-22 00:37:43.015 DEBUG 2772 --- [kExecutor-14892] b.j.c.n.task.NetworkSubmitPoolNonceTask : Error description: 'The deadline for your nonce is REALLY BAD: 400486 years, 7 months, 14 days, 19 hours, 19 mins, 3 secs - wrong block? are your plot files corrupted?'. 2017-04-22 00:37:43.017 DEBUG 2772 --- [kExecutor-14892] burstcoin.jminer.JMinerCommandLine : strange dl source 'C:\data\burst#76\12760599261465029898_3940000000_7500000_7500000' 2017-04-22 00:37:43.017 DEBUG 2772 --- [kExecutor-14892] burstcoin.jminer.JMinerCommandLine : strange dl file chunks '1', parts per chunk '10', block '351804' 2017-04-22 00:37:43.019 INFO 2772 --- [kExecutor-14892] burstcoin.jminer.JMinerCommandLine : dl '77794' NOT confirmed! [ 0d 21h 36m 34s ] 2017-04-22 00:37:43.019 DEBUG 2772 --- [kExecutor-14892] burstcoin.jminer.JMinerCommandLine : strange dl result '-1', calculated '77794' block '351804' nonce '3944050956' 2017-04-22 00:37:43.269 INFO 2772 --- [ roundPool-1] burstcoin.jminer.JMinerCommandLine : FINISH block '351804', best deadline 'N/A', round time '33s 330ms'However this case is very unlikely to happen ... maybe once ever 2nd day or something.
-
@luxe Very interesting theory. I first started noticing the NOT confirmed deadlines the last time the network forked hard during a 'rain' storm. If jminer doesn't get the memo when the wallet updates the blockchain during a round, then that certainly needs to be added. jminer needs to be on that wallet like white on rice. :)
However, I think this issue and the issue where queued deadlines might not get submitted still doesn't explain all of the not confirmed deadlines. I've seen some rounds where I will have 5 - 6 confirmed deadlines and then one deadline that just doesn't confirm. It gets resubmitted to the wallet and not confirmed again. jminer doesn't report anything wrong with the deadline or the plot file in particular like it does in most cases, baffling me even further. Makes me think there's some issue with how I plot files with GPU plot generator. I also had trouble getting blago's miner to work when I tried it. I'm sure it's something I've missed, but after an hour or so I had to give up.
Unfortunately, I don't have an example handy because my machine is currently in multiple pieces due to motherboard issues and it looks like the new mobo I just got yesterday is DOA... so much for my epic saturday miner rebuild.
-
@sevencardz No it does not explain all, there are various reasons .. and the above is one of them.


