This is an automated email from the ASF dual-hosted git repository. hxd pushed a commit to branch for_release_rel_0.12 in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 09626de00c3be3beb4680edea5750848ca954d5d Author: xiangdong huang <[email protected]> AuthorDate: Mon Apr 5 11:55:31 2021 +0800 for releasing 0.12.0: add version 0.12 in website, add release_note --- Jenkinsfile | 2 +- RELEASE_NOTES.md | 149 ++++++++++++++++++++ site/pom.xml | 92 ++++++++++++ site/src/main/.vuepress/config.js | 284 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 526 insertions(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index c883763..f1f57b3 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -136,7 +136,7 @@ pipeline { } steps { // Publish the site with the scm-publish plugin. - sh 'mvn -P site -P compile-site -P compile-site-0.11 -P compile-site-0.10 -P compile-site-0.9 -P compile-site-0.8 compile scm-publish:publish-scm -pl site' + sh 'mvn -P site -P compile-site -P compile-site-0.12 -P compile-site-0.11 -P compile-site-0.10 -P compile-site-0.9 -P compile-site-0.8 compile scm-publish:publish-scm -pl site' // Clean up the snapshots directory (freeing up more space after deploying). dir("target") { diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 911a87b..df16fb9 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -19,6 +19,155 @@ --> +# Apache IoTDB 0.12.0 + +## New Features +* [IOTDB-68] New shared-nothing cluster +* [IOTDB-507] Add zeppelin-interpreter module +* [IOTDB-825] Aggregation by natural month +* [IOTDB-890] support SDT lossy compression +* [IOTDB-944] Support UDTF (User-defined Timeseries Generating Function) +* [IOTDB-965] Add timeout parameter for query +* [IOTDB-1077] Add insertOneDeviceRecords API in java session +* [IOTDB-1055] Support data compression type GZIP +* [IOTDB-1024] Support multiple aggregated measurements for group by level statement +* [IOTDB-1276] Add explain sql support and remove debug_state parameter +* [IOTDB-1197] Add iotdb-client-go as a git submodule of IoTDB repo +* [IOTDB-1230] Support spans multi time partitions when loading one TsFile +* [IOTDB-1273] Feature/restrucutre python module as well as supporting pandas dataframe +* [IOTDB-1277] support IoTDB as Flink's data source +* [PR-2605] Add level merge to "merge" command + +## Incompatible changes +* [IOTDB-1081] New TsFile Format +* [ISSUE-2730] Add the number of unseq merge times in TsFile name. + + +## Miscellaneous changes +* [IOTDB-868] Change mlog from txt to bin +* [IOTDB-1069] Restrict the flushing memtable number to avoid OOM when mem_control is disabled +* [IOTDB-1104] Refactor the error handling process of query exceptions +* [IOTDB-1108] Add error log to print file name while error happened +* [IOTDB-1152] Optimize regular data size in traversing +* [IOTDB-1180] Reset the system log file names and maximal disk-space size +* [ISSUE-2515] Set fetchsize through JDBC and Session +* [ISSUE-2598] Throw explicit exception when time series is unknown in where clause +* [PR-2944] Throw exception when device to be queried is not in TsFileMetaData +* [PR-2967] Log memory usage information in SystemInfo for better diagnosis + +## Bug Fixes +* [IOTDB-1049] Fix NullpointerException and a delete bug in Last query +* [IOTDB-1050] Fix Count timeserise column name is wrong +* [IOTDB-1068] Fix Time series metadata cache bug +* [IOTDB-1084] Fix temporary memory of flushing may cause OOM +* [IOTDB-1106] Fix delete timeseries bug +* [IOTDB-1126] Fix the unseq tsfile delete due to merge +* [IOTDB-1135] Fix the count timeseries prefix path bug +* [IOTDB-1137] Fix MNode.getLeafCount error when existing sub-device +* [ISSUE-2484] Fix creating timeseries error by using "create" or "insert" statement +* [ISSUE-2545, 2549] Fix unseq merge end time bug +* [ISSUE-2611] An unsequence file that covers too many sequence file causes OOM query +* [ISSUE-2688] LRULinkedHashMap does not work as an LRU Cache +* [ISSUE-2709, 1178] Fix cache not cleared after unseq compaction bug, Fix windows 70,10 ci bug in unseq compaction ci +* [ISSUE-2741] getObject method in JDBC should return an Object +* [ISSUE-2746] Fix data overlapped bug after unseq compaction +* [ISSUE-2758] NullPointerException in QueryTimeManager.checkQueryAlive() +* [ISSUE-2905] Fix Files.deleteIfExists() doesn't work for HDFS file +* [ISSUE-2919] Fix C++ client memory leak bug +* [PR-2613] Fix importCSVTool import directory bug & encode bug +* [PR-2409] Fix import csv which can't import time format str +* [PR-2582] Fix sync bug for tsfiles's directory changed by vitural storage group +* [ISSUE-2911] Fix The write stream is not closed when executing the command 'tracing off' + + +# Apache IoTDB 0.11.3 + +## Bug Fixes +* ISSUE-2505 ignore PathNotExistException in recover and change recover error to warn +* IOTDB-1119 Fix C++ SessionDataSet bug when reading value buffer +* Fix SessionPool does not recycle session and can not offer new Session due to RunTimeException +* ISSUE-2588 Fix dead lock between deleting data and querying in parallel +* ISSUE-2546 Fix first chunkmetadata should be consumed first +* IOTDB-1126 Fix unseq tsfile is deleted due to compaction +* IOTDB-1137 MNode.getLeafCount error when existing sub-device +* ISSUE-2624 ISSUE-2625 Avoid OOM if user don't close Statement and Session manually +* ISSUE-2639 Fix possible NPE during end query process +* Alter IT for An error is reported and the system is suspended occasionally +* IOTDB-1149 print error for -e param when set maxPRC<=0 +* IOTDB-1247 Fix the insert blocked caused the bugs in mem control module +* ISSUE-2648 Last query not right when having multiple devices +* Delete mods files after compaction +* ISSUE-2687 fix insert NaN bug +* ISSUE-2598 Throw explicit exception when time series is unknown in where clause +* Fix timeseriesMetadata cache is not cleared after the TsFile is deleted by a compaction +* ISSUE-2611 An unsequence file that covers too many sequence file causes OOM query +* IOTDB-1135 Fix count timeseries bug when the paths are nested +* ISSUE-2709 IOTDB-1178 Fix cache is not cleared after compaction +* ISSUE-2746 Fix data overlapped bug after the elimination unseq compaction process +* Fix getObject method in JDBC should return an Object +* IOTDB-1188 Fix IoTDB 0.11 unable to delete data bug +* Fix when covering a tsfile resource with HistoricalVersion = null, it’ll throw a NPE +* fix the elimination unseq compaction may loss data bug after a delete operation is executed +* Fix a bug of checking time partition in DeviceTimeIndex +* Throw exeception when device to be queried is not in tsFileMetaData +* Fix unseq compaction file selector conflicts with time partition bug +* Fix high CPU usage during the compaction process + +## Improvements +* IOTDB-1140 optimize regular data encoding +* Add more log for better tracing +* Add backgroup exec for cli -e function +* Add max direct memory size parameter to env.sh +* Change last cache log to debug level + +## New Features +* Add explain sql support + + +# Apache IoTDB 0.11.2 + +## Bug Fixes +* IOTDB-1049 Fix Nullpointer exception and a delete bug in Last query +* IOTDB-1060 Support full deletion for delete statement without where clause +* IOTDB-1068 Fix Time series metadata cache bug +* IOTDB-1069 restrict the flushing memtable number to avoid OOM when mem_control is disabled +* IOTDB-1077 add insertOneDeviceRecords API in java session +* IOTDB-1087 fix compaction block flush: flush do not return until compaction finished +* IOTDB-1106 Delete timeseries statement will incorrectly delete other timeseries +* Github issue-2137 fix grafana value-time position bug +* Github issue-2169 GetObject returns String for all data types +* Github issue-2240 fix Sync failed: Socket is closed by peer +* Github issue-2387 The deleteData method exists in Session but not in SessionPool. +* add thrift_max_frame_size in iotdb-engine.properties +* Fix incorrect last result after deleting all data +* Fix compaction recover block restart: IoTDB cannot restart until last compaction recover task finished +* Fix compaction ignore modification file: delete does not work after compaction +* print more insert error message in client +* expose enablePartition parameter into iotdb-engines.properpties + +# Apache IoTDB 0.11.1 + +## Bug Fixes +* IOTDB-990 cli parameter maxPRC shouldn't to be set zero +* IOTDB-993 Fix tlog bug +* IOTDB-994 Fix can not get last_value while doing the aggregation query along with first_value +* IOTDB-1000 Fix read redundant data while select with value filter with unseq data +* IOTDB-1007 Fix session pool concurrency and leakage issue when pool.close is called +* IOTDB-1016 overlapped data should be consumed first +* IOTDB-1021 Fix NullPointerException when showing child paths of non-existent path +* IOTDB-1028 add MAX\_POINT\_NUMBER format check +* IOTDB-1034 Fix Show timeseries error in Chinese on Windows +* IOTDB-1035 Fix bug in getDeviceTimeseriesMetadata when querying non-exist device +* IOTDB-1038 Fix flink set storage group bug +* ISSUE-2179 fix insert partial tablet with binary NullPointer bug +* add reject status code +* Update compaction level list delete +* Fix query result is not correct +* Fix import errors in Session.py and SessionExample.py +* Fix modules can not be found when using pypi to pack client-py +* Fix Count timeseries group by level bug +* Fix desc batchdata count bug + # Apache IoTDB 0.11.0 ## New Features diff --git a/site/pom.xml b/site/pom.xml index fd02a34..5b4a2e8 100644 --- a/site/pom.xml +++ b/site/pom.xml @@ -422,6 +422,98 @@ </build> </profile> <profile> + <id>compile-site-0.12</id> + <build> + <plugins> + <!-- download 0.12 docs from iotdb repo --> + <plugin> + <groupId>com.googlecode.maven-download-plugin</groupId> + <artifactId>download-maven-plugin</artifactId> + <version>1.3.0</version> + <executions> + <execution> + <id>get-0.12-docs</id> + <phase>generate-sources</phase> + <goals> + <goal>wget</goal> + </goals> + <configuration> + <url>https://github.com/apache/iotdb/archive/rel/0.12.zip</url> + <outputDirectory>${project.build.directory}/download</outputDirectory> + <outputFileName>0.12.x.zip</outputFileName> + </configuration> + </execution> + </executions> + </plugin> + <!-- unpack 0.12 docs from the zip files--> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>truezip-maven-plugin</artifactId> + <version>1.2</version> + <inherited>false</inherited> + <executions> + <execution> + <id>copy-0.12-documentation</id> + <goals> + <goal>copy</goal> + </goals> + <phase>generate-sources</phase> + <configuration> + <fileset> + <directory>${project.build.directory}/download/0.12.x.zip/iotdb-rel-0.12/docs/UserGuide</directory> + <outputDirectory>${project.build.directory}/vue-source/src/UserGuide/V0.12.x</outputDirectory> + </fileset> + </configuration> + </execution> + <execution> + <id>copy-0.12-zh-documentation</id> + <goals> + <goal>copy</goal> + </goals> + <phase>generate-sources</phase> + <configuration> + <fileset> + <directory>${project.build.directory}/download/0.12.x.zip/iotdb-rel-0.12/docs/zh/UserGuide</directory> + <outputDirectory>${project.build.directory}/vue-source/src/zh/UserGuide/V0.12.x</outputDirectory> + </fileset> + </configuration> + </execution> + </executions> + </plugin> + <!-- remove files if `existing` folder exist--> + <plugin> + <groupId>com.coderplus.maven.plugins</groupId> + <artifactId>copy-rename-maven-plugin</artifactId> + <version>1.0</version> + <executions> + <execution> + <id>clean-stale-0.12-doc</id> + <phase>compile</phase> + <goals> + <goal>rename</goal> + </goals> + <configuration> + <sourceFile>${project.build.directory}/existing/UserGuide/V0.12.x</sourceFile> + <destinationFile>${project.build.directory}/existing/V0.12.x</destinationFile> + </configuration> + </execution> + <execution> + <id>clean-stale-0.12-zh-doc</id> + <phase>compile</phase> + <goals> + <goal>rename</goal> + </goals> + <configuration> + <sourceFile>${project.build.directory}/existing/zh/UserGuide/V0.12.x</sourceFile> + <destinationFile>${project.build.directory}/existing/zh/V0.12.x</destinationFile> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + </profile> + <profile> <id>compile-site-0.11</id> <build> <plugins> diff --git a/site/src/main/.vuepress/config.js b/site/src/main/.vuepress/config.js index 8cffce3..d113888 100644 --- a/site/src/main/.vuepress/config.js +++ b/site/src/main/.vuepress/config.js @@ -73,6 +73,7 @@ var config = { text: 'Document', items: [ { text: 'In progress', link: '/UserGuide/Master/QuickStart/QuickStart' }, + { text: 'V0.12.x', link: '/UserGuide/V0.12.x/QuickStart/QuickStart' }, { text: 'V0.11.x', link: '/UserGuide/V0.11.x/Get Started/QuickStart' }, { text: 'V0.10.x', link: '/UserGuide/V0.10.x/Get Started/QuickStart' }, { text: 'V0.9.x', link: '/UserGuide/V0.9.x/0-Get Started/1-QuickStart' }, @@ -494,6 +495,150 @@ var config = { ] } ], + '/UserGuide/V0.12.x/': [ + { + title:'IoTDB User Guide (V0.12.x)', + collapsable: false, + }, + { + title: 'IoTDB Introduction', + children: [ + ['IoTDB-Introduction/What-is-IoTDB','What is IoTDB'], + ['IoTDB-Introduction/Architecture','Architecture'], + ['IoTDB-Introduction/Scenario','Scenario'], + ['IoTDB-Introduction/Features','Features'], + ['IoTDB-Introduction/Publication','Publication'] + ] + }, + { + title: 'Quick Start', + children: [ + ['QuickStart/QuickStart','QuickStart'], + ['QuickStart/Files','Storage Path Setting'], + ['QuickStart/WayToGetIoTDB','Get IoTDB Binary files'] + ] + }, + { + title: 'Data Concept', + children: [ + ['Data-Concept/Data-Model-and-Terminology','Data Model and Terminology'], + ['Data-Concept/Data-Type','Data Type'], + ['Data-Concept/Encoding','Encoding'], + ['Data-Concept/Compression','Compression'], + ['Data-Concept/SDT','SDT'] + ] + }, + { + title: 'CLI', + children: [ + ['CLI/Command-Line-Interface','Command Line Interface'] + ] + }, + { + title: 'Administration Management', + children: [ + ['Administration-Management/Administration','Administration'] + ] + }, + { + title: 'IoTDB-SQL Language', + children: [ + ['IoTDB-SQL-Language/DDL-Data-Definition-Language','DDL (Data Definition Language)'], + ['IoTDB-SQL-Language/DML-Data-Manipulation-Language','DML (Data Manipulation Language)'], + ['IoTDB-SQL-Language/Maintenance-Command','Maintenance Command'] + ] + }, + { + title: 'API', + children: [ + ['API/Programming-JDBC','JDBC'], + ['API/Programming-Native-API','Native API'], + ['API/Programming-Other-Languages','Other Languages'], + ['API/Programming-TsFile-API','TsFile API'] + ] + }, + { + title: 'UDF', + children: [ + ['UDF/UDF-User-Defined-Function','UDF (User Defined Function)'] + ] + }, + // The trigger module has not been implemented yet, + // so the website should not show users how to use it to avoid misleading. + // { + // title: 'Trigger', + // children: [ + // ['UDF/Triggers','Trigger'] + // ] + // }, + { + title: 'Communication Service Protocol', + children: [ + ['Communication-Service-Protocol/Programming-Thrift','Thrift'], + ['Communication-Service-Protocol/Programming-MQTT','MQTT'], + ] + }, + { + title: 'System Tools', + children: [ + ['System-Tools/Load-External-Tsfile','Load External Tsfile'], + ['System-Tools/Performance-Tracing-Tool','Performance Tracing Tool'], + ['System-Tools/CSV-Tool','CSV Tool'], + ['System-Tools/Monitor-and-Log-Tools','Monitor and Log Tools'], + ['System-Tools/JMX-Tool','JMX Tool'], + ['System-Tools/MLogParser-Tool','MLogParser Tool'], + ['System-Tools/NodeTool','Node Tool'], + ['System-Tools/Query-History-Visualization-Tool','Query History Visualization Tool'], + ['System-Tools/Watermark-Tool','Watermark Tool'] + ] + }, + { + title: 'Collaboration of Edge and Cloud', + children: [ + ['Collaboration-of-Edge-and-Cloud/Sync-Tool','Sync Tool'] + ] + }, + { + title: 'Ecosystem Integration', + children: [ + ['Ecosystem Integration/Grafana','Grafana'], + ['Ecosystem Integration/Zeppelin-IoTDB','Zeppelin-IoTDB'], + ['Ecosystem Integration/MapReduce TsFile','MapReduce TsFile'], + ['Ecosystem Integration/Spark TsFile','Spark TsFile'], + ['Ecosystem Integration/Spark IoTDB','Spark IoTDB'], + ['Ecosystem Integration/Hive TsFile','Hive TsFile'], + ['Ecosystem Integration/Flink IoTDB','Flink IoTDB'], + ['Ecosystem Integration/Flink TsFile','Flink TsFile'], + ['Ecosystem Integration/Writing Data on HDFS','Writing Data on HDFS'] + ] + }, + { + title: 'Cluster Setup', + children: [ + ['Cluster/Cluster-Setup','Cluster Setup'] + ] + }, + { + title: 'FAQ', + children: [ + ['FAQ/Frequently-asked-questions','Frequently asked questions'] + ] + }, + { + title: 'Appendix', + children: [ + ['Appendix/Config-Manual','Config Manual'], + ['Appendix/SQL-Reference','SQL Reference'], + ['Appendix/Status-Codes','Status Codes'] + ] + }, + { + title: 'Comparison with TSDBs', + children: [ + ['Comparison/TSDB-Comparison','Comparison'] + ] + } + ], '/UserGuide/Master/': [ { title:'IoTDB User Guide (In progress)', @@ -745,6 +890,7 @@ var config = { text: '文档', items: [ { text: 'In progress', link: '/zh/UserGuide/Master/QuickStart/QuickStart' }, + { text: 'V0.12.x', link: '/zh/UserGuide/V0.12.x/QuickStart/QuickStart' }, { text: 'V0.11.x', link: '/zh/UserGuide/V0.11.x/Get Started/QuickStart' }, { text: 'V0.10.x', link: '/zh/UserGuide/V0.10.x/Get Started/QuickStart' }, { text: 'V0.9.x', link: '/zh/UserGuide/V0.9.x/0-Get Started/1-QuickStart' }, @@ -1153,6 +1299,144 @@ var config = { ] } ], + '/zh/UserGuide/V0.12.x/': [ + { + title: 'IoTDB用户手册 (V0.12.x)', + collapsable: false, + }, + { + title: 'IoTDB简介', + children: [ + ['IoTDB-Introduction/What-is-IoTDB','IoTDB简介'], + ['IoTDB-Introduction/Features','主要功能特点'], + ['IoTDB-Introduction/Architecture','系统架构'], + ['IoTDB-Introduction/Scenario','应用场景'], + ['IoTDB-Introduction/Publication','研究论文'] + ] + }, + { + title: '快速上手', + children: [ + ['QuickStart/QuickStart','快速上手'], + ['QuickStart/Files','存储路径设置'], + ['QuickStart/WayToGetIoTDB','获取IoTDB二进制文件途径'] + ] + }, + { + title: '数据模式与概念', + children: [ + ['Data-Concept/Data-Model-and-Terminology','数据模型'], + ['Data-Concept/Data-Type','数据类型'], + ['Data-Concept/Encoding','编码方式'], + ['Data-Concept/Compression','压缩方式'], + ['Data-Concept/SDT','旋转门压缩'] + ] + }, + { + title: 'SQL命令行终端(CLI)', + children: [ + ['CLI/Command-Line-Interface','SQL命令行终端(CLI)'] + ] + }, + { + title: '权限管理', + children: [ + ['Administration-Management/Administration','权限管理'] + ] + }, + { + title: 'IoTDB-SQL 语言', + children: [ + ['IoTDB-SQL-Language/DDL-Data-Definition-Language','数据定义语言(DDL)'], + ['IoTDB-SQL-Language/DML-Data-Manipulation-Language','数据操作语言(DML)'], + ['IoTDB-SQL-Language/Maintenance-Command','运维命令'] + ] + }, + { + title: '应用编程接口', + children: [ + ['API/Programming-JDBC','JDBC'], + ['API/Programming-Native-API','Java 原生接口'], + ['API/Programming-Other-Languages','其他语言原生接口'], + ['API/Programming-TsFile-API','TsFile API'] + ] + }, + { + title: '用户定义函数(UDF)', + children: [ + ['UDF/UDF-User-Defined-Function','用户定义函数(UDF)'] + ] + }, + // The trigger module has not been implemented yet, + // so the website should not show users how to use it to avoid misleading. + // { + // title: 'Trigger', + // children: [ + // ['UDF/Triggers','Trigger'] + // ] + // }, + { + title: '通信服务协议', + children: [ + ['Communication-Service-Protocol/Programming-Thrift','Thrift'], + ['Communication-Service-Protocol/Programming-MQTT','MQTT'], + ] + }, + { + title: '系统工具', + children: [ + ['System-Tools/Load-External-Tsfile','加载 TsFile'], + ['System-Tools/Performance-Tracing-Tool','查询性API/Programming-Native-API能追踪'], + ['System-Tools/CSV-Tool','导入导出 CSV'], + ['System-Tools/Monitor-and-Log-Tools','监控工具和系统日志'], + ['System-Tools/JMX-Tool','JMX 工具'], + ['System-Tools/MLogParser-Tool','Mlog解析工具'], + ['System-Tools/NodeTool','节点工具'], + ['System-Tools/Query-History-Visualization-Tool','查询历史可视化工具'], + ['System-Tools/Watermark-Tool','水印工具'], + ] + }, + { + title: '端云协同', + children: [ + ['Collaboration-of-Edge-and-Cloud/Sync-Tool','TsFile 同步工具'] + ] + }, + { + title: '系统集成', + children: [ + ['Ecosystem Integration/Grafana','Grafana-IoTDB'], + ['Ecosystem Integration/Zeppelin-IoTDB','Zeppelin-IoTDB'], + ['Ecosystem Integration/Spark TsFile','Spark TsFile'], + ['Ecosystem Integration/MapReduce TsFile','Hadoop-TsFile'], + ['Ecosystem Integration/Spark IoTDB','Spark-IoTDB'], + ['Ecosystem Integration/Hive TsFile','Hive-TsFile'], + ['Ecosystem Integration/Flink TsFile','Flink-TsFile'], + ['Ecosystem Integration/Flink IoTDB','Flink-IoTDB'], + ['Ecosystem Integration/Writing Data on HDFS','HDFS集成'], + ] + }, + { + title: '集群搭建', + children: [ + ['Cluster/Cluster-Setup','集群搭建'] + ] + }, + { + title: '常见问题', + children: [ + ['FAQ/Frequently-asked-questions','常见问题'] + ] + }, + { + title: '附录', + children: [ + ['Appendix/Config-Manual','附录1: 配置参数'], + ['Appendix/SQL-Reference','附录2: SQL 参考文档'], + ['Appendix/Status-Codes','附录3: 状态码'] + ] + } + ], '/zh/UserGuide/Master/': [ { title: 'IoTDB用户手册 (In progress)',
