Create at most a 250,000 byte block:
I thought that the maximum block size was one megabyte? It's about 250KB?
+ 27 kilobytes of space is set aside for the highest-priority transactions, regardless of fee.
Shouldn't the default mining implementation fill the block with transactions paying the highest fee per kilobyte: sort all pending transactions by fee per kilobyte, descending, and take as many from the top that fit?
Isn't this the logical end-game for miners to maximize their return on block rewards? If mining clients don't already do this, won't they tend towards this model?
Transactions with a small number of inputs/outputs, transferring a large number of bitcoins, that weren't recently received are the highest priority and are included first.
How does prioritizing transactions based on the number of inputs and outputs or coin age help miners? It seems it's only this way because it's how the original code was written but won't that change as soon as miner's decide they want to maximize the return on block rewards?
I ask these questions because they are related to the problem of maximum block size.