private void ensureBufferAvailable ( TableBlock block ) throws IOException { if ( ! block . hasBuffer ( ) ) { synchronized ( this ) { if ( ! block . hasBuffer ( ) ) { ByteBuffer buffer = getBuffer ( ) ; block . setBuffer ( buffer ) ; } } } }
Checks whether the given block has a buffer assigned to it . If not it synchronously gets an available buffer and assigns it to the block .