code: private void toData(ByteArrayOutputStream bos)
      throws IOException
    {
      writeString(bos, _name);
      
      BitsUtil.writeInt16(bos, keyColumnStart());
      BitsUtil.writeInt16(bos, keyColumnEnd());
      
      BitsUtil.writeInt16(bos, _columns.length);
      for (Column column : _columns) {
        column.toData(bos);
      }
      
      BitsUtil.writeInt16(bos, _blobs.length);
      for (Column column : _blobs) {
        column.toData(bos);
      }
      
      int headerLength = _objectSchema.length;
      
      // key/value attributes
      BitsUtil.writeInt16(bos, headerLength);
      
      for (Class<?> type : _objectSchema) {
        toDataSchema(bos, type);
      }
    }
docs: Serialize the row's metadata to enable upgrade.