At closing time, the current FixedIntBlockIndexOutput flushes blocks of blockSize even if there is only a few integers in the block.
This can be problematic and causes a big overhead when using large blockSize (e.g., 1024), on small segments or on rare term posting list.
One solution will be to have a secondary flushBlock method with an additional paramter: the valid length of a buffer. This method will be only called in the FixedIntBlockIndexOutput#close() method.
The way this particular block of integers are encoded are left to subclasses.