private byte[] updateNoDictionaryStartAndEndKey(byte[] key){
  if (key.length == 0) {
    return key;
  }
  ByteBuffer buffer=ByteBuffer.wrap(key,2,key.length - 2);
  ByteBuffer output=ByteBuffer.allocate(key.length - 2);
  short numberOfByteToStorLength=2;
  for (int i=0; i < numberOfNoDictionaryColumn; i++) {
    output.putShort((short)(buffer.getShort() - numberOfByteToStorLength));
  }
  while (buffer.hasRemaining()) {
    output.put(buffer.get());
  }
  output.rewind();
  return output.array();
}

private byte [ ] updateNoDictionaryStartAndEndKey ( byte [ ] key ) { if ( key . length == 0 ) { return key ; } ByteBuffer buffer = ByteBuffer . wrap ( key , 2 , key . length - 2 ) ; ByteBuffer output = ByteBuffer . allocate ( key . length - 2 ) ; short numberOfByteToStorLength = 2 ; for ( int i = 0 ; i < numberOfNoDictionaryColumn ; i ++ ) { output . putShort ( ( short ) ( buffer . getShort ( ) - numberOfByteToStorLength ) ) ; } while ( buffer . hasRemaining ( ) ) { output . put ( buffer . get ( ) ) ; } output . rewind ( ) ; return output . array ( ) ; }
below method will be used to update the no dictionary start and end key
