Skip to content

Commit

Permalink
[ref] Remove allure upload job
Browse files Browse the repository at this point in the history
force-build-all
  • Loading branch information
reindexer-bot committed Feb 2, 2024
1 parent 54027a7 commit ed2ee18
Show file tree
Hide file tree
Showing 126 changed files with 3,382 additions and 1,332 deletions.
2 changes: 1 addition & 1 deletion bindings/consts.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package bindings

const CInt32Max = int(^uint32(0) >> 1)

const ReindexerVersion = "v3.21.0"
const ReindexerVersion = "v3.22.0"

// public go consts from type_consts.h and reindexer_ctypes.h
const (
Expand Down
48 changes: 44 additions & 4 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,46 @@
# Version 3.22.0 (XX.02.2024)
## Core
- [fea] Added `explain` results for the [subqueries](readme.md#subqueries-nested-queries)
- [fea] Added support for limit/offset in `Delete` and `Update` queries
- [fea] Optimized ordered indexes' cache logic to achive more cache hits and more compact cache size
- [fea] Added support for `COUNT_CACHED(*)`/`CachedTotal()` aggregation in the queries with INNER JOINS. Now it's possible to cache total count results for such queries
- [fix] Fixed SQL parsing for combintaions of the [subqueries](readme.md#subqueries-nested-queries) and other conditions in the main query
- [fix] Fixed [select functions](fulltext.md#using-select-functions) with '.' delimiter. Previously those functios were actually expected '=' as a delimiter

## Fulltext
- [fea] Reworked logic for the stop-words. [More details](fulltext.md#stopwords-details)
- [fea] Added config for the base ranking algorithm. Check `bm25_config` field in the [fulltext settings](fulltext.md#base-config-parameters)

## Replication
- [fea] Fixed sync logic to allow runtime server ID changing

## Reindexer server
- [fix] Fixed SQL suggests for subqueries and some kinds of the JOIN-queries

## Docker
- [fea] Base docker image was updated to alpine 3.19

## Build
- [fix] Fixed dependencies and build for alpine 3.15+
- [fix] Fixed Release build with GCC 13.2

## Face
- [fea] Added the subqueries field to the explain mode
- [fea] Upgraded the Webpack to 5.х
- [fea] Added the default values to the NS config during the mode 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 the "+" button for the Expire after field

# Version 3.21.0 (15.12.2023)
## Core
- [fea] Added [subqueries](#subqueries-nested-queries) support (`explain` for subqueries will be implemented in the next releases)
- [fea] Added [subqueries](readme.md#subqueries-nested-queries) support (`explain` for subqueries will be implement in the next releases)
- [fea] Added backtraces/minidump support for Windows platform
- [fea] Added query crash tracker support for Windows platform
- [fix] Added explicit error for aggregations in joined queries
Expand All @@ -16,16 +56,16 @@

## Go connector
- [fea] Added Go API and DSL-convertor for subqueries
- [fea] Changed CJSON-to-object conversion logic for slices: now the single JSON values and fields with multiple JSON-paths will be concatenated together in the target field
- [fea] Added `WithStrictJoinHandlers`. This option allows to validate JoinHandlers usage at runtime
- [fea] Changed CJSON-to-object convetrion logic for slices: now the single JSON values and fields with multiple JSON-paths will be concatenated together in the target field
- [fea] Added `WithStrictJoinHandlers`. This option allows to validate JoinHandlers usage in runtime
- [fix] Fixed panic handling in the CJSON deserialization
- [fix] Fixed logging in `cproto`-binding. Error messages will no longer be redirected to stdout instead of user's logger

## Face
- [fea] Saved the scroll position on the sorting
- [fea] Changed the Server ID range
- [fea] Improved the notification about the supported browsers
- [fea] Added the default values to the config form when the default config is used
- [fea] Added the default values to the config form when the default config is using
- [fix] Fixed the wrong redirect to a fake database
- [fix] Fixed the column order changing on the data sorting
- [fix] Fixed the horizontal scroll on the data sorting
Expand Down
7 changes: 4 additions & 3 deletions cpp_src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ option (ENABLE_TCMALLOC "Enable tcmalloc extensions" ON)
option (ENABLE_JEMALLOC "Enable jemalloc extensions" ON)
option (ENABLE_ROCKSDB "Enable rocksdb storage" ON)
option (ENABLE_GRPC "Enable GRPC service" OFF)
option (ENABLE_SSE "Enable SSE instructions" ON)
option(ENABLE_SSE "Enable SSE instructions" ON)
option(ENABLE_SERVER_AS_PROCESS_IN_TEST "Enable server as process" OFF)


if (NOT GRPC_PACKAGE_PROVIDER)
Expand All @@ -42,7 +43,7 @@ else()
option (LINK_RESOURCES "Link web resources as binary data" ON)
endif()

set (REINDEXER_VERSION_DEFAULT "3.21.0")
set (REINDEXER_VERSION_DEFAULT "3.22.0")

if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "RelWithDebInfo")
Expand Down Expand Up @@ -731,7 +732,7 @@ if (NOT WIN32)
SET(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME "server")
SET(DIST_INCLUDE_FILES
"tools/errors.h" "tools/serializer.h" "tools/varint.h" "tools/stringstools.h" "tools/customhash.h" "tools/assertrx.h" "tools/jsonstring.h"
"tools/verifying_updater.h"
"tools/verifying_updater.h" "tools/customlocal.h"
"core/reindexer.h" "core/type_consts.h" "core/item.h" "core/payload/payloadvalue.h" "core/payload/payloadiface.h" "core/indexopts.h"
"core/namespacedef.h" "core/keyvalue/variant.h" "core/keyvalue/geometry.h" "core/sortingprioritiestable.h"
"core/rdxcontext.h" "core/activity_context.h" "core/type_consts_helpers.h" "core/payload/fieldsset.h" "core/payload/payloadtype.h"
Expand Down
21 changes: 18 additions & 3 deletions cpp_src/client/coroqueryresults.cc
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,19 @@ void CoroQueryResults::Bind(std::string_view rawResult, RPCQrId id) {
PayloadType("tmp").clone()->deserialize(ser);
},
ResultSerializer::AggsFlag::ClearAggregations);

auto copyStart = rawResult.begin() + ser.Pos();
if (const auto rawResLen = std::distance(copyStart, rawResult.end()); rx_unlikely(rawResLen > int64_t(RawResBufT::max_size()))) {
throw Error(
errLogic,
"client::QueryResults::Bind: rawResult buffer overflow. Max size if %d bytes, but %d bytes requested. Try to reduce "
"fetch limit (current limit is %d)",
RawResBufT::max_size(), rawResLen, fetchAmount_);
}
rawResult_.assign(copyStart, rawResult.end());
} catch (const Error &err) {
status_ = err;
}

rawResult_.assign(rawResult.begin() + ser.Pos(), rawResult.end());
}

void CoroQueryResults::fetchNextResults() {
Expand All @@ -79,7 +87,14 @@ void CoroQueryResults::fetchNextResults() {

ser.GetRawQueryParams(queryParams_, nullptr, ResultSerializer::AggsFlag::DontClearAggregations);

rawResult_.assign(rawResult.begin() + ser.Pos(), rawResult.end());
auto copyStart = rawResult.begin() + ser.Pos();
if (const auto rawResLen = std::distance(copyStart, rawResult.end()); rx_unlikely(rawResLen > int64_t(RawResBufT::max_size()))) {
throw Error(errLogic,
"client::QueryResults::fetchNextResults: rawResult buffer overflow. Max size if %d bytes, but %d bytes requested. Try "
"to reduce fetch limit (current limit is %d)",
RawResBufT::max_size(), rawResLen, fetchAmount_);
}
rawResult_.assign(copyStart, rawResult.end());
}

h_vector<std::string_view, 1> CoroQueryResults::GetNamespaces() const {
Expand Down
3 changes: 2 additions & 1 deletion cpp_src/client/coroqueryresults.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ class CoroQueryResults {
friend class RPCClient;
friend class CoroRPCClient;
friend class RPCClientMock;
using RawResBufT = h_vector<char, 0x100>;
CoroQueryResults(net::cproto::CoroClientConnection* conn, NsArray&& nsArray, int fetchFlags, int fetchAmount, seconds timeout);
CoroQueryResults(net::cproto::CoroClientConnection* conn, NsArray&& nsArray, std::string_view rawResult, RPCQrId id, int fetchFlags,
int fetchAmount, seconds timeout);
Expand All @@ -81,7 +82,7 @@ class CoroQueryResults {
net::cproto::CoroClientConnection* conn_;

NsArray nsArray_;
h_vector<char, 0x100> rawResult_;
RawResBufT rawResult_;
RPCQrId queryID_;
int fetchOffset_;
int fetchFlags_;
Expand Down
6 changes: 3 additions & 3 deletions cpp_src/client/itemimpl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ void ItemImpl::FromCJSON(std::string_view slice) {
throw Error(errParseJson, "Internal error - left unparsed data %d", rdser.Pos());
}
tupleData_.assign(ser_.Slice().data(), ser_.Slice().size());
pl.Set(0, Variant(p_string(&tupleData_)));
pl.Set(0, Variant(p_string(&tupleData_), Variant::no_hold_t{}));
}

Error ItemImpl::FromJSON(std::string_view slice, char **endp, bool /*pkOnly*/) {
Expand Down Expand Up @@ -88,7 +88,7 @@ Error ItemImpl::FromJSON(std::string_view slice, char **endp, bool /*pkOnly*/) {
if (err.ok()) {
// Put tuple to field[0]
tupleData_.assign(ser_.Slice().data(), ser_.Slice().size());
pl.Set(0, Variant(p_string(&tupleData_)));
pl.Set(0, Variant(p_string(&tupleData_), Variant::no_hold_t{}));
ser_ = WrSerializer();
}
return err;
Expand All @@ -102,7 +102,7 @@ Error ItemImpl::FromMsgPack(std::string_view buf, size_t &offset) {
Error err = decoder.Decode(buf, pl, ser_, offset);
if (err.ok()) {
tupleData_.assign(ser_.Slice().data(), ser_.Slice().size());
pl.Set(0, Variant(p_string(&tupleData_)));
pl.Set(0, Variant(p_string(&tupleData_), Variant::no_hold_t{}));
}
return err;
}
Expand Down
16 changes: 7 additions & 9 deletions cpp_src/cmd/reindexer_server/contrib/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
FROM alpine:3.14 AS build
FROM alpine:3.19 AS build

RUN cd /tmp && apk update && \
apk add git curl autoconf automake libtool linux-headers g++ make libunwind-dev grpc-dev grpc protobuf-dev c-ares-dev && \
apk add git curl autoconf automake libtool linux-headers g++ make libunwind-dev grpc-dev protobuf-dev c-ares-dev patch && \
git clone https://github.com/gperftools/gperftools.git && \
cd gperftools && \
echo "noinst_PROGRAMS =" >> Makefile.am && \
sed -i s/_sigev_un\._tid/sigev_notify_thread_id/ src/profile-handler.cc && \
./autogen.sh && ./configure --disable-dependency-tracking && make -j8 && make install
./autogen.sh && ./configure --disable-dependency-tracking && make -j8 && make install

ADD . /src

Expand All @@ -19,17 +18,16 @@ RUN ./dependencies.sh && \
make -j8 reindexer_server reindexer_tool && \
make install -C cpp_src/cmd/reindexer_server && \
make install -C cpp_src/cmd/reindexer_tool && \
make install -C cpp_src/server/grpc && \
cp ../cpp_src/cmd/reindexer_server/contrib/entrypoint.sh /entrypoint.sh && \
rm -rf /usr/local/lib/*.a /usr/local/include /usr/local/lib/libtcmalloc_debug* /usr/local/lib/libtcmalloc_minimal* \
/usr/local/lib/libprofiler* /usr/local/lib/libtcmalloc.* /usr/local/share/doc /usr/local/share/man /usr/local/share/perl5 /usr/local/bin/pprof*
/usr/local/lib/libprofiler* /usr/local/lib/libtcmalloc.* /usr/local/share/doc /usr/local/share/man /usr/local/share/perl5 /usr/local/bin/pprof*

RUN cd build && make install -C cpp_src/server/grpc

FROM alpine:3.14
FROM alpine:3.19

COPY --from=build /usr/local /usr/local
COPY --from=build /entrypoint.sh /entrypoint.sh
RUN apk update && apk add libstdc++ libunwind snappy libexecinfo leveldb c-ares libprotobuf xz-libs && rm -rf /var/cache/apk/*
RUN apk update && apk add libstdc++ libunwind snappy leveldb c-ares libprotobuf xz-libs grpc-cpp && rm -rf /var/cache/apk/*

ENV RX_DATABASE /db
ENV RX_CORELOG stdout
Expand Down
Loading

0 comments on commit ed2ee18

Please sign in to comment.