2.00.6
Available Downloads
Version: 2.00.6 Compatibility Level 2 with 2.00.5
Release Date: 2022-05-09
New Features
-
Added new function
cells
to retrieve multiple cells from a matrix by the specified row and col indices. -
Added new function
randDiscrete
for sampling from a discrete probability distribution. -
Added new functions
dynamicGroupCumsum
anddynamicGroupCumcount
, and their state functions in the reactive state streaming engine. -
Added new function
getTSDBCompactionTaskStatus
to get the status of level file compaction tasks of the TSDB engine. -
Added new function
createDistributedInMemoryTable
to create a distributed in-memory table. -
Support tiered storage to store cold data on slow hard disks or object storage (Amazon S3). These data are read-only.
-
Added new parameter sortKeyMappingFunction to function
createPartitionedTable
in the TSDB engine to apply mapping functions to the sortKey for optimal performance. -
Optimized the update performance in the TSDB engine.
-
Added new function
toCharArray
to split a string into a vector of characters. -
Added new configuration parameter maxDynamicLocalExecutor to specify the maximum number of dynamically-generated local executors and the frequency at which they are generated.
-
Added
transaction
statement to encapsulate multiple SQL statements on an in-memory table or a shared table into one transaction.
Improvements
-
Optimized the performance of
select count(*)
on a table in the TSDB database. -
Reduced the time to load the index of the TSDB storage engine.
-
Improved the performance of writing and reading SYMBOL type of data.
-
The window functions
cummed
andcumpercentile
can now be used as state functions in the reactive state streaming engine (createReactiveStateEngine
). -
Added new parameter closed to time-series streaming engines (
createTimeSeriesEngine
andcreateDailyTimeSeriesEngine
) to specify whether the left boundary or right boundary of the calculation window is inclusive. -
The keyColumn parameter of
streamEngineParser
is now case-insensitive. -
Added new parameter keyPurgeFreqInSec to time-series streaming engines (
createTimeSeriesEngine
andcreateDailyTimeSeriesEngine
) to remove groups with no incoming data for a long time. -
Optimized the performance for using user-defined functions in time-series streaming engines (
createTimeSeriesEngine
andcreateDailyTimeSeriesEngine
). -
streamFilter
now supports processing columns of standard stream tables. Previously it only processes the output of heterogeneousreplay()
. -
The metrics parameter of
createTimeSeriesEngine
andcreateDailyTimeSeriesEngine
now supports matrices. -
Now support queries where (1) the
group by
columns are not the partitioning columns, and (2) order-sensitive functions are applied to the queried columns. -
The rule parameter of
resample
now supports "H", "L", "U", "min", "N", and "S". Added new parameters closed, label, and origin to set the interval of groups. -
Function
byRow
now supports the array vector. -
If an error is raised during the execution of the
replay
function, a runtime exception will be thrown. -
Function
matrix
can convert a fixed length array vector to a matrix. -
Optimized the performance of generating random integers.
Issues Fixed
-
An OOM error caused by concurrent writes, queries or calculations may lead to a server hang-up.
-
If data deduplication is enabled in the TSDB engine, when writes and reads are conducted at the same time, the result may be incorrect.
-
When writes and reads are conducted in the OLAP engine at the same time, the result may be incorrect.
-
A query using
exec
withlimit 1
in the TSDB engine returns a table rather than a vector. -
When writing to an OLAP cache engine, if an exception other than OOM occurs, the system will repeatedly attempt to rewrite, which leads to a server hang-up.
-
If a data node is started via the web interface or a cluster is restarted repeatedly, defunct processes are generated.
-
If
moveReplicas
is called after executingsuspendRecovery
, it fails to move some of the chunks. -
If a cluster is rebooted after submitting concurrent tasks, some chunks are always in the status of RECOVERING.
-
If
delete
is used to delete large amount of data, incorrect information may be written to the checkpoint file, which causes a node to crash and cannot be restarted. -
If snapshot is enabled in the reactive state streaming engine, resubscription to a table with different metrics causes a server crash.
-
Appending a single record to the lookup join engine may cause a server crash.
-
If the data written to a high-availability stream table are in different schema, they can still enter the persistent queue, and the error "Can't find the object with name" is reported after a leader switch.
-
If the parameter fill is specified for
createDailyTimeSeriesEngine
, the result of date without data is filled. -
A non-admin user can use function
createUser
. -
The command
changePwd
does not limit the length of the new password. -
If an array vector takes up large amount of memory but does not reach warningMemSize, an OOM error is raised.
-
matrix([],[])
leads to a server crash. -
When using
exec
withpivot by
, if no function is used on theexec
column, the statement will generate a table, rather than a matrix. -
If numJobs > 1 or numJobs = -1 is set in function
randomForestClassifier
for concurrent jobs, a repeated use of dataSource leads to a server crash. -
If the parameter duration of function
interval
has different precision with that of the parameter X, a crash occurs. -
When creating an in-memory keyed table with
keyedTable(keyColumns, table)
, if the keyColumns in the table have duplicate values, a memory leak occurs. -
For moving functions that can be used on matrices, such as
mcorr
andmwavg
, when calculating on indexed matrices, the label column may be lost in the result. -
Function
LoadTextEx
does not report an error when an exception of data loading occurs since 2.00.4.