Here is my guess as to what is happening. This is strictly a guess on my part. I'm sure i'll be corrected. Your mileage may vary.

What i think is happening is that the score reset to avoid wrap around is being done on an individual basis. when your score exceeds a certain number it is reset, but everyone elses isn't until they hit that number. This could account for the disparity in payouts. Or, resets for everyone take a long time relative to our input to the pool rate and some of our input is getting lost.

It also seems that things get worse when the pool's hashrate goes up. I'm wondering if perhaps someone has figured out how to play the system for their benefit.

Here is my guess as to what is happening. This is strictly a guess on my part. I'm sure i'll be corrected. Your mileage may vary.

What i think is happening is that the score reset to avoid wrap around is being done on an individual basis. when your score exceeds a certain number it is reset, but everyone elses isn't until they hit that number. This could account for the disparity in payouts. Or, resets for everyone take a long time relative to our input to the pool rate and some of our input is getting lost.

It also seems that things get worse when the pool's hashrate goes up. I'm wondering if perhaps someone has figured out how to play the system for their benefit.

Fire away.

I don't know how to play it for my benefit but this is what I think is happening... When reset accusers some workers don't get reseted. I guess it has something to do with time the share is submitted and calculated during reset(score=score+share*value)... I think that either second score stays the same or value is not reseted yet or both. And since worker has hi score you get more on that round. Depends how long from reset round ends...

Here is my guess as to what is happening. This is strictly a guess on my part. I'm sure i'll be corrected. Your mileage may vary.

What i think is happening is that the score reset to avoid wrap around is being done on an individual basis. when your score exceeds a certain number it is reset, but everyone elses isn't until they hit that number. This could account for the disparity in payouts. Or, resets for everyone take a long time relative to our input to the pool rate and some of our input is getting lost.

It also seems that things get worse when the pool's hashrate goes up. I'm wondering if perhaps someone has figured out how to play the system for their benefit.

Fire away.

I don't know how to play it for my benefit but this is what I think is happening... When reset accusers some workers don't get reseted. I guess it has something to do with time the share is submitted and calculated during reset(score=score+share*value)... I think that either second score stays the same or value is not reseted yet or both. And since worker has hi score you get more on that round. Depends how long from reset round ends...

From what I understand what you are saying it that reset doesn't happens for everyone at the same time. I think it dose. And it happens when total score gets to big. The error accrue during reset because some other system is imputing new share that was found.

From what I understand what you are saying it that reset doesn't happens for everyone at the same time. I think it dose. And it happens when total score gets to big. The error accrue during reset because some other system is imputing new share that was found.

Why is the total score not in double integer? Or a byte integer what is increase every time when score is reset, then when block found is divided from user score?!

From what I understand what you are saying it that reset doesn't happens for everyone at the same time. I think it dose. And it happens when total score gets to big. The error accrue during reset because some other system is imputing new share that was found.

Why is the total score not in double integer? Or a byte integer what is increase every time when score is reset, then when block found is divided from user score?!

When reset accusers some workers don't get reseted. I guess it has something to do with time the share is submitted and calculated during reset(score=score+share*value)

If this is what is happening, then all that is needed is a mutex_lock/unlock around the score update/reset functions, which is an easy fix. Another option is to trigger second reset if some of the miners has 50+% from total score, which is a workaround, but might be easier to implement depending on the pool structure.I doubt Slush wouldn't have fixed something simple like this until now, but he is busy with other things lately, so it is possible that he have just missed it.My personal guess is that it is probably time/clock based and some of the backends is not reset, because it's time is off - that would also explain the situation with the total score not being reset few times too.

When reset accusers some workers don't get reseted. I guess it has something to do with time the share is submitted and calculated during reset(score=score+share*value)

If this is what is happening, then all that is needed is a mutex_lock/unlock around the score update/reset functions, which is an easy fix. Another option is to trigger second reset if some of the miners has 50+% from total score, which is a workaround, but might be easier to implement depending on the pool structure.I doubt Slush wouldn't have fixed something simple like this until now, but he is busy with other things lately, so it is possible that he have just missed it.My personal guess is that it is probably time/clock based and some of the backends is not reset, because it's time is off - that would also explain the situation with the total score not being reset few times too.

I looked at logs(from api on my account) from the time I was figuring out is it me or is it the pool and I was once on wining side of the error. At time of the reset only one of my miners got reseted and other had about the same score. My estimated reword jumped to over 3 BTC, but the round finished and blocked was recalculated... So I'm sure that workers don't get reseted but not sure what is the reason... But I think it is a valid guess...

EDIT: And fixing the bug is easy finding it is not. Sometimes you need another set of eyes.

From what I understand what you are saying it that reset doesn't happens for everyone at the same time. I think it dose. And it happens when total score gets to big. The error accrue during reset because some other system is imputing new share that was found.

Why is the total score not in double integer? Or a byte integer what is increase every time when score is reset, then when block found is divided from user score?!

You would have to ask the programmer. Most likely there is not a "type" that is large enough to handle the number we are dealing with. We can't say for sure what is happening, we can only take a WAG(Wild Ass Guess) based on what we are seeing. No one but Slush can answer your question and he is Missing I Action at the moment.