Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
Iotdb
提交
e2007390
I
Iotdb
项目概览
apache
/
Iotdb
10 个月 前同步成功
通知
25
Star
3344
Fork
916
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
I
Iotdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
e2007390
编写于
9月 23, 2019
作者:
B
Boris
提交者:
Jialin Qiao
9月 23, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Avoid creating a new ChunkGroupFooter object. (#413)
* Avoid creating a new ChunkGroupFooter object.
上级
ad3b9241
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
9 addition
and
11 deletion
+9
-11
tsfile/src/main/java/org/apache/iotdb/tsfile/write/TsFileWriter.java
...main/java/org/apache/iotdb/tsfile/write/TsFileWriter.java
+4
-6
tsfile/src/main/java/org/apache/iotdb/tsfile/write/chunk/ChunkGroupWriterImpl.java
...apache/iotdb/tsfile/write/chunk/ChunkGroupWriterImpl.java
+3
-4
tsfile/src/main/java/org/apache/iotdb/tsfile/write/chunk/IChunkGroupWriter.java
...rg/apache/iotdb/tsfile/write/chunk/IChunkGroupWriter.java
+2
-1
未找到文件。
tsfile/src/main/java/org/apache/iotdb/tsfile/write/TsFileWriter.java
浏览文件 @
e2007390
...
...
@@ -22,19 +22,17 @@ import java.io.File;
import
java.io.IOException
;
import
java.util.HashMap
;
import
java.util.Map
;
import
org.apache.iotdb.tsfile.common.conf.TSFileConfig
;
import
org.apache.iotdb.tsfile.common.conf.TSFileDescriptor
;
import
org.apache.iotdb.tsfile.exception.write.NoMeasurementException
;
import
org.apache.iotdb.tsfile.exception.write.WriteProcessException
;
import
org.apache.iotdb.tsfile.file.footer.ChunkGroupFooter
;
import
org.apache.iotdb.tsfile.write.chunk.ChunkGroupWriterImpl
;
import
org.apache.iotdb.tsfile.write.chunk.IChunkGroupWriter
;
import
org.apache.iotdb.tsfile.write.record.RowBatch
;
import
org.apache.iotdb.tsfile.write.record.TSRecord
;
import
org.apache.iotdb.tsfile.write.record.datapoint.DataPoint
;
import
org.apache.iotdb.tsfile.write.schema.Schema
;
import
org.apache.iotdb.tsfile.write.schema.MeasurementSchema
;
import
org.apache.iotdb.tsfile.write.schema.Schema
;
import
org.apache.iotdb.tsfile.write.writer.TsFileIOWriter
;
import
org.apache.iotdb.tsfile.write.writer.TsFileOutput
;
import
org.slf4j.Logger
;
...
...
@@ -303,11 +301,11 @@ public class TsFileWriter implements AutoCloseable{
String
deviceId
=
entry
.
getKey
();
IChunkGroupWriter
groupWriter
=
entry
.
getValue
();
fileWriter
.
startChunkGroup
(
deviceId
);
ChunkGroupFooter
chunkGroupFooter
=
groupWriter
.
flushToFileWriter
(
fileWriter
);
if
(
fileWriter
.
getPos
()
-
pos
!=
chunkGroupFooter
.
getDataSize
()
)
{
long
dataSize
=
groupWriter
.
flushToFileWriter
(
fileWriter
);
if
(
fileWriter
.
getPos
()
-
pos
!=
dataSize
)
{
throw
new
IOException
(
String
.
format
(
"Flushed data size is inconsistent with computation! Estimated: %d, Actual: %d"
,
chunkGroupFooter
.
getDataSize
()
,
fileWriter
.
getPos
()
-
pos
));
dataSize
,
fileWriter
.
getPos
()
-
pos
));
}
fileWriter
.
endChunkGroup
(
0
);
}
...
...
tsfile/src/main/java/org/apache/iotdb/tsfile/write/chunk/ChunkGroupWriterImpl.java
浏览文件 @
e2007390
...
...
@@ -118,17 +118,16 @@ public class ChunkGroupWriterImpl implements IChunkGroupWriter {
}
@Override
public
ChunkGroupFooter
flushToFileWriter
(
TsFileIOWriter
fileWriter
)
throws
IOException
{
public
long
flushToFileWriter
(
TsFileIOWriter
fileWriter
)
throws
IOException
{
LOG
.
debug
(
"start flush device id:{}"
,
deviceId
);
// make sure all the pages have been compressed into buffers, so that we can get correct
// groupWriter.getCurrentChunkGroupSize().
sealAllChunks
();
ChunkGroupFooter
footer
=
new
ChunkGroupFooter
(
deviceId
,
getCurrentChunkGroupSize
(),
getSeriesNumber
());
long
currentChunkGroupSize
=
getCurrentChunkGroupSize
();
for
(
IChunkWriter
seriesWriter
:
chunkWriters
.
values
())
{
seriesWriter
.
writeToFileWriter
(
fileWriter
);
}
return
footer
;
return
currentChunkGroupSize
;
}
@Override
...
...
tsfile/src/main/java/org/apache/iotdb/tsfile/write/chunk/IChunkGroupWriter.java
浏览文件 @
e2007390
...
...
@@ -69,8 +69,9 @@ public interface IChunkGroupWriter {
* - TSFileIOWriter
* @throws IOException
* exception in IO
* @return current ChunkGroupDataSize
*/
ChunkGroupFooter
flushToFileWriter
(
TsFileIOWriter
tsfileWriter
)
throws
IOException
;
long
flushToFileWriter
(
TsFileIOWriter
tsfileWriter
)
throws
IOException
;
/**
* get the max memory occupied at this time.
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录