Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/release_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,7 @@ jobs:

PROTON_BINARY=proton-$PROTON_TAG-Darwin-x86_64
echo "Proton Binary Name: $PROTON_BINARY"
sha256sum $GITHUB_WORKSPACE/output/proton

mv $GITHUB_WORKSPACE/output/proton $GITHUB_WORKSPACE/$PROTON_BINARY
secrets:
Expand Down Expand Up @@ -284,6 +285,7 @@ jobs:

PROTON_BINARY=proton-$PROTON_TAG-Darwin-arm64
echo "Proton Binary Name: $PROTON_BINARY"
sha256sum $GITHUB_WORKSPACE/output/proton

mv $GITHUB_WORKSPACE/output/proton $GITHUB_WORKSPACE/$PROTON_BINARY
secrets:
Expand Down
14 changes: 10 additions & 4 deletions install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,16 @@ BINARY_FILE="proton-${LATEST_TAG}-${OS}-${ARCH}"
TARGET_FILE="proton"

# Check if the proton file exists

# Fix me, what if I wanna use this script 3 times?
# if `proton` not exist, we use proton
# else
# 1.use `"proton-${LATEST_TAG}-${OS}-${ARCH}"` (by default)
# 2.overwrite it(only work on manual bash install.sh)

if [ -f "$TARGET_FILE" ]; then
echo -n "'proton' file exists. Do you want to overwrite it? (y/n): "
read REPLY
echo
if [ "$(echo $REPLY | cut -c1)" = "y" ] || [ "$(echo $REPLY | cut -c1)" = "Y" ]; then
read -p "'proton' file already exists. Do you want to overwrite it? (y/n): " answer
if [ "$answer" = "y" -o "$answer" = "Y" ]; then
TARGET_FILE="proton"
else
TARGET_FILE=$BINARY_FILE
Expand Down Expand Up @@ -79,6 +84,7 @@ For detailed usage and more information, check out the Timeplus documentation:
https://docs.timeplus.com/"
else
echo "Download failed or the binary for $OS-$ARCH is not available." >&2
exit 1
fi

if [ "${OS}" = "Linux" ]
Expand Down
4 changes: 2 additions & 2 deletions src/Common/Streaming/Substream/ExecutorImpl.h
Original file line number Diff line number Diff line change
Expand Up @@ -626,14 +626,14 @@ struct ExecutorImpl

/// Return {removed, last_removed_watermark, remaining_size}
template <DestroyDataFunc<Data>... F>
void removeBucketsBefore(Int64 watermark, F &&... destory)
void removeBucketsBefore(Int64 watermark, F &&... destroy)
{
auto destroy_wrapper = [&](DataPtr & data) {
if (nullptr == data)
return;

Data & data_ref = *reinterpret_cast<Data *>(data);
(destory(data_ref), ...);
(destroy(data_ref), ...);

data = nullptr;
};
Expand Down
2 changes: 1 addition & 1 deletion src/Interpreters/Streaming/Aggregator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2357,7 +2357,7 @@ void NO_INLINE Aggregator::mergeDataImpl(
{
/// If there are multiple sources, there are more than one AggregatedDataVariant. Aggregator always creates a new AggregatedDataVariant and merge all other
/// AggregatedDataVariants to the new created one. After finalize(), it does not clean up aggregate state except the new create AggregatedDataVariant.
/// If it does not alloc new memory for the 'dst' (i.e. aggregate state of the new AggregatedDataVariant which get destoryed after finalize()) but reuse
/// If it does not alloc new memory for the 'dst' (i.e. aggregate state of the new AggregatedDataVariant which get destroyed after finalize()) but reuse
/// that from the 'src' to store the final aggregated result, it will cause the data from other AggregatedDataVariant will be merged multiple times and
/// generate incorrect aggregated result.
dst = arena->alignedAlloc(total_size_of_aggregate_states, align_aggregate_states);
Expand Down