Commit Graph

1635 Commits

Author SHA1 Message Date
Pxl
4fc3d0ce2c [Chore](pipeline) set PipelineFragmentContext::_timeout and adjust dump_pipeline_tasks infomation display (#36023)
## Proposed changes
pick from #35328
2024-06-07 15:36:29 +08:00
af779f5cd8 Pick "[fix](gclog) Skip tablet dir without schema hash dir in path gc (#32793)" (#35978)
## Proposed changes
Pick "[fix](gclog) Skip tablet dir without schema hash dir in path gc
(#32793)"
2024-06-06 22:24:30 +08:00
5cecbfc6ea [cherry-pick]Add workload metric query_be_memory (#35911) 2024-06-06 14:33:30 +08:00
8df1a3c849 [Bug](load) fix s3 load not display the progress info (#35719)
## Proposed changes
should display the load progress info, so the user could know it loading
step.
```
         JobId: 49088
         Label: rpt_10002184_syqzzywqkb10
         State: FINISHED
      Progress: 100.00% (10/10)
```


<!--Describe your changes.-->
2024-06-01 11:24:54 +08:00
b864aa7aa2 [fix](pipeline) Fix query hang up if limited rows is reached (#35513) (#35746)
Follow-up for #35466.

We should assure closed tasks will not block other tasks.

## Proposed changes

Issue Number: close #xxx

<!--Describe your changes.-->
2024-05-31 22:50:57 +08:00
c2fc485327 [fix](auto-partition) fix auto partition load lost data in multi sender (#35287) (#35630)
## Proposed changes

Change `use_cnt` mechanism for incremental (auto partition) channels and
streams, it's now dynamically counted.
Use `close_wait()` of regular partitions as a synchronize point to make
sure all sinks are in close phase before closing any incremental (auto
partition) channels and streams.
Add dummy (fake) partition and tablet if there is no regular partition
in the auto partition table.

Backport #35287

Co-authored-by: zhaochangle <zhaochangle@selectdb.com>
2024-05-31 10:27:03 +08:00
300582f2e5 [branch-2.1](routine-load) fix be core when partial table load failed (#35622) 2024-05-30 09:35:36 +08:00
680be6d19f [fix](ub) fix uninitialized accesses in BE (#35370)
ubsan hints:
```c++
/root/doris/be/src/olap/hll.h:93:29: runtime error: load of value 3078029312, which is not a valid value for type 'HllDataType'
/root/doris/be/src/olap/hll.h:94:23: runtime error: load of value 3078029312, which is not a valid value for type 'HllDataType'
/root/doris/be/src/runtime/descriptors.h:439:38: runtime error: load of value 118, which is not a valid value for type 'bool'
/root/doris/be/src/vec/exec/vjdbc_connector.cpp:61:50: runtime error: load of value 35, which is not a valid value for type 'bool' 
```
2024-05-29 20:31:07 +08:00
4294b7360e Revert "Revert "[fix](memory) Fix nested scoped tracker and nested reserve memory (#35257)""
This reverts commit 95393b531d340a865bfd2711ea77d39a04e61993.
2024-05-29 20:16:16 +08:00
b91d2caab8 [Feature](iceberg-writer) Implements iceberg sink basic functionality for inserting into table. (#35587)
backport #34929
2024-05-29 16:40:54 +08:00
589518ff72 [fix](Nereids) fix Illegal aggregate node: group by and output is empty (#35497)
fix Illegal aggregate node: group by and output is empty.
introduced by #33091
2024-05-29 15:01:47 +08:00
b06794d619 [opt](spill) add session variable of 'enable_force_spill' (#34664) (#35561)
## Proposed changes

pick #34664

<!--Describe your changes.-->
2024-05-29 09:57:31 +08:00
95393b531d Revert "[fix](memory) Fix nested scoped tracker and nested reserve memory (#35257)"
This reverts commit f8fcd17f33deab0605c9378850a21714293ef1b5.
2024-05-28 23:14:19 +08:00
5c40e87667 [opt](s3) auto retry when meeting 429 error (#35397)
- Add 2 new BE config

	- `s3_read_base_wait_time_ms` and `s3_read_max_wait_time_ms`

		When meet s3 429 error, the "get" request will
		sleep `s3_read_base_wait_time_ms (*1, *2, *3, *4)` ms get try again.
		The max sleep time is s3_read_max_wait_time_ms
		and the max retry time is max_s3_client_retry
		
- Add more metrics for s3 file reader

	- `s3_file_reader_too_many_request`: counter of 429 error.
	- `s3_file_reader_s3_get_request`: the QPS of s3 get request.

	- `TotalGetRequest`: Get request counter in profile
	- `TooManyRequestErr`: 429 error counter in profile
	- `TooManyRequestSleepTime`: Sum of sleep time after 429 error in profile
	- `TotalBytesRead`: Total bytes read from s3 in profile
2024-05-28 23:00:31 +08:00
f8fcd17f33 [fix](memory) Fix nested scoped tracker and nested reserve memory (#35257)
SCOPED_ATTACH_TASK cannot be nested, but SCOPED_SWITCH_THREAD_MEM_TRACKER_LIMITER can continue to be called, so attach_limiter_tracker may be nested.
2024-05-28 13:12:03 +08:00
7058b31edd [fix](move-memtable) clear load streams before shutdown SegmentFileWriterThreadPool (#35217) 2024-05-28 13:12:03 +08:00
c6c90ff63e [chore](routine-load) make routine_load_consumer_pool_size can update using HTTP API (#35315) 2024-05-25 17:46:29 +08:00
Pxl
e962a7309b [Chore](runtime-filter) adjust some check and error msg on runtime filter (#35018) (#35251)
adjust some check and error msg on runtime filter
2024-05-23 11:20:02 +08:00
ced0093d74 [fix](mem_tracker] attach mem tracker in FragmentMgr::apply_filter (#35128) 2024-05-22 10:02:46 +08:00
2ed6a00fd1 [opt](memory) Add GlobalMemoryArbitrator and support ReserveMemory (#34985) (#35070) 2024-05-22 09:53:45 +08:00
42425808a1 [Cherry-Pick](branch-2.1) Pick "Fix multiple replica partial update auto inc data inconsistency problem #34788" (#35056)
* [Fix](auto inc) Fix multiple replica partial update auto inc data inconsistency problem (#34788)

* **Problem:** For tables with auto-increment columns, updating partial columns can cause data inconsistency among replicas.

**Cause:** Previously, the implementation for updating partial columns in tables with auto-increment columns was done independently on each BE (Backend), leading to potential inconsistencies in the auto-increment column values generated by each BE.

**Solution:** Before distributing blocks, determine if the update involves partial columns of a table with an auto-increment column. If so, add the auto-increment column to the last column of the block. After distributing to each BE, each BE will check if the data key for the partial column update exists. If it exists, the previous auto-increment column value is used; if not, the auto-increment column value from the last column of the block is used. This ensures that the auto-increment column values are consistent across different BEs.

* 2

* [Fix](regression-test) Fix auto inc partial update unstable regression test (#34940)
2024-05-20 15:43:46 +08:00
dff6171546 [fix](auto inc) db_id and table_id should be int64_t instead of int32_t (#34912) 2024-05-18 18:29:59 +08:00
1a24895257 [opt](routine-load) optimize routine load task thread pool and related param(#32282) (#34896) 2024-05-15 12:42:02 +08:00
0ae1b9c70a [chore](remove code) Remove dragonbox related (#34528)
* Revert "[refactor](mysql result format) use new serde framework to tuple convert (#25006)"

This reverts commit e5ef0aa6d439c3f9b1f1fe5bc89c9ea6a71d4019.

* run buildall

* MORE

* FIX
2024-05-13 22:16:57 +08:00
cdc950f2c3 [improvement](spill) improve spill log printing 2024-05-12 19:33:27 +08:00
7a172a55ab [fix](memory) Fix prune all LRU Cache based on number #34601 (#34736) 2024-05-12 11:47:53 +08:00
0a79c547ff [Refactor](Sink) Remove is_append mode in table sink (#34684)
Remove the is_append mode from the sink component due to the following reasons:
1. The performance improvement from this mode is relatively minor, approximately 10%, as demonstrated in previous benchmarks.
2. The mode complicates maintenance. It requires a separate data writing path to avoid copying, which increases complexity and poses a risk of potential data loss.

I've already test the compability with previous version
2024-05-11 11:20:10 +08:00
7ba66c5890 [branch-2.1](routine-load) do not schedule task when there is no data (#34654) 2024-05-11 11:01:18 +08:00
853dbdcb00 [Feature](PreparedStatement) implement general server side prepared (#33807) 2024-05-10 22:10:11 +08:00
093fe354c8 [Improve](cache) Estimated column reader memory to control segment cache (#34526) 2024-05-10 22:05:20 +08:00
6c30913a31 [bugfix](memtracker) should count cancelled query in wg memory (#34443)
Co-authored-by: yiguolei <yiguolei@gmail.com>
2024-05-10 14:35:28 +08:00
dec5f0ca98 Revert "[fix](profile) Fix reporting the profile while building the p… (#34498)
* Revert "[fix](profile) Fix reporting the profile while building the pipeline profile. (#34215)"

This reverts commit eb0d963389e1b7d150cbc18c927091648e0a60f7.

* Revert "[feature](profile) sort pipelineX task by total time #34053"

This reverts commit 67b394f2b0dddab3801d2faa82a91c52ef875e76.
2024-05-07 22:58:50 +08:00
a81beb19c2 [fix](load) fix repeatedly open tablets_channel when tablets_channel already cancelled (#34442) 2024-05-06 23:15:33 +08:00
11ca738261 [fix](memory) Fix thread context init in MacOS and not use memory tracker (#34125) 2024-05-06 20:11:20 +08:00
ab5ee81811 [fix](memory) Fix page cache memory tracker consumption in prune (#34320) 2024-05-06 12:53:11 +08:00
7248420cfd [chore](session_variable) Add 'data_queue_max_blocks' to prevent the DataQueue from occupying too much memory. (#34017) (#34395) 2024-05-05 21:20:33 +08:00
8abd136ba2 [Improvement](executor)Refactor Workload group memory GC (#33797)
* just gc group's overcommit query when minor gc

* add process usage
2024-04-30 19:34:31 +08:00
7d77fd0286 [fix](profile) Fix reporting the profile while building the pipeline profile. (#34215) (#34326) 2024-04-30 11:38:03 +08:00
cd1c9edd71 [fix](pipeline-load) fix no error url when data quality error and total rows is negative (#34072) (#34204)
Co-authored-by: HHoflittlefish777 <77738092+HHoflittlefish777@users.noreply.github.com>
2024-04-27 18:19:08 +08:00
47ded2c6a0 Revert "[fix](compile) fix two compile errors on MacOS (#33834) (#34005)"
This reverts commit 743fb62a2c42cc5cc662583c235f7336d5e6ddef.
2024-04-26 00:55:21 +08:00
743fb62a2c [fix](compile) fix two compile errors on MacOS (#33834) (#34005) 2024-04-25 19:39:35 +08:00
47b54d4bd5 Fix remote scan pool (#33976) 2024-04-25 15:04:43 +08:00
5f2d0e3d53 [Fix](executor)Fix when Fe send empty wg list to be may cause query failed. (#34074) 2024-04-25 12:01:44 +08:00
67b394f2b0 [feature](profile) sort pipelineX task by total time #34053 2024-04-25 12:01:44 +08:00
f6ec64c6ad [fix](exception) Fix Block noexcept method not throw exception (#34002) 2024-04-24 17:13:50 +08:00
9bb149b3be [fix](stream-load) fix query id is zero in stream load log (#33954) 2024-04-22 22:33:24 +08:00
615765c1c0 [improvement](spill) improve spill directory and fix bugs (#33900)
* [improvement](spill) improve spill directory and fix bugs

* fix
2024-04-22 11:28:22 +08:00
Pxl
09b973db49 [Chore](runtime-filter) adjust need_local_merge setting conditions (#33886) 2024-04-19 23:50:04 +08:00
25358564ca [Fix](compile) Fix gcc compile on master (#33864)
This is imported by #33511. wrongly used

ColumnStr<T> ();

which violate C++20 standard(see https://wg21.cmeerw.net/cwg/issue2237) but still supported by clang up until now(see llvm/llvm-project#58112)
2024-04-19 23:41:37 +08:00
c747714c18 [fix](memory) Fix ExecEnv destroy memory tracking (#33781)
disable memory tracking when ExecEnv destroy.
fix memory tracker label convert to query id
2024-04-19 15:03:10 +08:00