Skip to content

Apache IoTDB 0.13.0

Compare
Choose a tag to compare
@HTHou HTHou released this 18 Mar 07:21
· 5960 commits to master since this release
4f985dd

New Features

  • [IOTDB-924] Support insert multi rows in SQL
  • [IOTDB-959] Add Create Storage Group Grammar
  • [IOTDB-1037] set rpc_compression as a parameter in JDBC URL
  • [IOTDB-1059] Support sql statement insert without timestamp
  • [IOTDB-1143] Support Continuous query
  • [IOTDB-1199] Support aligned timeseries and schema template
  • [IOTDB-1319] Support Trigger
  • [IOTDB-1391] Add a new Aggregation function extreme (max absolute value)
  • [IOTDB-1399] Add a session interface to connect multiple nodes
  • [IOTDB-1400] Support arithmetic operations in SELECT clauses
  • [IOTDB-1403] Dictionary encoding for TEXT
  • [IOTDB-1490] Add built-in UDTFs: sinh, conh, tanh
  • [IOTDB-1514] Support null in insertTablet
  • [IOTDB-1524] Support SELECT ... INTO ... clause
  • [IOTDB-1647] Nested Expressions in SELECT clauses
  • [IOTDB-1673] CLI upgrade to JLine3
  • [IOTDB-1739] Constant timeseries generating functions (const, pi and e)
  • [IOTDB-1760] Support avg, count, extreme, first_value, last_value, max_time, max_value, min_time, min_value, sum aggregations in group by fill
  • [IOTDB-1761] Add metric framework for IoTDB
  • [IOTDB-1775] Add CAST function to convert data type
  • [IOTDB-1823] Support group by multi level
  • [IOTDB-1844] Query support timeseries prefix and suffix matching: root.*sg*
  • [IOTDB-1859] Support REST API
  • [IOTDB-1860] New Grafana plugin
  • [IOTDB-1886] Support Constant Expressions in Select Clauses
  • [IOTDB-1973] Supports aggregate queries, constants, and arithmetic nested expressions in SELECT clauses
  • [IOTDB-1986] Support select UDF as alisa clauses
  • [IOTDB-1989] Spark-IoTDB-connector support inserting data
  • [IOTDB-2131] Support previous, linear, constant value fill funtion New fill
  • [IOTDB-2593] Support using IoTDB with JDK17
  • [ISSUE-3811] Provide a data type column for the last query dataset
  • add rabbitmq example

Improvements

  • [IOTDB-1280] Rewrite the Antlr grammar file
  • [IOTDB-1372] Enhance management of TsFileResource
  • [IOTDB-1428] Ask query threads to quit if query is timeout
  • [IOTDB-1450] Deletion should only delete related time partitions
  • [IOTDB-1463] Implement builder pattern for Session and SessionPool
  • [IOTDB-1477] Optimize code logic of generateAlignByDevicePlan()
  • [IOTDB-1559] Refactor the IT framework
  • [IOTDB-1564] Make hearbeat and election timeout parameters be configurable
  • [IOTDB-1581] Consider deletions when recovering tsFileResource of incomplete tsfile
  • [IOTDB-1607] Optimize Tracing
  • [IOTDB-1613] Recover mods file if write modification failed
  • [IOTDB-1639] Refactoring the cluster class structure to make it consistent with the server module
  • [IOTDB-1730] client-cpp, enhance session::insertTablet() etc.'s performance
  • [IOTDB-1852] Accelerate queryies by using statistics
  • [IOTDB-1857] Remove useless handle logic for CountPlan in executeNonQuery in cluster module
  • [IOTDB-1884] Distinguish between zero and null values in sum aggregation
  • [IOTDB-1924] Remove the operation of clearing the cache after the compaction is over
  • [IOTDB-1950] Add Bloom Filter cache for query
  • [IOTDB-2001] Remove redundant StorageGroupNotReadyException
  • [IOTDB-2011] Update last cache while doing show latest timeseries query
  • [IOTDB-2022] SessionDataSet implements AutoCloseable
  • [IOTDB-2075] Accelerate the process of insertTablets by using thread pool
  • [IOTDB-2119] IoTDB CSV export tools add timestamp accuracy setting function
  • [IOTDB-2162] Simplify the recovery merge process
  • [IOTDB-2176] Limit target chunk size when performing inner space compaction
  • [IOTDB-2193] Reduce unnecessary lock operations of RaftLogManager to improve writing performance
  • [IOTDB-2195] Control the concurrent query execution thread
  • [IOTDB-2632] Set compaction_write_throughput_mb_per_sec to 16 by default
  • [ISSUE-3445] New compaction strategy and compaction scheduling strategy
  • [ISSUE-3856] refine exception handling logic in commitTo in RaftLogManager
  • [Cluster] No need to shake hands with itself when one node restart

Incompatible changes

  • [IOTDB-1026] Support wildcard ** in Path And Replace PrefixPath usage with PathPattern in IOTDB-SQL
  • [IOTDB-1620] Support backtick (`) character and double quotes (") to quote identifiers
  • [IOTDB-1650] Rename the sql command move to unload

Miscellaneous changes

  • [IOTDB-1342] modify error message about LIMIT and OFFSET used in conjunction with the FILL clause
  • [IOTDB-1372] delete devices field in FileTimeIndex
  • [IOTDB-1531] Check tsfile creation time when recovering
  • [IOTDB-1541] Change sequence of wal and memtable in insertion
  • [IOTDB-1923] Separate the request unpacking and execution processing logic of TSServiceImpl
  • [IOTDB-1969] Remove statistic resources of old metric framework from iotdb-server
  • [IOTDB-2014] MicrometerPrometheusReporter#getReporterType return null
  • [IOTDB-2043] refactor: remove haveSorted param from Session
  • [IOTDB-2154] add TsFileUtils.isTsFileComplete
  • [IOTDB-2206] Rename StorageGroupProcessor to VirtualStorageGroupProcessor
  • [IOTDB-2208] Reconstruct the process of generating resultset header of query
  • [ISSUE-4047] Generic type in Statistics extend Serializable
  • Add compaction version in cache key
  • Add a constructor of IoTDBDescriptorHolder to prohibit instantiation

Bug Fixes

  • [IOTDB-1266] Fix SHOW TIMESERIES will only display 2000 timeseries
  • [IOTDB-1478] The whole IoTDB can not read/write if any one sg is not ready
  • [IOTDB-1562] Fix incorrect exception processing in insertXXX() API
  • [IOTDB-1583] Raft log failed to be committed in cluster version
  • [IOTDB-1592] BugFix: SLimit Not effective in align by device
  • [IOTDB-1736] Fix error code is not printed in TSServiceImpl's log
  • [IOTDB-1749] sync-tool's lockInstance() dose not take effect
  • [IOTDB-1758] sync-tool, empty uuid file cause tool can not auto-recovery
  • [IOTDB-1848] Failed to initialize pool: Does not support setReadOnly in grafana-connector
  • [IOTDB-1853] Fix bug about more than one TimeseriesMetadata in TsFile
  • [IOTDB-2010] fix incomplete show timeseries result
  • [IOTDB-2021] Fix Bloom Filter Cache doesn't take effect bug
  • [IOTDB-2060] Fix NPE when using fill without a filter
  • [IOTDB-2074] Fix NullPointerException when recovering compaction in MacOS
  • [IOTDB-2077] Unexpected exception when executing raw data query without VF with limit clause
  • [IOTDB-2088] Fix IndexOutOfBound exception in AggregationPlan.groupAggResultByLevel
  • [IOTDB-2116] Fix all client connections are stuck bug caused by logback bug
  • [IOTDB-2129] Wrong result returned when querying by nested expressions with aliases
  • [IOTDB-2143] fix wrong precision in cluster mode
  • [IOTDB-2153] [IOTDB-2157] fix incorrect path search space
  • [IOTDB-2159] Fix wrong status code when inserting data to a read-only cluster
  • [IOTDB-2163] Fix unexpected amount of columns in a cluster slimit query
  • [IOTDB-2174] Fix Regexp filter serializing and deserializing error
  • [IOTDB-2180] Fix show latest timeseries in cluster
  • [IOTDB-2183] Fix the config problems in cluster mode
  • [IOTDB-2185] Fix get an exception when parsing the header of CSV
  • [IOTDB-2209] Fix logback CVE-2021-42550 issue
  • [IOTDB-2251] [IOTDB-2252] Fix Query deadlock
  • [IOTDB-2267] UDF: Error code 500 caused by user logic
  • [IOTDB-2282] fix tag recovery bug after tag upsert
  • [IOTDB-2290] Fix Incorrect query result in C++ client
  • [IOTDB-2520] Fix list user privilege root returns empty
  • [IOTDB-2544] Fix tag info sync error during metadata sync
  • [IOTDB-2550] Avoid show timeseries error after alter tag on sync sender
  • [IOTDB-2654] Fix Alias doesn't show when using group by level
  • Fix CPP client could not be successfully built on windows
  • Fix dead lock in setDataTTL method