You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@iotdb.apache.org by GitBox <gi...@apache.org> on 2019/11/29 12:32:04 UTC

[GitHub] [incubator-iotdb] qiaojialin commented on a change in pull request #587: [IOTDB-325] Refactor Statistics

qiaojialin commented on a change in pull request #587: [IOTDB-325] Refactor Statistics
URL: https://github.com/apache/incubator-iotdb/pull/587#discussion_r352112676
 
 

 ##########
 File path: tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/ChunkMetaData.java
 ##########
 @@ -78,90 +68,23 @@ private ChunkMetaData() {
    * @param measurementUid measurement id
    * @param tsDataType time series data type
    * @param fileOffset file offset
-   * @param startTime chunk start time
-   * @param endTime chunk end time
+   * @param statistics value statistics
    */
   public ChunkMetaData(String measurementUid, TSDataType tsDataType, long fileOffset,
-      long startTime, long endTime) {
+    Statistics statistics) {
     this.measurementUid = measurementUid;
     this.tsDataType = tsDataType;
     this.offsetOfChunkHeader = fileOffset;
-    this.startTime = startTime;
-    this.endTime = endTime;
-  }
-
-  /**
-   * deserialize from InputStream.
-   *
-   * @param inputStream InputStream
-   * @return ChunkMetaData object
-   * @throws IOException IOException
-   */
-  public static ChunkMetaData deserializeFrom(InputStream inputStream) throws IOException {
-    ChunkMetaData chunkMetaData = new ChunkMetaData();
-
-    chunkMetaData.measurementUid = ReadWriteIOUtils.readString(inputStream);
-
-    chunkMetaData.offsetOfChunkHeader = ReadWriteIOUtils.readLong(inputStream);
-
-    chunkMetaData.numOfPoints = ReadWriteIOUtils.readLong(inputStream);
-    chunkMetaData.startTime = ReadWriteIOUtils.readLong(inputStream);
-    chunkMetaData.endTime = ReadWriteIOUtils.readLong(inputStream);
-
-    chunkMetaData.tsDataType = ReadWriteIOUtils.readDataType(inputStream);
-
-    chunkMetaData.valuesStatistics = Statistics.deserializeFrom(inputStream, chunkMetaData.tsDataType);
-
-    return chunkMetaData;
-  }
-
-  /**
-   * deserialize from ByteBuffer.
-   *
-   * @param buffer ByteBuffer
-   * @return ChunkMetaData object
-   */
-  public static ChunkMetaData deserializeFrom(ByteBuffer buffer) {
-    ChunkMetaData chunkMetaData = new ChunkMetaData();
-
-    chunkMetaData.measurementUid = ReadWriteIOUtils.readString(buffer);
-    chunkMetaData.offsetOfChunkHeader = ReadWriteIOUtils.readLong(buffer);
-    chunkMetaData.numOfPoints = ReadWriteIOUtils.readLong(buffer);
-    chunkMetaData.startTime = ReadWriteIOUtils.readLong(buffer);
-    chunkMetaData.endTime = ReadWriteIOUtils.readLong(buffer);
-    chunkMetaData.tsDataType = ReadWriteIOUtils.readDataType(buffer);
-
-    chunkMetaData.valuesStatistics = Statistics.deserializeFrom(buffer, chunkMetaData.tsDataType);
-
-    return chunkMetaData;
-  }
-
-  /**
-   * get serialized size.
-   *
-   * @return serialized size (int type)
-   */
-  public int getSerializedSize() {
-    int serializedSize = (Integer.BYTES  +
-            4 * Long.BYTES + // 4 long: offsetOfChunkHeader, numOfPoints, startTime, endTime
-            TSDataType.getSerializedSize() + // TSDataType
-            (valuesStatistics == null ? Statistics.getNullDigestSize()
-                    : valuesStatistics.getDigestSerializedSize()));
-    serializedSize += measurementUid.getBytes(TSFileConfig.STRING_CHARSET).length;  // measurementUid
-    return serializedSize;
+    this.statistics = statistics;
   }
 
   @Override
   public String toString() {
-    return String.format("numPoints %d", numOfPoints);
+    return String.format("numPoints %d", statistics.getCount());
 
 Review comment:
   printed

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services