* add API to use s3 as shared storage
* support using local file system as shared storage
* upload file to shared storage
* support read, compact and drop
* finish basic mnode & vnode msg processing
* follower sync migration state
* implement mnode transaction, and improve log
* send migration progress msg to dnode to avoid deadlock
* implement following migration
* remove mcount
* avoid redo migration on startup
* avoid follower deadlock when leader is down
* trigger migrate by timer, avoid compact after migration
* comment out the usage of 'tcs' functions in stream
* change config item prefix from s3 to ss
* change db option prefix from s3 to ss
* rename s3 data struct, function, file to ss
* rename s3 macro to ss
* update s3 sql to ss
* rename remaining s3 items to ss
* check ss configruation, improve s3 retry
* grant object storage -> shared storage, check ssEnabled
* fix memory leaks
* update build options
* omit sensitive information when dump config
* fix backward compatibility issue
* fix issues found in ci-checks
* fix some failed test cases
* avoid follower timeout and improve log
* fix: follower timeout because migration status not updated
* refuse migration if there's an in progress one
* fix ss test case
* remove garbage files and other minor improvement
* fix failed test cases
* update unit test
* fix failed test case
* fix failed test case
* update document
* update document and fix failed test cases
* fix minor issues in code, test and document
* check new commit after migration task is scheduled
* fix several issus
1. migrate information cannot be dropped sometimes because progress response was put into read queue.
2. memory leak in rare cases
3. data corruption in rare cases
4. failed test case
* add shared storage upgrade tool
* fix compile error
* 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>
* 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>
* 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>
* 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.
* 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>