OneSizeFitsQuorum commented on code in PR #180:
URL: https://github.com/apache/tsfile/pull/180#discussion_r1696914637
##########
java/tsfile/src/main/java/org/apache/tsfile/write/chunk/AlignedChunkWriterImpl.java:
##########
@@ -146,6 +202,37 @@ public AlignedChunkWriterImpl(List<IMeasurementSchema>
schemaList) {
this.remainingPointsNumber =
timeChunkWriter.getRemainingPointNumberForCurrentPage();
}
+ public AlignedChunkWriterImpl(List<IMeasurementSchema> schemaList, int
rowCount) {
+ TSEncoding timeEncoding =
+
TSEncoding.valueOf(TSFileDescriptor.getInstance().getConfig().getTimeEncoder());
+ TSDataType timeType =
TSFileDescriptor.getInstance().getConfig().getTimeSeriesDataType();
+ CompressionType timeCompression =
TSFileDescriptor.getInstance().getConfig().getCompressor();
+
+ valueChunkWriterList = new ArrayList<>(schemaList.size());
+ for (int i = 0; i < schemaList.size(); i++) {
+ valueChunkWriterList.add(
+ new ValueChunkWriter(
+ schemaList.get(i).getMeasurementId(),
+ schemaList.get(i).getCompressor(),
+ schemaList.get(i).getType(),
+ schemaList.get(i).getEncodingType(),
+ schemaList.get(i).getValueEncoder(),
+ rowCount));
+ }
+
+ timeChunkWriter =
+ new TimeChunkWriter(
+ "",
+ timeCompression,
+ timeEncoding,
+
TSEncodingBuilder.getEncodingBuilder(timeEncoding).getEncoder(timeType),
+ rowCount);
+
+ this.valueIndex = 0;
+
Review Comment:
empty line
##########
java/tsfile/src/main/java/org/apache/tsfile/write/chunk/ValueChunkWriter.java:
##########
@@ -106,6 +106,40 @@ public ValueChunkWriter(
new ValuePageWriter(valueEncoder,
ICompressor.getCompressor(compressionType), dataType);
}
+ public ValueChunkWriter(
+ String measurementId,
+ CompressionType compressionType,
+ TSDataType dataType,
+ TSEncoding encodingType,
+ Encoder valueEncoder,
+ int rowCount) {
+ this.measurementId = measurementId;
+ this.encodingType = encodingType;
+ this.dataType = dataType;
+ this.compressionType = compressionType;
+ this.pageSizeThreshold =
TSFileDescriptor.getInstance().getConfig().getPageSizeInByte();
+ this.maxNumberOfPointsInPage =
+
TSFileDescriptor.getInstance().getConfig().getMaxNumberOfPointsInPage();
+ this.valueCountInOnePageForNextCheck = MINIMUM_RECORD_COUNT_FOR_CHECK;
+
+ // init statistics for this chunk and page
+ this.statistics = Statistics.getStatsByType(dataType);
+
+ int bufferCount =
Review Comment:
abstract function and add comments
##########
java/tsfile/src/main/java/org/apache/tsfile/write/chunk/AlignedChunkGroupWriterImpl.java:
##########
@@ -170,6 +204,11 @@ public int write(Tablet tablet) throws
WriteProcessException, IOException {
emptyValueChunkWriters.add(entry.getValue());
}
}
+
+ for (int columnIndex = 0; columnIndex < measurementSchemas.size();
++columnIndex) {
Review Comment:
redundant?
##########
java/tsfile/src/main/java/org/apache/tsfile/write/chunk/AlignedChunkWriterImpl.java:
##########
@@ -80,6 +80,36 @@ public AlignedChunkWriterImpl(VectorMeasurementSchema
schema) {
this.remainingPointsNumber =
timeChunkWriter.getRemainingPointNumberForCurrentPage();
}
+ public AlignedChunkWriterImpl(VectorMeasurementSchema schema, int rowCount) {
+
Review Comment:
empyt line
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]