Releases: apache/iotdb
Apache IoTDB 1.0.1
New Features
- [IOTDB-5102] Support explain the sqls using align by device clause
- [IOTDB-5282] Add SQL show variables, which can display the current cluster variables
Improvements
- [IOTDB-4595] Add real-time monitoring data for tsfile merge
- [IOTDB-5125] Stop the process when port is already in use when launching ConfigNode or DataNode
- [IOTDB-5185] Fixed that old snapshot is not deleted in IoTConsensus
- [IOTDB-5202] Support showing regions regarding database
- [IOTDB-5205] Construct Cluster Node startup protocol, reject start or restart request of ConfigNode or DataNode when using wrong data
- [IOTDB-5208] Fix increase of file handles when TsFileResource is degraded and compacted with fast performer
- [IOTDB-5223] Cause DataNode startup to fail when multiple disks are configured in the data directory and the dataRegion consensus protocol uses Ratis
- [IOTDB-5232] Add Schema Memory Usage metric monitor
- [IOTDB-5249] Add interface to set datatype when users customize the payload formatter of mqtt
- [IOTDB-5258] Add timeout parameter for ExportCSV/ExportTsFile Tool
- [IOTDB-5306] Change the default port of ConfigNode and DataNode
- [IOTDB-5326] Add cluster_name parameter to distinguish different cluster
- [IOTDB-5389] Cause DataNode starup to fail when wal_mode is disabled in IoTConsensus
Bug Fixes
- [IOTDB-4978] Fix possible deadLock while using select into
- [IOTDB-5090] Fix the NPE when executing stop-datanode.sh
- [IOTDB-5116] Fix wrong empty result set in aggregation query while there is no data in queried timeseries
- [IOTDB-5118] Fix that datanode opens too many file handles (TYPE DIR)
- [IOTDB-5174] Fixed restart failure when IoTConsensus hostname containing '-'
- [IOTDB-5126] Fix that show-regions show IP rather than hostname even though the hostname is used when registering
- [IOTDB-5135] Fix the Sync snapshot failure (also blocks ConfigNode snapshot) when sync file is empty
- [IOTDB-5141] Fix fast compaction scheduler bug
- [IOTDB-5144] Fix classCastException in IoTDBDatabaseMetadata of jdbc
- [IOTDB-5158] Fix failure of getting devices from tsfile
- [IOTDB-5170] Fix the problem that datanode is closed when executing stop-confignode.bat on Windows platform
- [IOTDB-5210] Fix concurrent bug caused by init and close of driver
- [IOTDB-5212] Upgrade an illegal CQ verification prompt from v0.14.0 to v1.0
- [IOTDB-5215] Fix the wrong usage of chunkPointNumLowerBound in IoTDBDescriptor
- [IOTDB-5216] Fix order by timeseries doesn't take effect in aligned last query
- [IOTDB-5222] Fix the load of some metric related configuration
- [IOTDB-5231] Fix that Datanode could not start when binding 9091 error
- [IOTDB-5233] Correct the message of unsupported thrift interface of schema template
- [IOTDB-5236] Fix DeleteData Python API cannot work
- [IOTDB-5240] Fix schema template timeseries read/write error after restart
- [IOTDB-5261] Fix the number of clients in client pool of AsyncIoTConsensusServiceClient can not be changed through dn_max_connection_for_internal_service
- [IOTDB-5266] Refine the code of cross selector and fix the bug when using FileTImeIndex
- [IOTDB-5269] Fix wrong data of devices ought to be deleted after executing
delete from
sql - [IOTDB-5277] Fix DataNode restart failure when SchemaRegion loading snapshot
- [IOTDB-5278] Fix JDBC Driver cannot connect to the dbeaver
- [IOTDB-5285] Fix TimePartition error when restarting with different time partition configuration
- [IOTDB-5286] Fix target files are selected to participate in other compaction task
- [IOTDB-5313] Fix Python client doesn't handle REDIRECTION_RECOMMEND correctly
- [IOTDB-5452] Add leastDataRegionGroupNumSetByUser examination to ensure that leastDataRegionGroupNum will not be changed by system
- [IOTDB-5498] Fix SessionPool OOM problem when the number of devices and sessions is large
- [IOTDB-5501] Fix memory leak in MemoryPool
- [IOTDB-5525] Fix the partition error of device after partition fetcher
Apache IoTDB 0.13.4
Improvements
- [IOTDB-4230] Modify the start script for flexible startup: add iotdb.in.sh, add pid file
- [IOTDB-4776] Change default storage group to root.__system in iotdb metric reporter
- [IOTDB-4946] Show Deadband Process Info
- [IOTDB-5025] Fix tag of metric in 0.13
- [IOTDB-5128] Perfect the usage of
-p pid
,-v version
feature for start-server.sh - [IOTDB-5232] Add Schema Memory Usage metric monitor
Bug Fix
- [IOTDB-3624] Fix meet error when inserting data in SQL without timestamp
- [IOTDB-4716] Fix the statistics of disk size in linux system in 0.13
- [IOTDB-4738] Fix TsFile damaged after writing empty value pages
- [IOTDB-4781] Fix the NOT LIKE value filter does not work
- [IOTDB-4842] Fix String number inserting bug
- [IOTDB-4938] Fix data are lost when meets exception
storage group not ready
- [IOTDB-4967] Fix slidingTimeWindow stops when encounter an empty window
- [IOTDB-5136] NPE when use a null as username in session
- [IOTDB-5184] Fix CompressionType ArrayIndexOutOfBounds
- [IOTDB-5157] Fix "Invalid ID for ZoneOffset, invalid format:"
- [IOTDB-5206] Fix when target file is deleted in Compaction exception handler and recover
- [IOTDB-5225] Fix setting chunkPointNumLowerBound in IoTDBDescriptor
- [IOTDB-5236] DeleteData Python API cannot work
- [IOTDB-5253] Fix chunkMetadata mem metric
- [IOTDB-5266] Fix seq file may be lost when selecting cross compaction task
- [IOTDB-5281] Fix selecting deleted files in compaction
- [IOTDB-5286] Fix target files should not be select to participate in other compaction task
- [IOTDB-5307] Fix failed to get TsFile input of file: NoSuchFileException
- [IOTDB-5311] Fix RunTimeException and NoSuchFile Exception when selecting files causing compaction scheduled thread to get stuck
- [IOTDB-5346] Fix log error in MemtableFlushTask when recovering
Apache IoTDB 1.0.0
New Features
- New architecture that supports standalone and cluster mode with two types of nodes: ConfigNode, DataNode
- Support ConfigNode management: Start/Add, Stop, Remove
- Support DataNode management: Start/Add, Stop, Remove
- Support replication of ConfigNode, Schema and Data
- Support Consensus Protocol: Simple, IoT, Ratis
- Support Cluster management sql: show cluster, show regions
- Support administration in Cluster: User, Permission, Role management
- Authorization when login and executing a command
- Support MPP(massively parallel process) framework in cluster
- Support insertion, deletion and all query types in Cluster
- Support CSV import/export tools
- Support TsFile import/export tools
- Support create/show/count/delete database
- Support show/count devices
- Support create/show/count timeseries
- Support schema template management
- Support flush on local/cluster
- Support clear cache on local/cluster
- Support metric for DataNode and ConfigNode with output to IoTDB, Prometheus, and JMX
- Support DBAPI in python client
- Support RestApi, MQTT for cluster
- Support having clause and between expression in query
- Support order by timeseries in last query
- Support hot configuration of data_dirs
- Support stateful, stateless Trigger
- Support UDF framework
- Support new UDF 'change_points
- Support Continuous Query
Apache IoTDB 0.13.3
Improvements
- [IOTDB-4525] Accelerate restart process
- [IOTDB-3164] Add compaction memory control
- [IOTDB-4364] Reduce read amplification in compaction
- [IOTDB-4424] Specify error message when time value of insert sql can not be correctly parsed
- [IOTDB-4492] Control total file size of cross space compaction task
- [IOTDB-4542] Optimize schema validate error message
- Optimize pattern matching in Regexp
Bug Fixes
- [IOTDB-3988] Fix reload problem of metric module and refactor metric module
- [IOTDB-4239] fix NPE to insert a null value into a TEXT timeseries
- [IOTDB-4318] Fix RESTAPI data type conversion failed
- [IOTDB-4320] Fix insert row with null cause recover throw NPE
- [IOTDB-4343] Fix NPE when using MQTT protocol
- [IOTDB-4357] fix start in windows, IOTDB_LOG_DIR_IS_UNDEFINED folder appears
- [IOTDB-4585] Incorrect query result after deleting data for aligned timeseries
- [IOTDB-4615] TTL adapts timestamp precision
- [IOTDB-4636] IndexOutOfBoundsException when compacting aligned series
- Fix PathAlreadyExistException during concurrent auto creating aligned timeseries
Apache IoTDB 0.14.0-preview3
v0.14.0-preview3 [maven-release-plugin] copy for tag v0.14.0-preview3
Apache IoTDB 0.14.0-preview2
v0.14.0-preview2 [maven-release-plugin] copy for tag v0.14.0-preview2
Apache IoTDB 0.13.2
Improvements
[IOTDB-2669] Improve C++ client insertTablet performance
[IOTDB-3087] enlarge default value of avg_series_point_number_threshold
[IOTDB-3861] Enable insert null values in Session
[IOTDB-3996] REST API nonQuery support Continuous Query
[IOTDB-4120] Optimize memory allocation of Expression
[IOTDB-4190] update documents about nifi-iotdb-bundle
REST support "select into" in nonQuery API
Import-CSV supports specify data type and no need quotation for text value
Bug Fixes
[IOTDB-2736] DELETE_STORAGE_GROUP can not be granted to user (reporting 401)
[IOTDB-2760] Ordinary users do not grant any permissions, but can still show operations
[IOTDB-2769] Fix auth mapping of GRANT_ROLE_PRIVILEGE and GRANT_USER_ROLE
[IOTDB-3302] Without any authorization, ordinary users still have the right to query other user information
[IOTDB-4023] The C++ interface query result returns records error
[IOTDB-4047] Query NPE after change device alignment
[IOTDB-4096] Fix the names of metric pushed to Prometheus are inconsistency in micrometer and dropwizard
[IOTDB-4194] IOException happened in Compaction
[IOTDB-4215] Fix incorrect aggregate query results due to wrong unseq file traversal order
[IOTDB-4216] Fix execute create aligned timeseries but a non-aligned timeseries created
[IOTDB-4222] DeadLock when concurrently deleting and creating storage groups
[ISSUE-6774] Connection error when using DataGrip with JDBC driver
[ISSUE-6937] After restart, the aligned series turns to non-aligned
[ISSUE-6987] Fix select error when selecting a single quotation mark
Apache IoTDB 0.13.1
New Features
- [IOTDB-2602] "Without null" supports filtering based on partial columns
- [IOTDB-3873] Aligned timeseries support single point fill query
- [ISSUE-6171] Support createTimeseriesOfTemplate in Session
- [IOTDB-3742] Support COUNT NODES by root.**
Improvements
- [IOTDB-2820] Update UserGuide SQL about Trigger
- [IOTDB-2837] Add check and sort for NumpyTablet to make sure timestamps are ordered
- [IOTDB-2838] Check and auto correct endian type for NumpyTablet
- [IOTDB-2873] provide json template for grafana
- [IOTDB-2888] Unary expression can followed by a constant
- [IOTDB-3747] Default Paging of Schema Query with limit 10000
- [IOTDB-3797] Print detailed info in session when connection fails
- [IOTDB-3851] C++ client method of tablet sorting optimization
- [IOTDB-3879] Modify document about the Programming-Cpp-Native-API
- [IOTDB-3901] C++ client method of insertRecordsOfOneDevice sorting optimization
Bug Fixes
- [IOTDB-2753] Insert a time series with a null value and report 500
- [IOTDB-2759] Result of "Show paths set schema template" or "using template" is not complete
- [IOTDB-2775] Fix throwing exception when query non-exist device in TsFileSequenceReader
- [IOTDB-2787] Fix aligned mem chunk concurrent problem
- [IOTDB-2826] Fix can not drop schema template
- [IOTDB-2828] Update system_version in system.properties after upgrading
- [IOTDB-2835] Fix empty page in selfcheck method of TsFileSequenceReader
- [IOTDB-2837] Add check and sort for NumpyTablet to make sure timestamps are ordered
- [IOTDB-2852] The import-csv tool can not import the data to nonaligned device
- [IOTDB-2859] Fix python tablet with None value is incorrect
- [IOTDB-2862] Fix SQL injection risks of grafana-connector
- [IOTDB-2864] Fix Read-only occurred when insert Text value to aligned timeseries
- [IOTDB-2882] Fix unary expression display bug
- [IOTDB-2902] Handling user privileges for aligned timeseries related features
- [IOTDB-2903] Fix show latest timeseries result does not sorted by time
- [IOTDB-2910] Fix count result not right after deleting storage group
- [IOTDB-2915] MLogTxtWriter error while parsing CreateAlignedTimeseriesPlan
- [IOTDB-2922] Fix NPE when compacting with files that contains zero device
- [IOTDB-2924] UDF Framework: index overflow while iterating sliding windows
- [IOTDB-2983] Serialization error in Partial insert
- [IOTDB-2999] Remove useless config and fix default value error.
- [IOTDB-3018] Fix compaction bugs on handling deleted target file
- [IOTDB-3029] The prefix path generated by the select into target sequence contains * and ** currently unchecked
- [IOTDB-3045] The query result contains some timeseries that have been deleted
- [IOTDB-3120] Print the tsfile name when meet IOException
- [IOTDB-3158] Fix NPE exception when use iotdb-reporter
- [IOTDB-3160] TsFile will be corrupted when flushing memtable appears OOM
- [IOTDB-3168] Forbid the path with * could be inserted
- [IOTDB-3171] Fix NPE when getting modification file
- [IOTDB-3219] Fix stop-server on windows
- [IOTDB-3247] Recover aligned sensors after deleting timeseries, query lost data
- [IOTDB-3301] Tag recover bug after IoTDB server restart
- [IOTDB-3364] Fix Query stucked with null valued aligned timeseries bug
- [IOTDB-3420] Fix show paths set schema template t1 error
- [IOTDB-3494] Fix TypeError in py-session
- [IOTDB-3523] Fix the count and COUNT not equal bug when querying with group by level
- [IOTDB-3645] Fix use statistics bug in aggregation query
- [IOTDB-3651] Stop compaction schedule when all compaction is disable
- [IOTDB-3709] Fix a loop occurred in TsFileResourceList, causing the query to fail and oom occurs
- [IOTDB-3730] Fix ArrayIndexOutOfBounds when flushing a memtable
- [IOTDB-3795] Remove setting read-only when handling compaction exception
- [IOTDB-3803] failed to insert data of TEXT by session
- [IOTDB-3816] Fix /zero bug in recover
- [IOTDB-3822] Fix cross compaction overlap bug
- [IOTDB-3826] Fix duplicate success when concurrent creating same timeseries
- [IOTDB-3858] IndexOutOfBoundsException: bitIndex < 0
- [ISSUE-5482] Fix Release zip files include incorrect version of Guava
- [ISSUE-5773] Aggregation result is not complete
- [ISSUE-5964] Fix bug of aligned timeseries time duplicated aggregation
Apache IoTDB 0.12.6
Improvements
- [IOTDB-3515] Make the message clear when loading empty TsFile
Bug Fixes
- [IOTDB-2773] Fix overlapped data should be consumed first bug
- [IOTDB-3135] Fix parameter max_select_unseq_file_num_in_each_unseq_compaction doesn't work
- [IOTDB-3292] Fix chunk size overflow in level compaction
- [IOTDB-3392] Fix File doesn't exist when moving TsFile when virtual_storage_group > 1
- [IOTDB-3398] Remove the exception when query meet a device is not in TsFile, which is a normal case
- [IOTDB-3602] Skip empty TsFile when loading directory
- [ISSUE-4399] When non-root user get an empty query result, return no permission error message
- [ISSUE-5809] Fix bug: sum aggregation result return 0 when no data
- Fix data in seq files overlapped
Apache IoTDB 0.14.0-preview1
The 0.14.0-preview1 version only contains the new cluster version.
New Features
- The new cluster contains two types of nodes: ConfigNode, DataNode
- Support ConfigNode Deploy: Start(Add), Stop
- Support DataNode Deploy: Start(Add), Stop
- Data and Schema replication management
- Support Consensus Protocol: Standalone, MultiLeader, Ratis
- Schema Management: Memory, SchemaFile, RocksDB
- Cluster monitor sql: show cluster, show regions
- Administration: User, Permission, Role management
- Authorization when login and executing a command
- Load Balance for data and schema
- Native API for reading and writing
- Support CSV import/export tools
- Support create/show/count/delete Storage Group
- Support create/show/count timeseries
- Support show/count devices
- Flush is supported in cluster
- Support monitor DataNode and ConfigNode through Prometheus and Grafana
- Support Data insertion and deletion
- Query Types: Raw data Query, Aggregation, Group By Time, Group By Level, Last query
- Support Fill null values in the query result
- Support order by time and limit, offset, slimit, soffset
- Support value filter and expression
- Python API: Add support for DBAPI
Incompatible changes
- Rename the following scripts and configuration files
Previous | Now |
---|---|
conf/iotdb-engine.properties | conf/iotdb-datanode.properties |
conf/iotdb-env.sh & bat | conf/datanode-env.sh & bat |
- Rename the DataNode configuration parameters
Previous | Now |
---|---|
internal_ip | internal_address |
target_confignode / config_nodes | target_config_nodes |
- Rename the ConfigNode configuration parameters
Previous | Now |
---|---|
target_confignode / config_nodes | target_config_nodes |
Acknowledgements:
543202718, 23931017wu, Alima777, Beyyes, Bigreybear, cchen1115, chaow, Chengjianyun, ChengShengHan, ChenSiHou, Choubenson, chuchaofan, ChuShaoHuan, Cigarl, CloudWise-Lukemiao, Cmlmakahts, Cornmonster, Cpaulzy, CRZbulabula, dafei1288, Ericpai, Flashzxi, FrankHWD, greenhandatsjtu, HeimingZ, HTHou, huanhuanerer, huzk8, irvine0109, iskytek, JackieTien97, jamber001, JerryZhangZZY, jiazhiren, jixuan1989, jun0315, Krystal-xiao, leety1228, leonardodalinky, Liuminghui233, LIU-WEI-git, ljn55966005, lyssom, MarosZyk, MinaQin, MrQuanzy, Mychaow, Noorall, OneSizeFitsQuorum, Plutooooooo, Qiaojialin, RYH61, Samperson1997, SilverNarcissus, SpriCoder, SteveYurongSu, swpulk, SzyWilliam, THUMarkLau, tisonkun, trin1t, Tsunghanjacktsai, wallezhang, wangchao316, wanghui42, wayblink, Wei-hao-Li, Xiaoyehanren, Xingtanzjr, Xinzhongtianxia, Xuanronaldo, Yifuzhou, Yschengzi, Yuyuankang, yyt86, ZhanGHanG9991, zjx1230