Releases: Restream/reindexer
Releases · Restream/reindexer
v3.28.0
Core
- [fea] Updated logging library to v1.14.1 and formatting library to v11.0.2
- [fea] Optimized log level checks to avoid excessive serialization in core logs
- [fea] Added support for array_remove with scalar values in SQL
- [fea] Added support for array_remove with non-integral values
- [fix] Disabled default values creation for object array indexes to avoid Go/Java connectors incompatibility
- [fix] Fixed sorted JOIN-subqueries over optimized
tree
-indexes with unordered conditions
Reindexer server
- [fix] Fixed SEGFAULT in docker image on M1 CPU
Reindexer tool
- [fix] Fixed possible stucking in interactive mode on Windows
Face
- [fea] Changed default value for
rtree
fields in 'new item' modal (now it's zero point instead of empty array) - [fix] Fixed items table view (previously it could disapear in some rare cases depending on items contents)
- [fix] Fixed 'delete database' button
- [fix] Fixed
default stop words
behavior in fulltext index settings - [fix] Fixed rendering of the last namespace in namespaces list
- [fix] Fixed links to the docs depending on the current chosen interface language
- [ref] Changed
bm25
grouping in fulltext index settings
v4.16.0 *beta*
Reindexer server
- [fea] Added RPC API for updates subcription
Go connector
- [fea] Added database events subscription
Sharding
- [fea] Improved errors handling in proxied transactions
Ported
Deploy
- [fea] Added build for Ubuntu 24.04
- [ref] CentOS 7 reindexer repo is no longer supported due to CentOS 7 EOL
Face
- [fea] Increased max allowed value of the
position_boost
field - [fea] Added "Minimum preselect size for optimization of inner join by injection of filters" field to NS config
- [fea] Added
UUID
index type to PK options - [fix] Fixed the issue related to Aggregation result displaying
- [fix] Fixed the pagination issue
- [fix] Fixed the console issue in Meta section
- [fix] Fixed Explain tab layout on SQL result page
- [fix] Fixed placeholder layout for "Forced sort values" field and filer condition on Query Builder page
- [fix] Fixed icons and tabs layout on NS page
- [fix] Fixed "Tags" input layout in Index config modal
- [fix] Fixed default value for array fields
- [fix] Fixed tabs layout on NS page after Explain request
- [fix] Fixed input width in the settings
v3.27.0
Core
- [fea] Decreased heap allocations count in general selection pipeline
- [fea] Optimized allocations in fulltext query preparation phase
- [fea] Added heuristic for copying transactions, which allows to avoid extra namespace copying if there are no select queries expected. May be disabled via
REINDEXER_NOTXHEURISTIC
env variable - [fea] Added automatic default values setting on new index creation (except UUID and rtree indexes)
- [fea] Improved comparators performance for
IN()
-conditions - [fix] Fixed potential deadlock on data reading at server startup
- [fix] Fixed double fulltext index building after copying transactions
- [fix] Fixed incorrect composite indexes detection in some of
UPDATE
-queries (it could lead to random crashes during updates) - [ref] Deprecated fulltext index option
warmup_on_ns_copy
. In current implementation reindexer will always build fulltext index after copying transaction - [ref] Removed some of the default RU stop-words
Replication
- [fix] Fixed
updated_unix_nano
in#memstats
table - [fix] Disabled
statement-based update replication
- in some cases it could lead to crashes and data loss due to logic conflicts in WAL
Reindexer server
- [fea] Added
SO_LINGER
-option in cases when client drops connection first. This allows to preventTIME_WAIT
socket state on the client's side
Deploy
- [fea] Added build for Ubuntu 24.04
- [ref] CentOS 7 reindexer repo is no longer supported due to CentOS 7 EOL
Face
- [fea] Added RU language in UI
- [fix] Fixed input width in settings section
v3.26.0
Core
- [fea] Added heterogeneous arrays support in
UPDATE
-queries - [fea] Improved performance of CJSON encoding/decoding (now it works ~10-15% faster)
- [fix] Fixed interaction between EqualPositions and
OR
-operator - [fix] Fixed crash on attempt to use
UPDATE
-query with nested array
Replication
- [fix] Fixed unnecessary force-syncs after updates lost during initial synchronization
Reindexer server
- [fea] Added support for multiple
JOIN
-subqueries with the same namespace with results in JSON-format
Build
- [fea] Added
WITH_LTO
cmake build option (disabled by default) - [fix] Fixed build with GCC-14
Face
- [fix] Fixed deafault values for array-fields in "New item" window
v3.25.0
Core
- [fea] Added field
max_iterations_idset_preresult
into#config
-namespace. This field allows to configurepreselect
limit for theJOIN
-queries - [fea] Added
WHERE
-values deduplication for the composite indexes inSELECT
-queries - [fea] Added scalar fields support for the
array_remove
andarray_remove_once
update-functions - [fix] Fixed whitespaces handling in the
UPDATE
SQL-queries with JSON-objects
Fulltext
- [fea] Optimized fulltext index building (index rebuild works ~30% faster than in
v3.24.0
) - [fea] Added gujarati UTF-8 subset to the internal locale
- [fix] Fixed snippet and highlight on the queries with large
merge_limit
(>65k) and typos
Replication
- [fix] Fixed replicated
TagsMatcher
's behavior on the follower-nodes after leader'sschema
modification - [fix] Fixed online replication for
DeleteMeta
-calls
Reindexer server
- [fix] Fixed errors in swagger.yml
CPP-client
- [fix] Fixed
SetSchema
-call
Ported
- [fea] Ported the comparators improvements/optimizations from v4.15.0
Face
- [fea] Added UUID to the PK options
- [fea] Added the "Minimum preselect size for optimization of inner join by injection of filters" field to the NS config
- [fea] Increased the max of the position_boost field
- [fea] Changed the fonts to the system defaults
- [fea] Moved the field descriptions to the tooltips on the DB Config page
- [fix] Fixed the pagination issue after item insertion
- [fix] Fixed the issue related to the Aggregation result displaying
- [fix] Fixed icons and tabs layout on the NS page
- [fix] Fixed Explain tab layout on the SQL result page
- [fix] Fixed "Tags" input layout in the Index config modal
- [fix] Fixed placeholder layout for the "Forced sort values" field and filer condition on the Query Builder page
- [fix] Fixed console issue that appeared on the SQL -> Explain query
- [fix] Fixed incorrect message about the empty result of the Explain operation
- [fix] Fixed Pin NS button
v4.15.0 *beta*
Core
- [fea] Optimized comparators execution logic to avoid excessive runtime checks
- [fea] Rewritten comparators for the composite indexes. New version does not extracts fields from the tuple in the each iteration. Overall performance boost for queries with composite conditions is up to ~40%
- [fea] Added extra column subindex for the
hash
/tree
-indexes. It requires extra memory, but gives ~20-50%% overall speedup (depending on the indexes selectivity). The column subindex may be disabled with thedense
index option - [fea] Optimized general sorting logic for the
hash
/store
-indexes: now it uses column subindexes if possible for the cache efficiency. In some cases this approach provides up to 45% performance gain for the low-selectivity indexes - [fea] Added extra column subindex for the
string
store(-)
indexes. Previoslystore(-)
indexes have used the column forint
,int64
,double
,uuid
andbool
types only. The column subindex may be disabled with thedense
index option - [fix] Fixed types conversions for non-index fields in the select quieries
Go connector
- [fix] Fixed
WhereUUID
-method. Now it works for non-index fields too
Ported
Deploy
- [fea] Added APT-repo for
AltLinux P10
Face
- [fea] Changed the fonts
- [fea] Added the ability to delete NS Meta data
- [fea] Added the Cache settings to the NS config
- [fea] Made the new UI component for the pagination
- [fea] Added redirect to the created NS
- [fea] Added the new settings to the Full text config
- [fea] Moved field descriptions to the tooltips on the DB Config page
- [fea] Added Git documentation link for the Bm25 config
- [fea] Improved the layout of the Stop words and Synonyms lists
- [fea] Changed empty data to the null value in the Grid view
- [fix] Fixed the Pin NS button
- [fix] Fixed the search panel layout on the NS page
- [fix] Fixed the incorrect message about the empty result of the Explain operation
- [fix] Fixed caching of the NS config
- [fix] Fixed the inform window that appeared on the Cancel button on the NS Config page
- [fix] Removed ESlint popup
- [fix] Fixed the layout issues on the Index form
- [fix] Fixed "see & edit" link on the Queries Perfstats page
- [fix] Fixed the concole issue appeared on the SQL -> Explain query
- [fix] Fixed extra data uploading on the Performace page
- [fix] Fixed the console issues on the add/edit indexes
- [fix] Fixed the mergeLimit variable
v3.24.0
Core
- [fea] Added
array_remove
andarray_remove_once
functions for the UPDATE-queries. Details - [fea] Increased limit for IdSet join preselect from 10'000 to 20'000 documents
- [fea] Added C++ benchmarks for
sparse
-indexes - [fea] Disabled comparators for
sparse
-indexes. From nowsparse
-indexes always use more effective IdSets instead - [fea] Added
DeleteMeta
method and simplified meta storing/reading logic - [fix] Fixed race condition in the JOINS cache
- [fix] Fixed results serialization for MERGE-queries with multiple JOINS in cases when some of the JOIN-queries have not joined any items
- [fix] Fixed
distinct
result in cases whenWHERE
-condition contains duplicate values (e.g.distinct(id) WHERE id IN (1,1,1,3)
)
Fulltext
- [fea] Increased max
merge_limit
value (new values range is[1, 0x1FFFFFFF]
) - [fix] Fixed phrase search behavior for the phrases containig single word
Go connector
- [fea] Added
EnumMeta
andDeleteMeta
functions - [fix] Fixed
RenameNamespace
function - now upsert after namespace's renaming works properly
Reindexer server
- [fea] Add
DELETE
-method for the/metabykey
HTTP-endpoint
Deploy
- [fea] Added APT-repo for
AltLinux P10
Face
- [fea] Added possibility to delete namespace's Meta data
- [fea] Added Git documentation link for the Bm25 config
- [fea] Added explicit null-values in the Grid view
- [fix] Fixed the inform window that appeared on the Cancel button on the NS Config page
- [fix] Fixed extra data uploading on the Performace page
- [fix] Changed Git documentation link in the Main menu
- [fix] Fixed console issues on the add/edit indexes
- [fix] Fixed caching of the NS config
- [fix] Fixed layout issues on the Index form
v3.23.1
Core
- [fix] Fixed crash in the incremental fulltext index during typos handling
- [fix] Fixed crash in the UPDATE-query in the case when this query sets values for some array-field and composite index simultaneously
Go connector
- [fix] Fixed
joined
andcomposite
fields behavior: from now fields with those tags will not be created in the database
Build
- [fix] Fixed
Release
build with GCC-12 - [fix] Added version check for
Google Benchmark
library during the build
Deploy
- [fea] Added
clang-tidy
configs intoGitHub
source tree
v3.23.0
Core
- [fea] Improved queries conditions injection in the both directions: joined-to-main and main-to-joined
- [fea] Improved heuristic for the joins preselect/condition injection. If query has some conditions with high selectivity, scheduler will try to avoid high cost preselect/injections attempts
- [fea] Added logic for the intersecting conditions merge on the query preprocessing stage
- [fea] Added clock wrapper to force vDSO for the
clock_gettime
-calls. This gives up to 20% overall performance on the some operation systems, which using libstdc++ without vDSO (for example, on Centos7) - [fea] Updated bundled libbactrace to support DWARF-v5 debug info format
- [fix] Fixed indexes/count cache drop on the indexes config update
Go connector
- [fea] Optimized handling of the unknow fields in the Go binding (in cases, when some field exists in the database, but not in the go-struct)
Deploy
- [fea] Updated RedOS build/deploy image to v3.3.4
Face
- [fea] Added Prettify feature to the SQL editor
- [fea] Made yarn upgrade
- [fea] Added Cache settings to the NS config
- [fea] Made the new UI component for the pagination
- [fea] Added tooltips with the UTC dates for the timestamp dates in the Grid view of the Namespace
- [fea] Added redirect to the created NS
- [fea] Added new settings to the Full text config
- [fea] Added Stop Words list to the Full text index
- [fea] Improved layout of the Stop words and Synonyms lists
- [fix] Fixed columns enabling/disabling in the Grid views
- [fix] Fixed issue related to the previously NS current columns displaying for the NS
- [fix] Fixed issue related to the empty config opening
- [fix] Fixed issue related to the pagination on the Query result page
- [fix] Removed eslint popup
- [fix] Fixed "see & edit" link on the Queries Perfstats page
- [fix] Fixed tooltips view
v4.14.0 *beta*
Core
- [fea] In C++
Reindexer::Connect
-call is now thread-safe
Replication
- [fea] Added more data consistency checks for the force syncs
- [fix] Fixed situation, when some of the concurrently written documents could be lost during RAFT leader resync in case of leader's switch
- [fix] Fixed possible request timeouts on the user's
set_leader_node
command - [fix] Fixed possible request timeouts during leadership transition
- [fix] Fixed possible deadlock on the initial leader sync during sharding config synchronization
- [fix] Fixed logical race on the cluster's startup (when some of the user's requests could be handled, while RAFT layer is not initialized yet)
Sharding
- [fea] Added namespaces' content check during sharding reconfiguration: now it is possible to set sharding config at runtime for non-empty namespace if contents of all the namespaces corresponds to sharding keys distribution
- [fea] Added support for subqueries to the sharded namespaces
- [fea] Added
config_rollback_timeout_sec
intosharding.conf
(option for debug purposes)
Ported
Face
- [fea] Added the ability to use hot keys to navigate over the UI
- [fea] Changed the Server ID range
- [fea] Added the default values to the config form when the default config is using
- [fea] Upgraded Webpack to 5.х
- [fea] Added the default values to the NS config during the mode changing
- [fea] Added a new tooltip with the UTC converted date to the Timestamp data on the NS Grid
- [fea] Made yarn upgrade
- [fea] Added Prettify button to the SQL Query
- [fea] Added the subqueries field to the explain mode
- [fix] Fixed Check request
- [fix] Added bottom padding to the Performance Updates chart
- [fix] Fixed the pagination on the SQL query result page
- [fix] Fixed NS config popup opened from the Statistics page
- [fix] Fixed the available column list in the grid settings after NS changing
- [fix] Fixed the message about the outdated browser version after Chrome upgraded to v120.
- [fix] Fixed the settings panel layout on the Performance page, which was overlapped by the message about the outdated browser version
- [fix] Fixed the table columns auto resizing
- [fix] Fixed the table header width issue that appeared on the table resizing
- [fix] Fixed the table layout that crashed on scrolling
- [fix] Fixed the empty space between the last NS and the Total section on the Memory page
- [fix] Fixed the title changing on the NS page during a new NS creating
- [fix] Fixed the tooltip position in the sidebar menu
- [fix] Fixed “+” button for the Expire after field