Commit graph

139 commits

Author SHA1 Message Date
Jinqing Kuang
ac23a4fc55
feat(stream): support stream processing for virtual tables (#30144)
* enh: add client processing

* enh: add mnode vtables processing

* enh: add mnode vtable processing

* enh: add normal child vtable support

* fix: compile issues

* fix: compile issues

* fix: create stream issues

* fix: multi stream scan issue

* fix: remove debug info

* fix: agg task and task level issues

* fix: correct task output type

* fix: split vtablescan from agg

* fix: memory leak issues

* fix: add limitations

* Update 09-error-code.md

* Update 09-error-code.md

* fix: remove usless case

* feat(stream): extract original table data in source scan task

Implemented functionality in the source task to extract data
corresponding to the virtual table from the original table using WAL.
The extracted data is then sent to the downstream merge task for further
processing.

* feat(stream): multi-way merge using loser tree in virtual merge task

Implemented multi-way merge in the merge task using a loser tree to
combine data from multiple original table into a single virtual table.
The merged virtual table data is then pushed downstream for further
processing.  Introduced memory limit handling during the merge process
with configurable behavior when the memory limit is reached.

* fix(test): remove useless cases

---------

Co-authored-by: dapan1121 <wpan@taosdata.com>
Co-authored-by: Pan Wei <72057773+dapan1121@users.noreply.github.com>
2025-03-15 17:06:48 +08:00
liuyao
2de6736160
feat(stream): add new trigger continuous_window_close (#30125)
* opt stream build twa result

* opt force window close memory

* feat(stream):optimize new interval and scan operator

* adj log

* opt code

* opt code

* fill history

* fix issue for fill history

* add ci

* feat(stream): add new stream nonblock interval operator

* adjust code

* use new scan operator

* use new scan operator

* add log

* fix issue

* recover stream scan next function

* fix issue

* fix issue

* fix issue

* ignore disorder data

* fix issue

* fix issue for interval sliding

* fix issue

* fix ci issue

* fix ci issue

* fix ci issue

* add semi && final nonblock interval operator

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* refactor(stream): track the msgId for each upstream tasks.

* fix(stream): fix race condition.

* fix(stream): update the task last msgId when putting into input queue succ.

* fix issue

* fix issue

* put recalculate data to rocksdb

* fix issue

* fix issue

* enh(query)[TD-33071]: add support for saving and restoring tsdbReader scan progress

- Implement functionality to save scan progress during tsdbReader operations
- Enable resuming scans from the last saved position

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* add rec interval check

* enh(stream):add recalculate tasks.

* enh(stream): support the re-calculate the tasks.

* fix issue && do refactor

* do refactor

* fix issue

* fix issue

* update backend opt

* add new interface

* add new session operator

* support blob

* add new session operator

* fix issue

* add rec state for rec task

* fix invalid read

* add new session window

* enh(stream): update the stream tasks backend.

* new session operator

* add pull data

* fix(stream): fix error in expand stream backend.

* fix issue

* fix issue

* fix issue

* merge code

* fix issue

* fix(stream): check for null ptr.

* fix(stream): add more check.

* fix issue

* fix issue

* fix issue

* add debug code

* fix issue

* fix issue

* fix issue

* set rec end flag

* fix(stream): opt re-calculate stream tasks.

* fix issue

* fix issue

* add new operator

* enh(stream): dispatch recalculate block to agg tasks.

* fix issue

* fix issue

* fix(stream): adjust filter.

* fix issue

* refactor

* refactor(stream): adjust the recalculate end block.

* fix issue

* fix(stream): set correct create trigger block.

* fix issue

* fix(stream): fix error in build recalculate end block.

* fix(stream): check null ptr.

* add stream client && fix issue

* fix mem leak

* fix(stream): free msg.

* add stream client

* fix(stream): fix error.

* add stream client && fix issue

* add stream client

* refactor(stream): set the recalculate task complete.

* add wend and group_id for session window dest table

* feat(stream): refactor and set the recalcul agg task complete.

* add cfg for adapter

* fix issue

* add state && event operator

* feat(stream): support fill-history task.

* add new fill operator

* fix(stream): set correct backend when updating fill-history task to recalculate task.

* add new fill operator

* fix(stream): s2025-03-06 11:10:31.272
et ops always open in scan tsdb

* fix(stream):set the correct taskType for sink task.

* new fill operator

* adj stream fill operator

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* fix issue

* adj test

* fix issue

* fix(stream): fix issue

* fix(steam): fix issue

* fix(steam): fix issue

* fix(steam): fix issue

* fix(steam): fix issue

* fix(stream): fix issue

* fix(stream): fix issue

* fix(stream): fix issue

* fix: ut com error

* fix(stream): fix mem leak and adjust operator type check rule

* fix(stream): fix mem leak and adjust test case

* refactor code

* fix(stream): free items.

* fix(stream): free fix memory leak.

* fix(stream): fix syntax error.

* fix: ignore unexpect block

* fix: adjust op type

---------

Co-authored-by: Haojun Liao <hjliao@taosdata.com>
Co-authored-by: Jinqing Kuang <kuangjinqingcn@gmail.com>
Co-authored-by: yihaoDeng <luomoxyz@126.com>
2025-03-14 20:14:01 +08:00
WANG MINGMING
3d053e2c9b
feat(stream): optimize client logic of creating stream if with history (#30059)
* feat:[TS-5617]use last_row cache mode if creating stream in fill_history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* feat(stream): optimize client logic of creating stream if with history

* fix: heap use after free

* feat: add log

* fix: ci case error

* fix: compile error in windows

* fix: ci case error

* fix: heap user after free

* fix: memory leak

* fix: ci case error

* fix: ci case error

* fix: ci case error

---------

Co-authored-by: yihaoDeng <yhdeng@taosdata.com>
2025-03-14 13:55:52 +08:00
Kaili Xu
13f9bddf3d
feat: support customized taos/taosd (#29736)
* feat: support TDAcoreOS

* chore: cmake options for TD_ACORE

* chore: disable lemon for TD_ACORE

* chore: add lzma2 and msvcregex

* chore: cmake for lzma2

* chore: adapt for TD_ACORE

* chore: adapt strcasecmp for TD_ACORE

* chore: adapt for geos/threadName

* chore: build adapt for TD_ACORE

* chore: build adapt for TD_ACORE

* chore: build adapt for TD_ACORE

* chore: build adapt for TD_ACORE

* chore: build adapt for TD_ACORE termio

* chore: refact transComm.h for TD_ACORE

* chore: refact transportInt.h for TD_ACORE

* chore: refact trans.c for TD_ACORE

* chore: refact trpc.h for TD_ACORE

* chore: refact transCli.c/transComm.c/transSvr.c for TD_ACORE

* chore: refact uv.h for TD_ACORE

* chore: refact geosWrapper.h for TD_ACORE

* chore: refact token/builtins/udf for TD_ACORE

* chore: refact rocks for TD_ACORE

* chore: refact tsdbCache.c for TD_ACORE, use LRU cache for last/last_row, not use rocksdb

* chore: refact FAIL to _ERR to solve conflicts for TD_ACORE

* chore: restore lemon.c/lempar.c

* chore: support build lemon for TD_ACORE

* chore: refact trpc and siginfo_t for TD_ACORE

* chore: refact timezone for TD_ACORE

* chore: refact lz4 for TD_ACORE

* chore: refact TD_ACORE to make compile pass

* chore: code optimization for TD_ASTRA

* feat: support run taos with taosd integrated

* feat: support invoke taos shell

* feat: support invoke taos shell

* feat: support invoke taos shell

* chore: code optimization

* chore: fix undefined reference problem os TD_ASTRA

* chore: resolve compile problem for TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix undefined reference problem os TD_ASTRA

* chore: fix getpid

* chore: fix typo

* chore: set stack size and ajust min pack size for TD_ASTRA

* chore: fix pthread create parameters

* chore: chmod adapt for TD_ASTRA

* chore: fix trans compile problem

* chore: adapt chmod for TD_ASTRA

* chore: byte alignment for TD_ASTRA

* chore: more code for adaption of TD_ASTRA

* chore: more code for adaption of TD_ASTRA

* chore: more code for adaption of TD_ASTRA

* chore: byte alignment for TD_ASTRA

* chore: conditional compile option

* chore: adapt for TD_ASTRA

* chore: adjust taosPId and msvcregex for TD_ASTRA

* chore: log dir separator for wal build name

* chore: fix type of pointer parameter

* chore: fix compile problem of tsdbGetS3Size

* enh: get last ver from wal log for TD_ASTRA

* enh: refact wal meta ver

* enh: refact wal meta ver

* fix: typo of taosUcs4Compare

* enh: process return value of CI

* chore: more code for TD_ASTRA adaption

* chore: return value of taosCloseFile in walMeta.c

* chore: fix compile problem

* chore: fix compile problem of TD_ASTRA

* fix: update macro for tq and stream task

* chore: code optimization for TD_ASTRA

* chore: restore create log and init cfg interface

* chore: restore strncasecmp and strcasecmp

* fix: adjust the field position of SDataBlockInfo

* fix: pragma pack min size

* fix: pragma pack min size

* chore: more code for TD_ASTRA adaption

* fix: type of parameters

* chore: adapt strncasecmp and strcasecmp for TD_ASTRA

* chore: restore interface of init log

* enh: pack push optimization

* fix: taos init cfg

* add astra support

* fix: fetch the value of suid

* chore: switch of  build with udf

* add temp code

* chore: more code for TD_ASTRA adaption

* chore: add macro ERRNO to replace errno

* chore: bytes align for TD_ASTRA

* fix: remove obsolete codes

* enh: support USE_UDF macro

* fix compile error

* fix: resolve redefinition problem

* fix: compile problem of log.cpp

* fix: compile problem of osTimezone

* fix: resolve compile problem of udf

* fix: pragma definition on windows

* fix: ucs4 and stpncpy for TD_ASTRA

* fix: memory align problem for TD_ASTRA

* enh: solve memory leak for TD_ASTRA_RPC

* fix: compile problem of taosSetInt64Aligned

* fix: restore mndSubscribe.c

* fix: scalar for udf

* chore: code adaption for TD_ASTRA

* chore: code optimization for TD_ASTRA

* fix: typo of add definition

* fix: typo of macro in tudf.h

* chore: remove void to make CI pass

* enh: move macro from cmake.platform to cmake.options

* enh: byte align for hash node and error code

* chore: restore the size for lru cache

* enh: restore some code about pack push

* chore: restore the pack push in tmsg.h

* fix: add macro of pack pop for windows

---------

Co-authored-by: yihaoDeng <luomoxyz@126.com>
2025-03-14 13:32:13 +08:00
xiao-77
c1732ba41d Fix asan problems at ci test. 2025-01-09 13:36:23 +08:00
xiao-77
9eb1239783 Fix mem leak. 2025-01-09 10:50:23 +08:00
xiao-77
c4ed102c11 Merge branch '3.0' into enh/3.0/TD-31709 2024-12-16 10:00:02 +08:00
xiao-77
a6e1af6b42 Merge branch '3.0' into enh/3.0/TS-5007 2024-12-13 15:04:36 +08:00
xiao-77
f8a6489bb8 Fix ci problems. 2024-12-12 19:31:28 +08:00
xiao-77
d6078fd0b7 Enh use tmsg to encode/decode global config. 2024-12-12 17:40:35 +08:00
xiao-77
c653daf5dc Fix unit test. 2024-12-06 11:37:45 +08:00
xiao-77
eb202e556a Fix sdb lost val while kill taosd. 2024-12-04 19:32:21 +08:00
xiao-77
08402e60be Fix some mem errors. 2024-11-27 13:54:03 +08:00
xiao-77
223e0f55c5 Fix ci error. 2024-11-26 17:05:07 +08:00
xiao-77
6b744211ff Add alter dyn code. 2024-11-21 14:30:28 +08:00
xiao-77
4b8feab900 fix mnd config persist. 2024-11-18 19:52:41 +08:00
dapan1121
4f3484b823 Merge remote-tracking branch 'origin/3.0' into feat/TD-30268 2024-10-24 16:49:38 +08:00
lyh250-666
726b133721 modify error code passing 2024-09-12 07:46:30 +00:00
lyh250-666
f91305c52f enh:modify error code pass for taosMemoryCalloc in dnode/mgmt mnode/ 2024-09-02 04:40:20 +00:00
dapan1121
d1013b20f9 Merge remote-tracking branch 'origin/3.0' into feat/TD-30268 2024-08-30 18:26:26 +08:00
wangmm0220
9e018e8e58 fix:[TS-5156]add user/fqdn in show consumers 2024-08-09 14:28:58 +08:00
wangmm0220
d5b990e4ed fix:[TS-5156]add user in show consumers 2024-08-08 16:38:11 +08:00
dapan1121
1831deb2f0 Merge remote-tracking branch 'origin/3.0' into feat/TD-30268 2024-08-02 16:12:39 +08:00
wangmm0220
ce3d60ed20 feat:[TS-4592]remove lost status for consumer 2024-07-29 23:57:28 +08:00
dapan1121
dfc3fc4987 Merge remote-tracking branch 'origin/3.0' into feat/TD-30268 2024-07-29 11:16:36 +08:00
dmchen
929cb703e7 fix/TD-30989 2024-07-25 09:49:58 +00:00
WANG MINGMING
535755266d
Merge branch '3.0' into opti/TD-31017 2024-07-23 19:44:06 +08:00
wangmm0220
02346072fc fix:[TD-31017]process return value in mnode for tmq 2024-07-23 16:02:07 +08:00
dapan1121
adfd7b4504 Merge remote-tracking branch 'origin/3.0' into feat/TD-30268 2024-07-22 19:24:56 +08:00
wangmm0220
862a40afa0 fix:[TD-31017]process return value in mnode for tmq 2024-07-22 17:30:49 +08:00
dmchen
33ee871acf fix/TD-30989 2024-07-20 01:25:18 +00:00
dapan1121
e527f2fd0b fix: validate function return value 2024-07-12 15:22:39 +08:00
wangmm0220
b28437aaba feat:[TS-4592] clear lost status for consumer 2024-07-10 18:42:20 +08:00
dapan1121
b3eb938527 enh: add query memory pool 2024-07-01 17:22:43 +08:00
wangmm0220
ddcf7c74f7 fix:[TS-5067] check if consumer belong to this cgroup:topic where drop cgroup 2024-06-21 14:11:33 +08:00
wangmm0220
8e2a2414c0 fix:same subtable same partition by leads to same table name in stream 2024-03-28 13:48:46 +08:00
wangmm0220
d0bdb0ce2b opti:tmq logic 2024-03-13 19:36:00 +08:00
wangmm0220
4dfc531e6c opti:subscribe logic 2024-03-12 19:42:26 +08:00
wangmm0220
ac9582b24a fix:[TD-28567] do not add md5 to the end of subtable if create stream by sma 2024-02-19 13:58:58 +08:00
wangmm0220
478e1a67ae fix:[TD-28590]add logic for consume excluded 2024-02-06 18:14:06 +08:00
Haojun Liao
d4bab8c09b refactor: do some internal refactor. 2024-01-25 16:53:30 +08:00
Haojun Liao
8a7e38ad15 fix(stream): fix checkpoint failure check. 2024-01-24 13:10:53 +08:00
Haojun Liao
2cc584ff44 fix(stream): fix error in check vgId. 2024-01-22 11:05:42 +08:00
yihaoDeng
83a5e2be4c stream change ver 2023-08-31 11:42:12 +08:00
yihaoDeng
05ca71d5de stream change ver 2023-08-31 09:28:43 +08:00
Haojun Liao
f633c7fe2b other: merge 3.0. 2023-08-10 11:56:30 +08:00
yihaoDeng
6dc93a8dec add stream ver 2023-08-04 13:52:20 +08:00
Haojun Liao
f4a3567935 other: merge 3.0 2023-07-06 11:24:30 +08:00
Haojun Liao
200575647c
Merge branch '3.0' into refact/fillhistory 2023-07-03 15:16:18 +08:00
dapan1121
3519e9170e Merge remote-tracking branch 'origin/main' into 3.0 2023-06-29 11:13:45 +08:00