Commit Graph

396 Commits

Author SHA1 Message Date
Bomin Zhang 9570328908 TD-333: boundary check 2020-05-16 11:03:27 +08:00
jtao1735 44d0bfa450 post semaphore before memcpy 2020-05-15 01:56:56 +00:00
Shengliang Guan 5f86564a1c [149] fix bug while replace sdb 2020-05-13 17:46:15 +08:00
jtao1735 6bfcf33658 if link is new, server force the client to do authentication 2020-05-12 10:14:27 +00:00
jtao1735 feb4bbcde0 support RpcIpSet change 2020-05-11 13:10:56 +00:00
jtao1735 41f634dc48 port shall be htons 2020-05-10 14:08:13 +00:00
slguan c43695e344 fix bug in pass_alter.sim, add log, revise shellActiveTimer 2020-05-10 00:06:37 +08:00
slguan 36a2e334db set max redirect times 2020-05-08 22:05:45 +08:00
jtao1735 599711dd6b port in redirect message shall be htons 2020-05-08 12:32:50 +00:00
jtao1735 2332725e01 Merge branch 'develop' into feature/unified 2020-05-08 02:40:38 +00:00
jtao1735 c50321969d massage the code to make the system structure more clear 2020-05-08 02:03:46 +00:00
jtao1735 d8698efc06 data in wal may not be written to system successfylly during initialization 2020-05-07 22:55:21 +00:00
jtao1735 7ee0fe519b Merge branch 'develop' into feature/unified 2020-05-07 12:35:50 +00:00
jtao1735 8882fed667 optimize the tqueue code
for rpc, set the link as secured for success response before sending response
2020-05-06 15:15:39 +00:00
jtao1735 19836961ce use semphore instead of polling for tqeueu 2020-05-06 10:03:41 +00:00
jtao1735 62b135b50f Merge branch 'develop' into feature/unified 2020-05-06 01:14:11 +00:00
jtao1735 76ab7c0687 peerIp is not set in pConn 2020-05-05 01:51:25 +00:00
jtao1735 e0537fb144 Merge branch 'develop' into feature/unifie
d
2020-05-05 00:09:22 +00:00
hjxilinx 187c7a2faa Merge branch 'develop' into feature/query 2020-05-04 14:33:46 +08:00
jtao1735 fb27589c13 first draft 2020-05-04 04:55:27 +00:00
jtao1735 4402e599bd minor changes on UDP 2020-05-04 01:38:12 +00:00
jtao1735 a6116dfa3d delete one more line by accident 2020-05-04 01:17:42 +00:00
jtao1735 cbf3c61d4b rpc shall not check peer IP address, it shall only use FQDN 2020-05-04 01:03:59 +00:00
hjxilinx 649331b8fc [td-168] remove a print 2020-05-04 00:09:33 +08:00
hjxilinx 71ea621acf [td-168] rpc cache problem 2020-05-03 23:22:33 +08:00
jtao1735 2b4fb9c9de if resposne is received, and no corresponding connection there, it shall return an error 2020-05-03 13:52:25 +00:00
hjxilinx d226214f50 Merge branch 'develop' into feature/query 2020-05-03 15:08:49 +08:00
jtao1735 0281b70740 maxId is from 1 to maxSession 2020-05-03 06:57:13 +00:00
hjxilinx b043e67097 Merge branch 'develop' into feature/query 2020-05-01 17:09:23 +08:00
hjxilinx 3ceaf386b5 [td-186] merge develop branch 2020-05-01 16:55:45 +08:00
hjxilinx 96b24d7064 [td-186] merge develop branch 2020-05-01 16:34:02 +08:00
jtao1735 cf3f7ef492 if not master, authentication shall return NOT_READY, so client can move to next node 2020-05-01 06:14:25 +00:00
jtao1735 66fcb8ab05 if connection is not activated, create a new one even sid is not 0 2020-05-01 04:21:47 +00:00
jtao1735 4e3f4f8c86 some changes 2020-04-27 01:34:16 +00:00
jtao1735 3410fef484 close soket after FD is removed from fd set 2020-04-22 10:07:32 +00:00
slguan 1774b5623b [TD-68] [TD-69] refactor tlog 2020-04-19 22:29:37 +08:00
slguan 19b1d449de rearrange code directory 2020-04-17 00:07:09 +08:00
slguan 49bfa0ddec
Merge pull request #1619 from taosdata/hotfix/rpcclose
remove the memory leak for timer module when it cleans up
2020-04-16 11:36:29 +08:00
Jeff Tao c5c197f53d remove the memory leak for timer module when it cleans up 2020-04-16 11:15:52 +08:00
slguan 1c9d23b061 Rearrange the source code directory 2020-04-15 22:22:12 +08:00
Jeff Tao dcbf597294 remove the bug in rpcClose process 2020-04-15 17:21:33 +08:00
Jeff Tao e01081f275 rename some structures 2020-04-13 18:50:30 +08:00
Jeff Tao 704d8da049 re-organize TCP connection code 2020-04-13 18:03:47 +08:00
Jeff Tao 5e58bd5c5f remove potential race condition on FdObj 2020-04-12 22:38:19 +08:00
Jeff Tao 8c22eed1bb remove a potential race condition 2020-04-12 18:10:06 +08:00
Jeff Tao a5dabf7e99 remove the potential race condition on TCP FD 2020-04-12 17:05:06 +08:00
Jeff Tao 50d7e6876d remove possible memory leaks 2020-04-12 13:49:34 +08:00
Jeff Tao a9be7a8553 exit nicely 2020-04-11 22:28:58 +08:00
Jeff Tao 1958981b0e add const in API 2020-04-11 10:31:48 +08:00
Jeff Tao d1645d3d5b
Merge branch 'develop' into feature/sync 2020-04-10 09:03:13 +08:00
Jeff Tao 358dad34ba a minor change 2020-04-10 08:40:08 +08:00
Jeff Tao 945f3ac25e NOT_READY is not processed in a right way 2020-04-09 23:31:52 +08:00
slguan dff00db7fc Merge branch 'feature/sync' into feature/balance
# Conflicts:
#	src/vnode/main/src/vnodeMain.c
2020-04-09 16:19:12 +08:00
Jeff Tao 3899ae8707 fix the bug in sync integration 2020-04-09 15:57:32 +08:00
slguan d860ec1b86
Merge pull request #1553 from taosdata/feature/query
[td-98] support iplist
2020-04-09 15:50:19 +08:00
Jeff Tao 4f945ec62a return after free 2020-04-08 21:37:39 +08:00
hjxilinx 54f28dc5f3 [td-98] add retry counting 2020-04-07 16:30:14 +08:00
slguan 23c04ba290
Merge pull request #1529 from taosdata/refact/dnodemgmt
optimize the code in dnodeMgmt, so it can close vnode one by one when…
2020-04-06 00:46:45 +08:00
Jeff Tao 58607175ee optimize the code in dnodeMgmt, so it can close vnode one by one when dnode cleans up
remove the RPC warnings
2020-04-05 23:16:28 +08:00
hjxilinx a91f0736fa [TD-98] update the hash functions for rpc module 2020-04-05 22:05:28 +08:00
hzcheng 17e6e1d303 fix breakpoint coredump 2020-04-04 05:42:51 +00:00
Jeff Tao f091d8f5e6 connection is cache has already been released because of the broken link 2020-04-02 08:28:15 +08:00
Jeff Tao 2f7fb6e115
Merge branch '2.0' into refact/sync 2020-03-30 18:02:20 +08:00
hzcheng bf9c67405d TD-34 2020-03-30 17:29:05 +08:00
Jeff Tao 92fa341fc5 add the code for synchronous client API 2020-03-28 15:45:17 +08:00
Jeff Tao 5e5f32b085 add the code to handle the broken link 2020-03-27 22:19:32 +08:00
Jeff Tao e485bb24b2 roll back the rserver.c 2020-03-27 21:39:11 +08:00
Jeff Tao 4c60448baf fix the bug for code
add the code to handle idle timer
2020-03-27 20:51:51 +08:00
slguan 6e70d2371d Merge branch '2.0' into refact/slguan 2020-03-26 11:52:31 +08:00
hjxilinx aa77115ff6 [TD-32] 2020-03-26 11:34:03 +08:00
slguan 66de5c58c9 [TD-9] fix crash while create table 2020-03-26 10:09:19 +08:00
Jeff Tao eabc5511d1 change the code to accomodate the changes by tqueue 2020-03-22 15:53:21 +08:00
Jeff Tao 931474ff6e fix the deadlock bug for rpcCloseConn 2020-03-22 08:45:14 +08:00
slguan 54405164cf [TD-10] change message name, and the create user commnad can be executed 2020-03-11 17:41:07 +08:00
slguan 311b40b691 [TD-10] change some message types 2020-03-11 11:49:34 +08:00
slguan d01a0c59e0 fix compile error for rpc interface changed 2020-03-08 20:07:27 +08:00
Jeff Tao 0207d0ebb7
Merge branch '2.0' into refact/rpc 2020-03-08 10:40:41 +08:00
Jeff Tao 2eadeb93ad a new version fro tqueue 2020-03-08 10:28:30 +08:00
Jeff Tao cebd07dba0 new version for tqueue.c 2020-03-07 22:57:25 +08:00
slguan 62d79763de
Merge pull request #1290 from taosdata/refact/rpc
Refact/rpc
2020-03-02 13:54:35 +08:00
Jeff Tao 5049b99bf6 change the uid in RPC head to linkUid, hide user name once it is authenticated 2020-03-01 11:57:20 +08:00
Jeff Tao c3130c7f44 optimize the authentication part 2020-03-01 10:48:22 +08:00
slguan ee476bb053
Merge pull request #1288 from taosdata/refact/rpc
fix the bug for authentication
2020-03-01 10:47:42 +08:00
Jeff Tao ac893cff65 fix the bug for authentication 2020-03-01 08:20:04 +08:00
slguan 693f9f2b7e
Merge pull request #1280 from taosdata/refact/rpc
Refact/rpc
2020-02-29 17:45:32 +08:00
Jeff Tao ffdc93d13c put tsRpcMaxUdpSize as an configurable parameter 2020-02-29 17:24:57 +08:00
Jeff Tao 7d5b51ab30 change the API rpcFreeCont implementation, so app can release the request message
fix a few minor bugs
2020-02-29 17:09:04 +08:00
slguan 234113ef04 connection from shell to dnode 2020-02-29 15:15:09 +08:00
slguan bddda5430b submit message 2020-02-28 22:29:53 +08:00
Jeff Tao 14c6385908 :add queue support 2020-02-25 15:26:29 +08:00
Jeff Tao 8c87d83a56 fix a write bug, make the connection cache code prettier 2020-02-25 07:39:16 +08:00
slguan 15506d57b4
Merge pull request #1256 from taosdata/refact/rpc
Refact/rpc
2020-02-24 21:08:10 +08:00
slguan ddbf242fa6 process show message 2020-02-23 18:04:57 +08:00
Jeff Tao 5da147a691 add API rpcReallocCont 2020-02-22 20:13:30 +08:00
Jeff Tao f74ad86c54 support multiple UDP threads
change the mutex in connection cache to home made lock
2020-02-22 19:52:38 +08:00
slguan d43c0ab26a client can send msg to server 2020-02-22 17:09:38 +08:00
Jeff Tao 3eccf4d22f change the pthread_mutex to lock 2020-02-22 15:02:35 +08:00
Jeff Tao f9302e8a39 made minor changes to make code nicer 2020-02-22 10:17:39 +08:00
Jeff Tao 25a4625ef6 support both TCP and UDP simultaneously for both server and client 2020-02-22 08:01:42 +08:00
slguan db1e1e5460 delete extra java files 2020-02-21 20:47:36 +08:00
Jeff Tao 56d1c42f7e add destIp support for NAT 2020-02-21 18:18:42 +08:00
Jeff Tao aea2e74ef8 add more code for testing 2020-02-21 17:26:47 +08:00
Jeff Tao baf6b0fa78 more bug fix 2020-02-20 11:13:36 +08:00
Jeff Tao 20003818b5 fix bugs 2020-02-20 08:21:09 +08:00
Jeff Tao 93f6cd34a6 fix some bugs 2020-02-20 07:58:16 +08:00
Jeff Tao a2629a0287 fix some bugs, rename files in rpc module 2020-02-20 07:05:47 +08:00
Jeff Tao 54cd817f12 fix many bugs 2020-02-19 23:48:34 +08:00
slguan e9470f0a6a CMakeFile.txt for rpc unit test 2020-02-19 22:07:54 +08:00
Jeff Tao 6fa6a016df add testing files 2020-02-19 21:54:26 +08:00
Jeff Tao 99849ec745 Merge branch '2.0' of https://github.com/taosdata/TDengine into 2.0 2020-02-19 21:12:11 +08:00
Jeff Tao 1318212c55 more optimization 2020-02-19 21:07:16 +08:00
slguan 32e7e0e7d8 cmake file for rpc unittest 2020-02-19 17:03:06 +08:00
slguan 4cce8fbb27 dnode 2020-02-19 14:34:56 +08:00
Jeff Tao 7fb3fd9800 Merge branch '2.0' of https://github.com/taosdata/TDengine into 2.0 2020-02-18 22:24:50 +08:00
Jeff Tao 0299499785 put all the protections all multi-threads 2020-02-18 22:14:32 +08:00
slguan 151a11ba5e dnodeShell.c 2020-02-18 18:20:08 +08:00
Jeff Tao fc22eb445d rearrange the code to make it more readable 2020-02-18 07:06:41 +08:00
Jeff Tao 005a7fdaf8 fix the compiling errors 2020-02-18 00:30:05 +08:00
Jeff Tao def046eb54 made minor changes 2020-02-17 19:11:23 +08:00
Jeff Tao 770ca34e09 Merge branch '2.0' of https://github.com/taosdata/TDengine into 2.0 2020-02-16 23:16:32 +08:00
Jeff Tao bdaaabe79a initial version for RPC 2020-02-16 22:40:58 +08:00
slguan e3ab73460e compile options 2020-02-15 11:47:56 +08:00
slguan cb1c3a174b rename tsdb.h 2020-02-14 23:18:14 +08:00
localvar dbdb93383c new error code implementation 2020-02-12 16:23:06 +08:00
slguan 087d2adf91 Merge branch 'develop' into 2.0 2020-02-12 15:33:28 +08:00
slguan 31f8cf3ff5 Organize mgmtUtil.c file 2020-02-10 21:15:37 +08:00
tanxuefeng dafdb50fcf atomic type error 2020-02-10 20:48:48 +08:00
hjxilinx f726178075 support order for super table projection query. #1166. [tbase-1477] 2020-01-21 15:15:43 +08:00
lihui f27c1b12fb [TBASE-1490] 2020-01-18 15:42:53 +08:00
slguan 88d7d099bb #1133 #160 #417 TBASE-530 TBASE-801 2020-01-16 17:45:57 +08:00
slguan 2f68a4cdcf Merge branch 'master' into develop
# Conflicts:
#	src/client/src/tscServer.c
2020-01-16 17:09:07 +08:00
lihui ecd07ad9bd [modify for solving warn] 2020-01-10 15:26:14 +08:00
slguan 115d67e092 TBASE-1442 #1025 2020-01-06 18:28:06 +08:00
slguan d1c3128237 Merge branch 'master' into develop
# Conflicts:
#	src/client/src/tscFunctionImpl.c
#	src/client/src/tscServer.c
2020-01-04 17:19:21 +08:00
slguan cbd77262b0 TBASE-1398 #1073 2020-01-04 16:50:19 +08:00
lihui 7934e0fa67 [#974] 2019-12-24 15:11:40 +08:00
hjxilinx f6d56d843b fix bug in issue #984. [tbase-1384] 2019-12-21 14:59:03 +08:00
slguan ef6df5093d
Merge pull request #933 from taosdata/feature/liaohj
Feature/liaohj
2019-12-17 15:22:05 +08:00
hjxilinx 05ce45e76e fix the bugs in issue #932. [tbase-1353] 2019-12-17 13:46:31 +08:00
lihui b473ba8ecc [check return value] 2019-12-12 16:00:27 +08:00
slguan f8453c14db
Merge branch 'develop' into hotfix/TBASE-1241 2019-12-11 22:32:08 +08:00
slguan 6dfc958cf4 [TBASE-1241] 2019-12-11 16:30:40 +08:00
slguan 7d6db536d0 [TBASE-1241] 2019-12-11 16:19:44 +08:00
slguan 04b5df6273 [TBASE-1241] 2019-12-11 15:12:17 +08:00
slguan d774aa3993 [TBASE-1241] 2019-12-11 14:39:48 +08:00
slguan 5ff6e6337c [TBASE-1299] 2019-12-09 11:17:34 +08:00
slguan b6fabc595c [TBASE-1315] 2019-12-07 18:14:26 +08:00
slguan b908772583
Merge pull request #849 from taosdata/feature/liaohj
Feature/liaohj
2019-12-04 18:44:50 +08:00
hjxilinx ae9a948ba3 [tbase-897] 2019-12-04 18:35:10 +08:00
slguan 6d27c11e3b Merge branch 'develop' into release/v1.6.4.0 2019-12-01 09:30:23 +08:00
slguan 79fc94f019 [TBASE-1280] 2019-12-01 09:29:58 +08:00
Jeff Tao 27f52b8975 fix #808 2019-11-30 22:37:22 +08:00
fangpanpan e39bd6793b
Merge pull request #780 from taosdata/feature/lihui
[NONE]
2019-11-27 13:06:58 +08:00
lihui ad979353bd [NONE] 2019-11-27 13:03:34 +08:00
hjxilinx fbe9b5f852 [tbase-933] 2019-11-26 14:30:36 +08:00
slguan 104455dc8c Merge remote-tracking branch 'origin/develop' into feature/slguan 2019-11-22 19:25:15 +08:00
slguan 026d0b499b [TBASE-1128] 2019-11-22 14:18:41 +08:00
lihui 3980d488e3 [TBASE-1199] 2019-11-20 13:27:28 +08:00
lihui 1895b2ff98 [TBASE-1198] 2019-11-20 11:55:11 +08:00
slguan d0a3a288a2 [TBASE-1186] 2019-11-19 14:23:47 +08:00
slguan 8527587b49 [TBASE-1186] 2019-11-18 17:44:36 +08:00
slguan 5e48daf58f Merge branch 'develop' into feature/slguan 2019-11-16 16:56:14 +08:00
slguan 8c55d4860a [TBASE-1164] 2019-11-16 16:55:41 +08:00
hjxilinx c302d338e7 refactor code, reorganize the header files 2019-11-16 15:30:28 +08:00
hjxilinx 3313155271 [TBASE-814] 2019-11-15 11:00:37 +08:00
localvar 9b754d70f4 add more atomic api 2019-11-12 07:04:19 +00:00
lihui ee112120ff [TBASE-816] 2019-11-11 14:18:31 +08:00
lihui 15cb828bea [TBASE-816] 2019-11-11 11:11:25 +08:00
slguan c2e91fcb75 Adjust code structure 2019-11-07 18:12:26 +08:00
Jeff Tao 77b20bf138 fix issue 677 2019-11-06 08:49:40 +08:00
Jeff Tao a54e96fc05 fix issue #662 2019-10-31 13:43:51 +08:00
hjxilinx 6fec7de230 fix bug #657. RPC module frees the msg body while other threads still access that struct to cause the SIGSEGV error. 2019-10-29 17:53:19 +08:00
hjxilinx fdfd05f27d Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/util/src/ttimer.c
2019-10-11 14:40:03 +08:00
hjxilinx 6e01c527a6 supress some warnings from clang-tidy,valgrind etc. 2019-10-11 14:33:42 +08:00
slguan 1dcdccb73a enable the client to compile under darwin 2019-10-11 14:06:49 +08:00
hjxilinx 25ff54c90c impose uid check for submit blocks, refer to #606 2019-10-11 10:58:06 +08:00
slguan 806a9310e3 fix issue #552 2019-09-24 14:32:12 +08:00
slguan d28ee044d1 fix issue #514 2019-09-16 17:55:29 +08:00
slguan a7fea5b4ad log format error 2019-09-10 09:54:04 +08:00
slguan b806c458d5 fix the issue #419 2019-08-29 17:47:30 +08:00
Jeff Tao 3e5ba2a7d0
Merge pull request #383 from localvar/udp-fix
fix & enhancement for udp connection handling
2019-08-24 18:42:49 +08:00
Jeff Tao a9ad56780f fix issue #418 2019-08-24 18:02:11 +08:00
slguan 06b7af06a2 fix the issue #404 2019-08-23 09:58:08 +08:00
localvar 01bb110b45 fix & enhancement for udp connection handling
1. potential data race in `taosProcessMonitorTimer`:
the issue does not exist at present because there's only one scheduler
thread, which means there's no cocurrent calls to this function for a
same `pMonitor`. but if more scheduler threads are created later,
there's a data race issue in rare case. as threads number can be
easily increased by increase the value of `taosTmrThreads`, it is very
unlikely that the developer could realize this function need to be
revised together. that's why i say it is a 'potential' issue.

this issue happens in below scenario:
a. scheduler thread1: `if (pSet)` is true and new timer is installed by
`taosTmrReset`;
b. scheduler thread1: `if (pMonitor->pSet == NULL)` is true but
`taosTmrStopA` is blocked, either by the mutex of the timer or os thread
scheduler.
c. timer thread: 200ms elapse, new call to `taosProcessMonitorTimer` is
initialized in scheduler thread2;
d. scheduler thread2: `if (pMonitor->pTimer != tmrId)` is false;
e. scheduler thread1: unblocked, stops timer and frees `pMonitor`;
f. scheduler thread2: unexpected behavior because `pMonitor` is not
valid any more.

because the result of this issue is crash or worse, i suggest to fix it
though the possibility of all the conditions are met is very very low.

2. `pthread_attr_t` related issues: per manual, an initialized
`pthread_attr_t` can be reused, should be destroyed, and the behavior of
re-init it is undefined. this issue exist in other modules also.

3. memory leaks;

4. improve failure case handling of `taosInitUdpConnection`;

5. typo
2019-08-18 11:28:38 +08:00
slguan 8b05ac9960 fix issue #212 2019-08-07 23:16:50 +08:00
slguan 2fc1a1bd1a
Merge branch 'master' into fix_duplicate_include 2019-07-26 22:19:30 +08:00
slguan bd3db150e5 Windows client, #51 #38 #32 #12 2019-07-26 19:15:31 +08:00
Li Cao 09fa673922 remove duplicate include in trpc.c 2019-07-26 14:16:23 +08:00
slguan 6788a4222c Fix the issue ##110, unsorted timestamp in one request may cause crash 2019-07-20 17:17:10 +08:00
slguan 02d1d6c525 Fix the syntax error while EPOLLWAKEUP no defined in some systems 2019-07-16 13:32:29 +08:00
slguan 6d17dbc0f8 Clean up some warnings 2019-07-13 14:04:30 +08:00
slguan d0c37df8bb Change the free function to tfree 2019-07-13 10:15:40 +08:00
siddontang 74d44497d8 fix memory leak when read failed
Signed-off-by: siddontang <siddontang@gmail.com>
2019-07-12 22:00:01 +08:00
Hongze Cheng f0f6b6a975 add lower version cmake support 2019-07-12 01:57:11 +00:00
slguan fa719d5c99 Handling invalid connections when deleting a database 2019-07-11 19:02:45 +08:00
hzcheng 57492cc12d TDengine first commit 2019-07-11 16:36:16 +08:00