You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2020/12/02 08:04:31 UTC
[iotdb] 07/11: debug
This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch NewTsFile
in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit e84b33e88c80e517c376d2598c6751d1cb211451
Author: JackieTien97 <Ja...@foxmail.com>
AuthorDate: Fri Nov 27 09:53:33 2020 +0800
debug
---
.../iotdb/tsfile/file/header/ChunkGroupHeader.java | 10 ++++------
.../apache/iotdb/tsfile/file/header/ChunkHeader.java | 17 +++++++----------
.../iotdb/tsfile/file/metadata/TimeseriesMetadata.java | 4 ++--
.../org/apache/iotdb/tsfile/utils/ReadWriteIOUtils.java | 2 +-
.../iotdb/tsfile/write/writer/TsFileIOWriter.java | 3 ++-
5 files changed, 16 insertions(+), 20 deletions(-)
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkGroupHeader.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkGroupHeader.java
index 4b0a424..429a9b4 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkGroupHeader.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkGroupHeader.java
@@ -25,6 +25,7 @@ import java.io.OutputStream;
import org.apache.iotdb.tsfile.common.conf.TSFileConfig;
import org.apache.iotdb.tsfile.file.MetaMarker;
import org.apache.iotdb.tsfile.read.reader.TsFileInput;
+import org.apache.iotdb.tsfile.utils.ReadWriteForEncodingUtils;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
public class ChunkGroupHeader {
@@ -43,15 +44,12 @@ public class ChunkGroupHeader {
*/
public ChunkGroupHeader(String deviceID) {
this.deviceID = deviceID;
- this.serializedSize = Byte.BYTES + Integer.BYTES + deviceID.getBytes(TSFileConfig.STRING_CHARSET).length;
+ this.serializedSize = getSerializedSize(deviceID);
}
public static int getSerializedSize(String deviceID) {
- return Byte.BYTES + Integer.BYTES + getSerializedSize(deviceID.length());
- }
-
- private static int getSerializedSize(int deviceIdLength) {
- return deviceIdLength + Long.BYTES + Integer.BYTES;
+ int length = deviceID.getBytes(TSFileConfig.STRING_CHARSET).length;
+ return Byte.BYTES + ReadWriteForEncodingUtils.varIntSize(length) + length;
}
/**
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkHeader.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkHeader.java
index 6f9beac..76c1813 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkHeader.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/header/ChunkHeader.java
@@ -111,7 +111,7 @@ public class ChunkHeader {
throws IOException {
// read measurementID
String measurementID = ReadWriteIOUtils.readVarIntString(inputStream);
- int dataSize = ReadWriteForEncodingUtils.readVarInt(inputStream);
+ int dataSize = ReadWriteForEncodingUtils.readUnsignedVarInt(inputStream);
TSDataType dataType = ReadWriteIOUtils.readDataType(inputStream);
CompressionType type = ReadWriteIOUtils.readCompressionType(inputStream);
TSEncoding encoding = ReadWriteIOUtils.readEncoding(inputStream);
@@ -136,9 +136,8 @@ public class ChunkHeader {
byte chunkType = buffer.get();
// read measurementID
- int size = ReadWriteForEncodingUtils.readVarInt(buffer);
- String measurementID = ReadWriteIOUtils.readStringWithLength(buffer, size);
- int dataSize = ReadWriteForEncodingUtils.readVarInt(buffer);
+ String measurementID = ReadWriteIOUtils.readVarIntString(buffer);
+ int dataSize = ReadWriteForEncodingUtils.readUnsignedVarInt(buffer);
TSDataType dataType = ReadWriteIOUtils.readDataType(buffer);
CompressionType type = ReadWriteIOUtils.readCompressionType(buffer);
TSEncoding encoding = ReadWriteIOUtils.readEncoding(buffer);
@@ -174,10 +173,9 @@ public class ChunkHeader {
public int serializeTo(OutputStream outputStream) throws IOException {
int length = 0;
length += ReadWriteIOUtils.write(chunkType, outputStream);
- length += ReadWriteIOUtils.write(measurementID, outputStream);
- length += ReadWriteIOUtils.write(dataSize, outputStream);
+ length += ReadWriteIOUtils.writeVar(measurementID, outputStream);
+ length += ReadWriteForEncodingUtils.writeUnsignedVarInt(dataSize, outputStream);
length += ReadWriteIOUtils.write(dataType, outputStream);
- length += ReadWriteIOUtils.write(numOfPages, outputStream);
length += ReadWriteIOUtils.write(compressionType, outputStream);
length += ReadWriteIOUtils.write(encodingType, outputStream);
return length;
@@ -192,10 +190,9 @@ public class ChunkHeader {
public int serializeTo(ByteBuffer buffer) {
int length = 0;
length += ReadWriteIOUtils.write(chunkType, buffer);
- length += ReadWriteIOUtils.write(measurementID, buffer);
- length += ReadWriteIOUtils.write(dataSize, buffer);
+ length += ReadWriteIOUtils.writeVar(measurementID, buffer);
+ length += ReadWriteForEncodingUtils.writeUnsignedVarInt(dataSize, buffer);
length += ReadWriteIOUtils.write(dataType, buffer);
- length += ReadWriteIOUtils.write(numOfPages, buffer);
length += ReadWriteIOUtils.write(compressionType, buffer);
length += ReadWriteIOUtils.write(encodingType, buffer);
return length;
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java
index 99b89e0..4f93f17 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/file/metadata/TimeseriesMetadata.java
@@ -83,7 +83,7 @@ public class TimeseriesMetadata implements Accountable {
public static TimeseriesMetadata deserializeFrom(ByteBuffer buffer) {
TimeseriesMetadata timeseriesMetaData = new TimeseriesMetadata();
timeseriesMetaData.setTimeSeriesMetadataType(ReadWriteIOUtils.readByte(buffer));
- timeseriesMetaData.setMeasurementId(ReadWriteIOUtils.readString(buffer));
+ timeseriesMetaData.setMeasurementId(ReadWriteIOUtils.readVarIntString(buffer));
timeseriesMetaData.setTSDataType(ReadWriteIOUtils.readDataType(buffer));
timeseriesMetaData.setOffsetOfChunkMetaDataList(ReadWriteIOUtils.readLong(buffer));
timeseriesMetaData
@@ -102,7 +102,7 @@ public class TimeseriesMetadata implements Accountable {
public int serializeTo(OutputStream outputStream) throws IOException {
int byteLen = 0;
byteLen += ReadWriteIOUtils.write(timeSeriesMetadataType, outputStream);
- byteLen += ReadWriteIOUtils.write(measurementId, outputStream);
+ byteLen += ReadWriteIOUtils.writeVar(measurementId, outputStream);
byteLen += ReadWriteIOUtils.write(dataType, outputStream);
byteLen += ReadWriteIOUtils.write(startOffsetOfChunkMetaDataList, outputStream);
byteLen += ReadWriteForEncodingUtils
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/ReadWriteIOUtils.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/ReadWriteIOUtils.java
index a5b02de..31eb8c7 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/ReadWriteIOUtils.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/utils/ReadWriteIOUtils.java
@@ -365,7 +365,7 @@ public class ReadWriteIOUtils {
}
byte[] bytes = s.getBytes();
- len += write(bytes.length, outputStream);
+ len += ReadWriteForEncodingUtils.writeVarInt(bytes.length, outputStream);
outputStream.write(bytes);
len += bytes.length;
return len;
diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java
index c7eefe0..292e620 100644
--- a/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java
+++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/write/writer/TsFileIOWriter.java
@@ -48,6 +48,7 @@ import org.apache.iotdb.tsfile.read.common.Path;
import org.apache.iotdb.tsfile.utils.BytesUtils;
import org.apache.iotdb.tsfile.utils.Pair;
import org.apache.iotdb.tsfile.utils.PublicBAOS;
+import org.apache.iotdb.tsfile.utils.ReadWriteForEncodingUtils;
import org.apache.iotdb.tsfile.utils.ReadWriteIOUtils;
import org.apache.iotdb.tsfile.utils.VersionUtils;
import org.apache.iotdb.tsfile.write.schema.MeasurementSchema;
@@ -252,7 +253,7 @@ public class TsFileIOWriter {
}
// write TsFileMetaData size
- ReadWriteIOUtils.write(size, out.wrapAsStream());// write the size of the file metadata.
+ ReadWriteForEncodingUtils.writeUnsignedVarInt(size, out.wrapAsStream());// write the size of the file metadata.
// write magic string
out.write(magicStringBytes);