Commit graph

509 commits

Author SHA1 Message Date
Jing Sima
c3ada3e32d feat: [TS-6100] Support IGNORE_NODATA_TRIGGER. 2025-07-08 15:50:26 +08:00
dapan1121
0e69cb3886 Merge remote-tracking branch 'origin/3.0' into feat/TS-6100-3.0 2025-06-27 14:53:03 +08:00
Minglei Jin
66c4ef3e90
feat(mqtt): mqtt subscription (#30127)
* feat(mqtt): Initial commit for mqtt

* chore(xnode/mnd): xnode message handlers for mnode

* chore(mnd/xnode): mnode part for xnode

* chore(xnode/translater): fix show commands

* fix(ast/creater): fix xnode create option

* fix(xnode/ci): fix ci & doc's error codes

* chore(xnode/sql): make create/drop/show work properly

* fix(xnode/sql): commit new files

* fix(xnode/sql): commit cmake files

* fix: fix testing cases

* fix(xnode/tsc): fix tokens

* fix(ast/anode): fix anode update decl.

* fix(xnode/error): fix xnode error codes

* fix: xnode make/destroy

* chore: xnode with option & dnode id

* chore: use taosmqtt for xnode

* chore: new error code for xnode launching

* chore(xnode): new error code

* chore: header for _xnode_mgmt_mqtt

* chore: source for _xnode_mgmt_mqtt

* chore: remove test directory from cmake

* chore: remove taosmqtt for ci to compile

* chore: remove taosudf header from xnode

* chore: new window macro

* chore: remove xnode mgmt mqtt for windows compilation

* Revert "chore: remove xnode mgmt mqtt for windows compilation"

This reverts commit 197e1640c7.

* chore: cleanup code

* chore: xnode mgmt comment windows part out

* chore: mgmt/mqtt, move uv head toppest

* xnode/mnode: create xnode once per dnode

* fix(xnode/systable/test): fix column count

* xnode/sdb: renumber sdb type for xnode to make start/stop order correct

* xnode/mqtt: new param mqttPort

* fix SXnode's struct type

* transfer dnode id to mqtt subscription

* tmqtt: remove uv_a linking

* tmqtt/tools: sources for tools

* tools: fix windows compilation

* tools/producer: fix windows sleep param

* tools/producer: fix uninited var rc

* make tools only for linux

* test/mnodes: wail 1 or 2 seconds for offline to be leader

* update topic producer tool for geometry data type testing

* format tool sql statements

* show xnodes' ep

* make shell auto complete xnodes

* use usleep instead of sleep

* mqtt/proto: first version mqtt protocol

* remove assert styles

* build with linux only

* fix libuv for taosmqtt building

* fix log printing

* mem: use ttq_ prefix instead of tmqtt

* xnode/parser/proto: protocol option for xnode

* xnode/translater/option: translate xnode option proto

* xnode/translator: translate proto param

* xnode/tmsg: encode/decode proto param

* xnode/mnode: proto parma for mndXnode

* xnode/proto: protocol param for xnode

* xnode/mqtt: save/load proto from xnode json

* rename tmqtt proto header

* rename head directories

* rename header name styles

* restyle func names

* update

* update

* use camel db

* use camel for cxt

* update count of information_schema

* fix exceptional cases

* fix w.r.t reviews

* fixes w.r.t reviews

* use ttq_free

* append xnode msgs

* update information schema count

* support tmq meta data sub

* success typo fix

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix error line var w.r.t. suggestions from copilot

* denote mqtt node with bnode instead of xnode

* smoke testing for mqtt

* soak testing

* new package for test framework: paho 2.1.0

* import mqtt into util

* fix soak testing

* test/soak: user 5 topics per client

* test/soak: cover qos

* update docker image references to tdengine-ci:0.1 in CI scripts and common.py

* refactor: rename bnode msg to backup node

* refactor: rename xnode to bnode 1

* refactor: rename xnode to bnode 2

* refactor: rename xnode to bnode 3

* refactor: rename xnode to bnode 4

* refactor: rename xnode to bnode 4

* refactor: rename xnode to bnode 5

* refactor: rename xnode to bnode 6

* refactor: rename some files 1

* refactor: rename some files 2

* refactor: rename some files 3

* refactor: rename some files 4

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: chenhaoran <haoran920c@163.com>
Co-authored-by: Simon Guan <guanshengliang@qq.com>
2025-06-25 14:58:51 +08:00
dapan1121
27d51d5d4b enh: add recalc stream 2025-06-24 13:21:01 +08:00
Jing Sima
a142c1aebb feat: [TS-6100] Parse create stream sql: support fill_history without parameters 2025-06-21 15:24:31 +08:00
Mario Peng
c65e1592fa
feat:insert into subquery (#31401) 2025-06-21 15:11:09 +08:00
Jing Sima
8ac2d095f7 feat: [TS-6100] Parse create stream sql: Add more error case and fix bugs. 2025-06-17 08:24:35 +08:00
Jing Sima
da193ab4b0 feat: [TS-6100] Parse create stream sql: Add more unit test. 2025-06-12 09:39:07 +08:00
Jing Sima
701af46675 feat: [TS-6100] Parse create stream sql: Refactor. 2025-06-10 16:01:43 +08:00
factosea
b2c646beda feat: show streams 2025-06-07 10:56:03 +08:00
dapan1121
33ca255671 Merge remote-tracking branch 'origin/feat/TS-6100-3.0' into feat/TS-6100-3.0.pw9 2025-06-06 09:15:50 +08:00
dapan1121
bfce943ff0 enh: add more check 2025-06-06 09:09:40 +08:00
Jing Sima
0a33d13264 feat: [TS-6100] Parse create stream sql: Fix %%tbname wrong plan 2025-06-06 09:09:19 +08:00
Jing Sima
48ad39e8c3 feat: [TS-6100] Parse create stream sql: Fix trigger window check. 2025-06-04 14:35:13 +08:00
Jing Sima
29be1c4370 feat: [TS-6100] Parse create stream sql: Add trigger window check. 2025-06-03 19:01:19 +08:00
facetosea
18aa05c71c feat: count_window 2025-06-03 18:31:49 +08:00
Jing Sima
46d0932e73 feat: [TS-6100] Parse create stream sql: Support _tprev_ts/_tnext_ts/_tprev_localtime/_tnext_localtime. 2025-05-27 16:49:36 +08:00
Jing Sima
c812498a91 feat: [TS-6100] Parse create stream sql: Support recalculate stream and refactor of drop/start/stop stream. 2025-05-24 17:57:24 +08:00
Jinqing Kuang
18566df281 Merge branch '3.0' into kjq-merge 2025-05-24 14:56:21 +08:00
Jing Sima
be3288f5a1 feat: [TS-6100] Parse create stream sql: Fix parser error ver-3. 2025-05-24 09:54:48 +08:00
Jing Sima
365f2c7974 feat: [TS-6100] Parse create stream sql: Fix parser error ver-2. 2025-05-23 16:34:56 +08:00
Jing Sima
9fa1bf5fd5 feat: [TS-6100] Parse create stream sql: Fix out tag. 2025-05-23 14:55:12 +08:00
Jing Sima
90c1c3a9ef feat: [TS-6100] Parse create stream sql: Fix sql parser error. 2025-05-23 14:07:07 +08:00
Jing Sima
98843b05c1 feat: [TS-6100] Parse create stream sql: Fix default tag expr 2025-05-23 11:00:12 +08:00
Jing Sima
31b7882f1d feat: [TS-6100] Parse create stream sql: Fix syntax error. 2025-05-22 18:20:04 +08:00
Simon Guan
08b8673ac5
merge: from main to 3.0 branch (#31161) 2025-05-22 09:13:14 +08:00
Jing Sima
b0e9b29ff7 feat: [TS-6100] Parse create stream sql: Use %%tbname in SELECT and WHERE clause. 2025-05-19 09:55:44 +08:00
Jing Sima
b45f2fd321 feat: [TS-6100] Parse create stream sql: Support period window. 2025-05-15 14:30:52 +08:00
Jing Sima
0c490df458 feat: [TS-6100] Parse create stream sql: Fix partition by tbname error. 2025-05-13 14:13:20 +08:00
dapan1121
009e8aa41e Merge remote-tracking branch 'origin/3.0' into feat/TS-6100-3.0 2025-05-12 16:24:22 +08:00
Jinqing Kuang
b2a17d5e9f test(stream): add stream basic test script 2025-05-08 11:51:21 +08:00
Jing Sima
5ccdf6f424 feat: [TS-6100] Parse create stream sql: Fix syntax error when using %%trows. 2025-05-08 09:43:46 +08:00
pengrongkun94@qq.com
c64e1ca34b feat: add client parse 2025-05-07 11:05:24 +08:00
Jing Sima
c85e400f76 feat: [TS-6100] Process SCMCreateStreamReq ver-5
1. support time range expr in stream query.
2. support where condition in stream notify.
2025-04-30 17:37:34 +08:00
Jing Sima
6ae805bb7a feat: [TS-6100] Process SCMCreateStreamReq ver-4
support placeHolderBitmap and interval offset in stream trigger.
remove useless code.
2025-04-29 15:19:30 +08:00
dapan1121
330cf9982d fix: compile issues 2025-04-24 09:11:54 +08:00
Jing Sima
c1cb4029a1 feat: [TS-6100] Build create request for create stream. 2025-04-21 17:47:15 +08:00
Simon Guan
7437dd026e Merge branch '3.0' into merge/mainto3.0 2025-04-11 13:47:45 +08:00
Simon Guan
50d3705bea
enh[TS-6318]: changed the keyword for composite primary keys from "primary key" to "composite key" (#30741) 2025-04-10 20:31:35 +08:00
Simon Guan
e777dc5e9f
fix: the REPLICA parameter supports plural forms when used to create and alter a database (#30732) 2025-04-10 16:48:06 +08:00
xinsheng Ren
463430ab15
enh: [TS-6195] support cols in stream (#30580) 2025-04-02 11:31:08 +08:00
WANG MINGMING
3bc6635de3
feat[TS-6115]: support deletion of topics with active consumers. (#30232)
* feat[TS-6115]: drop topic & consumer group in force

* feat[TS-6115]: drop topic & consumer group in force

* feat[TS-6115]: drop topic & consumer group in force
2025-03-18 14:11:00 +08:00
WANG MINGMING
930b57b770
feat: support fill_history 1 async when creating stream (#30185)
* 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

* feat: support fill_history 1 async when creating stream

* feat: support fill_history 1 async when creating stream

* fix: compile error

* feat[TS-5617]: support fill_history 1 async when creating stream

---------

Co-authored-by: yihaoDeng <yhdeng@taosdata.com>
2025-03-18 10:01:33 +08:00
Jing Sima
410324746b
feat:[TS-4897] virtual table (#30098)
* feat: [TS-4897] Support create/drop/alter/show/describe vtable

* feat: [TS-4897] Support vtable's query

* feat: [TS-4897] Support create virtual supertable

* feat: [TS-4897] Support explain analyze / where / count(*) and only select ts of vtable.

* feat: [TS-4897] Add create test and fix bugs

* feat: [TS-4897] Add alter/drop test and fix bugs

* feat: [TS-4897] Add describe/show test and fix bugs

* feat: [TS-4897] Add auth test and fix bugs

* feat: [TS-4897] Fix meta/catalog/cache bugs

* feat: [TS-4897] Support select tag from virtual child table

* feat: [TS-4897] Add select test and fix plenty of bugs

* feat: [TS-4897] Add optimize rule for vtable scan / support create vtable cross database / remove enterprise constraint / fix bugs.

* feat: [TS-4897] Fix 'schema is old'

* feat: [TS-4897] Support virtual stable query

* feat: [TS-4897] Add tests and Fix bugs

* feat: [TS-4897] resolve conflict.
2025-03-15 14:10:46 +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
wangjiaming
f50fcb85b8
feat(decimal): support decimal data type (#30060)
* decimal: create table

* decimal: add test case decimal.py

* decimal: add decimal.c

* support input decimal

* decimal test

* refactor svalue

* fix test cases

* add decimal unit test

* add decimal test cmake

* support insert and query decimal type

* define wide integer, support decimal128

* support decimal128 divide

* set decimal type expr res types

* scalar decimal

* convert to decimal

* fix decimal64/128 from str and to str

* fix decimal from str and decimal to str

* decimal simple conversion

* unit test for decimal

* decimal conversion and unit tests

* decimal + - * /

* decimal scalar ops and comparision

* start to refactor GET_TYPED_DATA

* support decimal max func, cast func

* refactor GET_TYPED_DATA interface

* decimal scalar comparision

* start to implement sum for decimal

* support sum and avg for decimal type

* decimal tests

* add decimal test

* decimal add test cases

* decimal use int256/int128

* decimal testing

* fix decimal table meta and add tests for decimal col streams

* fix create stream and create tsma

* test insert decimal values

* decimal from str

* test decimal input

* test parse decimal from string

* add taos_fetch_field_e api

* decimal insert tests

* test decimal operators

* decimal operator test

* feat:support decimal in raw block

* decimal operator tests

* decimal test

* feat:support decimal in raw block

* feat:support decimal in raw block

* feat:add schemaExt to SMqDataRsp

* feat:remove add schemaExt to SMqDataRsp

* feat:remove add schemaExt to SMqDataRsp

* feat:remove add schemaExt to SMqDataRsp

* decimal test operators

* decimal operator test

* test decimal operators

* test decimal compare operators

* decimal unary operator test

* decimal col with decimal col oper test

* test decimal col filtering

* fix decimal float operator test

* decimal test where filtering

* fix decimal filtering

* fix decimal order by

* fix decimal op test

* test decimal agg funcs

* test decimal functions

* remove assert

* fix ci build for ret check

* fix decimal windows build

* fix ci ret check

* skip decimal ret check

* skip decimal ret check

* fix decimal tests

* fix decimal ci test

* decimal test

* fix(tmq): heap user after free

* fix(tmq): double free

* fix(tmq): double free

* fix decimal tests

* fix(decimal): decimal test ci build

* fix(decimal): windows build

* fix(decimal): decimal test build

* fix(decimal): fix decimal build and tests

* fix(decimal): fix decimal tests

* fix(decimal): fix taos_fetch_fields_e api

* fix(decimal): fix decimal taos_fetch_fields_e api

* fix(decimal): rebase 3.0

* fix(decimal): fix decimal functions

* fix(decimal): fix decimal test case memory leak

* fix(decimal): fix decimal tests

* fix(decimal): fix decimal test case

* fix(decimal): fix decimal tests

* feat(decimal): fix unit tests

* feat(decimal): fix deicmal unit test

---------

Co-authored-by: wangmm0220 <wangmm0220@gmail.com>
Co-authored-by: yihaoDeng <yhdeng@taosdata.com>
2025-03-14 18:08:07 +08:00
Zhixiao Bao
af7e34e189
feat(keep): support keep on super table level. (#30097)
* Feat: support use keep while create super table.

* Test(keep): add test for create super table with keep option.

* Feat(keep): Add tmsg for create keep.

* Feat(keep): support alter table option keep.

* Fix(keep): Add baisc test for alter table option.

* Fix(keep): memory leek.

* Feat(keep): add keep to metaEntry&metaCache and fix earliestTs with stn keep.

* Test(keep): add some cases for select with stb keep.

* Fix: fix ci core while alter stb.

* Feat(keep): delete expired data in super table level.

* Feat: remove get stb keep while query.

* Fix : build error.

* Revert "Fix : build error."

This reverts commit 0ed66e4e84.

* Revert "Feat(keep): delete expired data in super table level."

This reverts commit 36330f6b4c.

* Fix : build errors.

* Feat : support restart taosd.

* Fix : alter table comment problems.

* Test : add tests for super table keep.

* Fix: change sdb stb reserve size.

* Test: add more tests.

* Feat: Disable normal tables and sub tables from setting the keep parameter

* Fix: add more checks to avoid unknown address.

* Docs: Add docs for stable keep.

* Fix: some review changes.

* Fix: review errors.
2025-03-14 16:10:13 +08:00
xinsheng Ren
4edddd6038
Merge branch '3.0' into enh/TS-5650/showLike 2025-03-07 10:29:35 +08:00
dongming chen
e5fb75797a
Merge branch '3.0' into feat/TS-5927-long-password 2025-03-05 12:15:12 +08:00
factosea
e91014f807 feat: show variables like 2025-03-02 22:48:05 +08:00