I most times see that the current bitcoin block shows is always the one solved as per bitcoin client & many bitcoin sites.Your statistic page never showed current REAL block which is mining currently.

I think its a small bug escaped.

No, the number is of course correct, I don't see any reason why it should differ from your client. This number mean how many blocks is currently in the blockchain, so it's perfectly fine that your client shows the same number.

Also don't forget that stats page is cached for 30 seconds, so when new block is found, the number on stats page can be different for few seconds.

*tired* I explained this many times. Again, yes this number is wrong, it is due to latency on bitcoin network, this does not affect anything, link to block explorer is correct.

Next?

P.S. Pleae don't double post (here and in fairuser's thread), not funny to respond you twice.

In this particular case, that link to BlockExplorer shows that the 2nd block doesn't exist at all. I suspect it has something to do with the fact that it was found only 21 seconds after the previous one.

In this particular case, that link to BlockExplorer shows that the 2nd block doesn't exist at all. I suspect it has something to do with the fact that it was found only 21 seconds after the previous one.

Good catch, this block is invalid (damn ). I'm checking his presence in blockchain after 100 confirmations, so it will turn to 'invalid' then.

I realized something this morning: The average number of shares per block should be close to the current difficulty

Perhaps you all knew this, but it was big news to me. The number of shares per block bounces around a ton, but if you average it over a long enough time period, it should be close to the current difficulty.

By the same reasoning then, the average shares per block should spend as much time below current difficulty as above current difficulty, (unless there are some rogue shares diluting the pool). It is an area under the curve thing, yes?

By my estimation, the average should actually be above the current difficulty.

If the range of the possible number of shares is from 1 - infinity (if the transactions being worked on continue changing over time, then it could be infinite, it is VERY remotely possible for there to be a block that is never solved)

and the current difficulty is only: 68978.8924579

Many more blocks will take longer than the "expected" amount of time, which is simply an estimated amount of time to represent the group as a whole having spent enough time to generate a single full difficulty block. Each hash you calculate has an equal chance of being the right one, form the very first, to the last one you allow your computer to check they all have an equal chance of being the lucky one. It taking a long time to solve a block does not actually mean that we are necessarily any closer to solving one. Therefore, with the likelihood of extreme outliers in any data with a large enough sample, the average time will end up being higher than the difficulty as a result of a few extreme cases.

I'm sure there are several miner [sic] mistakes in there, but the concept is reasonably accurate I think.

Next, why anybody who didn't contributed to the round should receive any reward?

Would be a lot more fair that way. CPU miners will never find a single share before the total share count is near 5k shares or so. In these cases, you could use the share ratio of the last round the did have time to actually find some shares for.

The idea is not fully finished yet.. But I guess you get the point. If the block was not invalid, only one or two guys would have gotten rewards even if everyone started to hash for it.

CPU miners will never find a single share before the total share count is near 5k shares or so.

Why? This is not correct - everybody has the same chance to hit first share, of course proportionally to his hashrate. Just for curiosity, 7/8 shares was submitted by normal users with decent GPUs (I know some of the users so I can tell), not by users with strong rigs. Of course probability that CPU user with 1mhash/s hit one of first 8 shares is very low, but don't forget that he has 200-300x slower worker.

Quote

In these cases, you could use the share ratio of the last round the did have time to actually find some shares for.

Sorry, I still don't see why. And why the limit should be 5k shares and not 3k or 10k shares. Don't confuse fairness and luck; this artifical limit is definitely less _fair_, because it favors unlucky workers.

No, everything is OK. The hashmeter is calculated from current round (is calculated from submitted shares/round duration). This means that after refresh instantly after block is found, you'll see "Cluster performance: 0Ghash/s", because there isn't any share yet. As the round is going, the hashmeter goes up to real cluster performance.

I have also implemented hashmeter with sliding 5min average (submitted shares in last 5min / 300 sec), which is currently not enabled. This hashmeter is not affected by round ends, but the hashrate variance is much bigger - 5min is not long enough window and speed is changing in +/- 20ghash/s.

EDIT: I just changed hashmeter from round-based to continuous and rised statistics window from 5min to 20min avg, so number should be much more steady/exact now.

CPU miners will never find a single share before the total share count is near 5k shares or so.

Why? This is not correct - everybody has the same chance to hit first share, of course proportionally to his hashrate. Just for curiosity, 7/8 shares was submitted by normal users with decent GPUs (I know some of the users so I can tell), not by users with strong rigs. Of course probability that CPU user with 1mhash/s hit one of first 8 shares is very low, but don't forget that he has 200-300x slower worker.

Quote

In these cases, you could use the share ratio of the last round the did have time to actually find some shares for.

Sorry, I still don't see why. And why the limit should be 5k shares and not 3k or 10k shares. Don't confuse fairness and luck; this artifical limit is definitely less _fair_, because it favors unlucky workers.

Fair points, maybe the idea I threw wasn't quite up to the task. However, since I have endless supply of them ideas, here's another one:

What if the rewards would be calculated only once per day. Every user would get a reward of