It seems to be very reliable now for mining on a single worker now. Even swapping on and off different workers seems to behave as expected.
I'm pretty sure there's something weird going on with multiple workers on one account, though. Your bible_pay account is only earning about twice as much as jaapgvk despite putting out over 4 times his hash rate. I could understand if it was occasional and he just got a lot of shares that round, but it seems to be every block.
Running some tests now to quantify it a bit better. Running two rigs as two workers under one account right now, going to give it another 10 or 20 blocks then change it so the same rigs are mining on separate accounts, then compare the rewards.
Also, I think the network_khashps is reporting much too low just by comparing it to the pool hash rate. I'm guessing you implemented some of the changes you mentioned the other day?
Thanks on point #1, great.
Yeah, I think on the networkhashps, I convinced myself that it needed changed, and in actuality, it appears it should be changed again, now I think it should have been done this way:
getnetworkhashps 1114 1121 (startblock endblock) with approximately 8 block skips (thats supposedly a little over an hour)
That yields:
169.455075673734 while the pool is currently at 135khps, that seems more sane.
Going back through the chain, for instance with 500 510, it decreases what appears to be appropriately, then around the time of genesis to 100, its really low. I think that is the problem. Let me update the code, and I will get back on the rest of the testing issue, thanks for bringing this to the forefront. Once we release it, this should be relatively easy to check in prod against the bx, I think.