From a0234fe9f68578455e4603e9bb87ee58239c3a04 Mon Sep 17 00:00:00 2001 From: Shuduo Sang Date: Wed, 1 Feb 2023 19:45:52 +0800 Subject: [PATCH] fix: taosbenchmark handle mem better (#562) --- .github/workflows/3.0-coveralls.yml | 2 +- .github/workflows/3.0-macos-debug.yml | 2 +- .github/workflows/3.0-macos-release.yml | 2 +- .github/workflows/3.0-non-x64.yml | 2 +- .github/workflows/3.0-taosBenchmark-debug.yml | 2 +- .github/workflows/3.0-taosBenchmark-release.yml | 2 +- .github/workflows/3.0-taosdump-debug.yml | 2 +- .github/workflows/3.0-taosdump-release-ws.yml | 2 +- .github/workflows/3.0-taosdump-release.yml | 2 +- .github/workflows/3.0-windows-build.yml | 2 +- src/benchMain.c | 2 +- src/benchUtilDs.c | 7 ++++--- 12 files changed, 15 insertions(+), 14 deletions(-) diff --git a/.github/workflows/3.0-coveralls.yml b/.github/workflows/3.0-coveralls.yml index 3bb81a83..a862ed39 100644 --- a/.github/workflows/3.0-coveralls.yml +++ b/.github/workflows/3.0-coveralls.yml @@ -70,7 +70,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: diff --git a/.github/workflows/3.0-macos-debug.yml b/.github/workflows/3.0-macos-debug.yml index d2c4abd4..94f07503 100644 --- a/.github/workflows/3.0-macos-debug.yml +++ b/.github/workflows/3.0-macos-debug.yml @@ -64,7 +64,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: | diff --git a/.github/workflows/3.0-macos-release.yml b/.github/workflows/3.0-macos-release.yml index 32a68297..dd2d74f6 100644 --- a/.github/workflows/3.0-macos-release.yml +++ b/.github/workflows/3.0-macos-release.yml @@ -64,7 +64,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: | diff --git a/.github/workflows/3.0-non-x64.yml b/.github/workflows/3.0-non-x64.yml index b1fbc4eb..b933fc38 100644 --- a/.github/workflows/3.0-non-x64.yml +++ b/.github/workflows/3.0-non-x64.yml @@ -134,7 +134,7 @@ jobs: echo "clone TDengine 3.0 on ${{ steps.setup.outputs.uname }}" - git clone --branch fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine --depth 1 https://github.com/taosdata/TDengine > /dev/null || exit 1 + git clone --branch fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better --depth 1 https://github.com/taosdata/TDengine > /dev/null || exit 1 echo "build TDengine 3.0 on ${{ steps.setup.outputs.uname }}" cd TDengine || exit 1 diff --git a/.github/workflows/3.0-taosBenchmark-debug.yml b/.github/workflows/3.0-taosBenchmark-debug.yml index 36bbb1c4..db919d69 100644 --- a/.github/workflows/3.0-taosBenchmark-debug.yml +++ b/.github/workflows/3.0-taosBenchmark-debug.yml @@ -61,7 +61,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: | diff --git a/.github/workflows/3.0-taosBenchmark-release.yml b/.github/workflows/3.0-taosBenchmark-release.yml index 4dd6e8c2..d3eb71e6 100644 --- a/.github/workflows/3.0-taosBenchmark-release.yml +++ b/.github/workflows/3.0-taosBenchmark-release.yml @@ -61,7 +61,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: | diff --git a/.github/workflows/3.0-taosdump-debug.yml b/.github/workflows/3.0-taosdump-debug.yml index 8b0f9d6c..92e5de94 100644 --- a/.github/workflows/3.0-taosdump-debug.yml +++ b/.github/workflows/3.0-taosdump-debug.yml @@ -65,7 +65,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: diff --git a/.github/workflows/3.0-taosdump-release-ws.yml b/.github/workflows/3.0-taosdump-release-ws.yml index e9e49667..47d10f81 100644 --- a/.github/workflows/3.0-taosdump-release-ws.yml +++ b/.github/workflows/3.0-taosdump-release-ws.yml @@ -65,7 +65,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: diff --git a/.github/workflows/3.0-taosdump-release.yml b/.github/workflows/3.0-taosdump-release.yml index a84009b0..e3915bca 100644 --- a/.github/workflows/3.0-taosdump-release.yml +++ b/.github/workflows/3.0-taosdump-release.yml @@ -65,7 +65,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: Change time zone if: diff --git a/.github/workflows/3.0-windows-build.yml b/.github/workflows/3.0-windows-build.yml index 060cc491..922add5b 100644 --- a/.github/workflows/3.0-windows-build.yml +++ b/.github/workflows/3.0-windows-build.yml @@ -62,7 +62,7 @@ jobs: with: repository: 'taosdata/TDengine' path: 'TDengine' - ref: 'fix/sangshuduo/TD-21932-taosbenchmark-schemaless-refine' + ref: 'fix/sangshuduo/TS-2526-taosbenchmark-handle-mem-better' - name: create debug directory if: | diff --git a/src/benchMain.c b/src/benchMain.c index f52eef81..03877954 100644 --- a/src/benchMain.c +++ b/src/benchMain.c @@ -37,8 +37,8 @@ void* benchCancelHandler(void* arg) { toolsMsleep(10); if (g_arguments->in_prompt || INSERT_TEST != g_arguments->test_mode) { + toolsMsleep(100); postFreeResource(); - toolsMsleep(10); exit(EXIT_SUCCESS); } return NULL; diff --git a/src/benchUtilDs.c b/src/benchUtilDs.c index 35b17443..10ddd6c1 100644 --- a/src/benchUtilDs.c +++ b/src/benchUtilDs.c @@ -14,6 +14,7 @@ static dstr * ds_header(char *s) { + if (NULL == s) return NULL; dstr *ds = (dstr *)(s - DS_HEADER_SIZE); if (ds->magic != MAGIC_NUMBER) @@ -29,7 +30,7 @@ char * new_ds(size_t cap) ds = malloc(DS_HEADER_SIZE + cap + 1); if (ds == NULL) { - perror("newds()->malloc()"); + errorPrint("%s()->malloc()\n", __func__); exit(1); } @@ -48,7 +49,7 @@ void free_ds(char **ps) if (ds == NULL) { - printf("freeds(): not a dynamic string"); + debugPrint("%s(): not a dynamic string\n", __func__); exit(1); } @@ -124,7 +125,7 @@ char * ds_resize(char **ps, size_t cap) s = realloc(s - DS_HEADER_SIZE, DS_HEADER_SIZE + cap + 1); if (s == NULL) { - perror("resizeds()->realloc()"); + errorPrint("%s()->realloc()\n", __func__); exit(1); } s += DS_HEADER_SIZE;