code: void writeCheckpointFull(OutputStream os, int rowHead)
      throws IOException
    {
      BitsUtil.writeInt16(os, _blobTail);
      os.write(_buffer, 0, _blobTail);
      
      rowHead = Math.max(rowHead, _rowHead);
      
      int rowLength = _buffer.length - rowHead;
      
      BitsUtil.writeInt16(os, rowLength);
      os.write(_buffer, rowHead, rowLength);
    }
docs: Writes the block to the checkpoint stream.
  
  Because of timing, the requested rowHead might be for an older
  checkpoint of the block, if new rows have arrived since the request.
  
  <pre><code>
  b16 - inline blob length (blobTail)
  &lt;n> - inline blob data
  b16 - row data length (block_size - row_head)
  &lt;m> - row data
  </code></pre>
  
  @param rowHead the requested row head