提交 37998561 编写于 作者: Z zhaoyanggh

fix asm error

上级 25562295
...@@ -160,7 +160,7 @@ extern char configDir[]; ...@@ -160,7 +160,7 @@ extern char configDir[];
#define DEFAULT_SUB_INTERVAL 10000 #define DEFAULT_SUB_INTERVAL 10000
#define DEFAULT_QUERY_INTERVAL 10000 #define DEFAULT_QUERY_INTERVAL 10000
#define STMT_BIND_PARAM_BATCH 1 #define SML_LINE_SQL_SYNTAX_OFFSET 7
#if _MSC_VER <= 1900 #if _MSC_VER <= 1900
#define __func__ __FUNCTION__ #define __func__ __FUNCTION__
...@@ -346,6 +346,7 @@ typedef struct SSuperTable_S { ...@@ -346,6 +346,7 @@ typedef struct SSuperTable_S {
// one sql // one sql
uint8_t autoCreateTable; // 0: create sub table, 1: auto create sub table uint8_t autoCreateTable; // 0: create sub table, 1: auto create sub table
uint16_t iface; // 0: taosc, 1: rest, 2: stmt uint16_t iface; // 0: taosc, 1: rest, 2: stmt
uint16_t lineProtocol;
int64_t childTblLimit; int64_t childTblLimit;
uint64_t childTblOffset; uint64_t childTblOffset;
...@@ -359,6 +360,7 @@ typedef struct SSuperTable_S { ...@@ -359,6 +360,7 @@ typedef struct SSuperTable_S {
// interval // interval
int64_t insertRows; int64_t insertRows;
int64_t timeStampStep; int64_t timeStampStep;
int tsPrecision;
char startTimestamp[MAX_TB_NAME_SIZE]; char startTimestamp[MAX_TB_NAME_SIZE];
char sampleFormat[SMALL_BUFF_LEN]; // csv, json char sampleFormat[SMALL_BUFF_LEN]; // csv, json
char sampleFile[MAX_FILE_NAME_LEN]; char sampleFile[MAX_FILE_NAME_LEN];
...@@ -577,6 +579,7 @@ extern char * g_aggreFuncDemo[]; ...@@ -577,6 +579,7 @@ extern char * g_aggreFuncDemo[];
extern char * g_aggreFunc[]; extern char * g_aggreFunc[];
extern SArguments g_args; extern SArguments g_args;
extern SDbs g_Dbs; extern SDbs g_Dbs;
extern char * g_dupstr;
extern int64_t g_totalChildTables; extern int64_t g_totalChildTables;
extern int64_t g_actualChildTables; extern int64_t g_actualChildTables;
extern SQueryMetaInfo g_queryInfo; extern SQueryMetaInfo g_queryInfo;
...@@ -585,7 +588,7 @@ extern FILE * g_fpOfInsertResult; ...@@ -585,7 +588,7 @@ extern FILE * g_fpOfInsertResult;
#define min(a, b) (((a) < (b)) ? (a) : (b)) #define min(a, b) (((a) < (b)) ? (a) : (b))
/* ************ Function declares ************ */ /* ************ Function declares ************ */
int parse_args(int argc, char *argv[], SArguments *arguments); int parse_args(int argc, char *argv[]);
int getInfoFromJsonFile(char *file); int getInfoFromJsonFile(char *file);
void setupForAnsiEscape(void); void setupForAnsiEscape(void);
int taosRandom(); int taosRandom();
......
...@@ -27,30 +27,29 @@ char *g_aggreFuncDemo[] = {"*", ...@@ -27,30 +27,29 @@ char *g_aggreFuncDemo[] = {"*",
char *g_aggreFunc[] = {"*", "count(*)", "avg(C0)", "sum(C0)", char *g_aggreFunc[] = {"*", "count(*)", "avg(C0)", "sum(C0)",
"max(C0)", "min(C0)", "first(C0)", "last(C0)"}; "max(C0)", "min(C0)", "first(C0)", "last(C0)"};
int parse_args(int argc, char *argv[], SArguments *arguments) { int parse_args(int argc, char *argv[]) {
int32_t code = -1; int32_t code = -1;
char * g_dupstr = NULL;
for (int i = 1; i < argc; i++) { for (int i = 1; i < argc; i++) {
if ((0 == strncmp(argv[i], "-f", strlen("-f"))) || if ((0 == strncmp(argv[i], "-f", strlen("-f"))) ||
(0 == strncmp(argv[i], "--file", strlen("--file")))) { (0 == strncmp(argv[i], "--file", strlen("--file")))) {
arguments->demo_mode = false; g_args.demo_mode = false;
if (2 == strlen(argv[i])) { if (2 == strlen(argv[i])) {
if (i + 1 == argc) { if (i + 1 == argc) {
errorPrintReqArg(argv[0], "f"); errorPrintReqArg(argv[0], "f");
goto end_parse_command; goto end_parse_command;
} }
arguments->metaFile = argv[++i]; g_args.metaFile = argv[++i];
} else if (0 == strncmp(argv[i], "-f", strlen("-f"))) { } else if (0 == strncmp(argv[i], "-f", strlen("-f"))) {
arguments->metaFile = (char *)(argv[i] + strlen("-f")); g_args.metaFile = (char *)(argv[i] + strlen("-f"));
} else if (strlen("--file") == strlen(argv[i])) { } else if (strlen("--file") == strlen(argv[i])) {
if (i + 1 == argc) { if (i + 1 == argc) {
errorPrintReqArg3(argv[0], "--file"); errorPrintReqArg3(argv[0], "--file");
goto end_parse_command; goto end_parse_command;
} }
arguments->metaFile = argv[++i]; g_args.metaFile = argv[++i];
} else if (0 == strncmp(argv[i], "--file=", strlen("--file="))) { } else if (0 == strncmp(argv[i], "--file=", strlen("--file="))) {
arguments->metaFile = (char *)(argv[i] + strlen("--file=")); g_args.metaFile = (char *)(argv[i] + strlen("--file="));
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -88,23 +87,23 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -88,23 +87,23 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg(argv[0], "h"); errorPrintReqArg(argv[0], "h");
goto end_parse_command; goto end_parse_command;
} }
arguments->host = argv[++i]; g_args.host = argv[++i];
} else if (0 == strncmp(argv[i], "-h", strlen("-h"))) { } else if (0 == strncmp(argv[i], "-h", strlen("-h"))) {
arguments->host = (char *)(argv[i] + strlen("-h")); g_args.host = (char *)(argv[i] + strlen("-h"));
} else if (strlen("--host") == strlen(argv[i])) { } else if (strlen("--host") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg3(argv[0], "--host"); errorPrintReqArg3(argv[0], "--host");
goto end_parse_command; goto end_parse_command;
} }
arguments->host = argv[++i]; g_args.host = argv[++i];
} else if (0 == strncmp(argv[i], "--host=", strlen("--host="))) { } else if (0 == strncmp(argv[i], "--host=", strlen("--host="))) {
arguments->host = (char *)(argv[i] + strlen("--host=")); g_args.host = (char *)(argv[i] + strlen("--host="));
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
} }
} else if (strcmp(argv[i], "-PP") == 0) { } else if (strcmp(argv[i], "-PP") == 0) {
arguments->performance_print = true; g_args.performance_print = true;
} else if ((0 == strncmp(argv[i], "-P", strlen("-P"))) || } else if ((0 == strncmp(argv[i], "-P", strlen("-P"))) ||
(0 == strncmp(argv[i], "--port", strlen("--port")))) { (0 == strncmp(argv[i], "--port", strlen("--port")))) {
uint64_t port; uint64_t port;
...@@ -156,7 +155,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -156,7 +155,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorWrongValue("taosdump", "-P or --port", strPort); errorWrongValue("taosdump", "-P or --port", strPort);
goto end_parse_command; goto end_parse_command;
} }
arguments->port = (uint16_t)port; g_args.port = (uint16_t)port;
} else if ((0 == strncmp(argv[i], "-I", strlen("-I"))) || } else if ((0 == strncmp(argv[i], "-I", strlen("-I"))) ||
(0 == (0 ==
...@@ -167,13 +166,13 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -167,13 +166,13 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
goto end_parse_command; goto end_parse_command;
} }
if (0 == strcasecmp(argv[i + 1], "taosc")) { if (0 == strcasecmp(argv[i + 1], "taosc")) {
arguments->iface = TAOSC_IFACE; g_args.iface = TAOSC_IFACE;
} else if (0 == strcasecmp(argv[i + 1], "rest")) { } else if (0 == strcasecmp(argv[i + 1], "rest")) {
arguments->iface = REST_IFACE; g_args.iface = REST_IFACE;
} else if (0 == strcasecmp(argv[i + 1], "stmt")) { } else if (0 == strcasecmp(argv[i + 1], "stmt")) {
arguments->iface = STMT_IFACE; g_args.iface = STMT_IFACE;
} else if (0 == strcasecmp(argv[i + 1], "sml")) { } else if (0 == strcasecmp(argv[i + 1], "sml")) {
arguments->iface = SML_IFACE; g_args.iface = SML_IFACE;
} else { } else {
errorWrongValue(argv[0], "-I", argv[i + 1]); errorWrongValue(argv[0], "-I", argv[i + 1]);
goto end_parse_command; goto end_parse_command;
...@@ -183,19 +182,19 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -183,19 +182,19 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
"--interface=", strlen("--interface="))) { "--interface=", strlen("--interface="))) {
if (0 == strcasecmp((char *)(argv[i] + strlen("--interface=")), if (0 == strcasecmp((char *)(argv[i] + strlen("--interface=")),
"taosc")) { "taosc")) {
arguments->iface = TAOSC_IFACE; g_args.iface = TAOSC_IFACE;
} else if (0 == strcasecmp( } else if (0 == strcasecmp(
(char *)(argv[i] + strlen("--interface=")), (char *)(argv[i] + strlen("--interface=")),
"rest")) { "rest")) {
arguments->iface = REST_IFACE; g_args.iface = REST_IFACE;
} else if (0 == strcasecmp( } else if (0 == strcasecmp(
(char *)(argv[i] + strlen("--interface=")), (char *)(argv[i] + strlen("--interface=")),
"stmt")) { "stmt")) {
arguments->iface = STMT_IFACE; g_args.iface = STMT_IFACE;
} else if (0 == strcasecmp( } else if (0 == strcasecmp(
(char *)(argv[i] + strlen("--interface=")), (char *)(argv[i] + strlen("--interface=")),
"sml")) { "sml")) {
arguments->iface = SML_IFACE; g_args.iface = SML_IFACE;
} else { } else {
errorPrintReqArg3(argv[0], "--interface"); errorPrintReqArg3(argv[0], "--interface");
goto end_parse_command; goto end_parse_command;
...@@ -203,16 +202,16 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -203,16 +202,16 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} else if (0 == strncmp(argv[i], "-I", strlen("-I"))) { } else if (0 == strncmp(argv[i], "-I", strlen("-I"))) {
if (0 == if (0 ==
strcasecmp((char *)(argv[i] + strlen("-I")), "taosc")) { strcasecmp((char *)(argv[i] + strlen("-I")), "taosc")) {
arguments->iface = TAOSC_IFACE; g_args.iface = TAOSC_IFACE;
} else if (0 == strcasecmp((char *)(argv[i] + strlen("-I")), } else if (0 == strcasecmp((char *)(argv[i] + strlen("-I")),
"rest")) { "rest")) {
arguments->iface = REST_IFACE; g_args.iface = REST_IFACE;
} else if (0 == strcasecmp((char *)(argv[i] + strlen("-I")), } else if (0 == strcasecmp((char *)(argv[i] + strlen("-I")),
"stmt")) { "stmt")) {
arguments->iface = STMT_IFACE; g_args.iface = STMT_IFACE;
} else if (0 == strcasecmp((char *)(argv[i] + strlen("-I")), } else if (0 == strcasecmp((char *)(argv[i] + strlen("-I")),
"sml")) { "sml")) {
arguments->iface = SML_IFACE; g_args.iface = SML_IFACE;
} else { } else {
errorWrongValue(argv[0], "-I", errorWrongValue(argv[0], "-I",
(char *)(argv[i] + strlen("-I"))); (char *)(argv[i] + strlen("-I")));
...@@ -224,13 +223,13 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -224,13 +223,13 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
goto end_parse_command; goto end_parse_command;
} }
if (0 == strcasecmp(argv[i + 1], "taosc")) { if (0 == strcasecmp(argv[i + 1], "taosc")) {
arguments->iface = TAOSC_IFACE; g_args.iface = TAOSC_IFACE;
} else if (0 == strcasecmp(argv[i + 1], "rest")) { } else if (0 == strcasecmp(argv[i + 1], "rest")) {
arguments->iface = REST_IFACE; g_args.iface = REST_IFACE;
} else if (0 == strcasecmp(argv[i + 1], "stmt")) { } else if (0 == strcasecmp(argv[i + 1], "stmt")) {
arguments->iface = STMT_IFACE; g_args.iface = STMT_IFACE;
} else if (0 == strcasecmp(argv[i + 1], "sml")) { } else if (0 == strcasecmp(argv[i + 1], "sml")) {
arguments->iface = SML_IFACE; g_args.iface = SML_IFACE;
} else { } else {
errorWrongValue(argv[0], "--interface", argv[i + 1]); errorWrongValue(argv[0], "--interface", argv[i + 1]);
goto end_parse_command; goto end_parse_command;
...@@ -247,17 +246,17 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -247,17 +246,17 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg(argv[0], "u"); errorPrintReqArg(argv[0], "u");
goto end_parse_command; goto end_parse_command;
} }
arguments->user = argv[++i]; g_args.user = argv[++i];
} else if (0 == strncmp(argv[i], "-u", strlen("-u"))) { } else if (0 == strncmp(argv[i], "-u", strlen("-u"))) {
arguments->user = (char *)(argv[i++] + strlen("-u")); g_args.user = (char *)(argv[i++] + strlen("-u"));
} else if (0 == strncmp(argv[i], "--user=", strlen("--user="))) { } else if (0 == strncmp(argv[i], "--user=", strlen("--user="))) {
arguments->user = (char *)(argv[i++] + strlen("--user=")); g_args.user = (char *)(argv[i++] + strlen("--user="));
} else if (strlen("--user") == strlen(argv[i])) { } else if (strlen("--user") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg3(argv[0], "--user"); errorPrintReqArg3(argv[0], "--user");
goto end_parse_command; goto end_parse_command;
} }
arguments->user = argv[++i]; g_args.user = argv[++i];
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -268,12 +267,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -268,12 +267,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
(0 == strcmp(argv[i], "--password"))) { (0 == strcmp(argv[i], "--password"))) {
printf("Enter password: "); printf("Enter password: ");
taosSetConsoleEcho(false); taosSetConsoleEcho(false);
if (scanf("%s", arguments->password) > 1) { if (scanf("%s", g_args.password) > 1) {
fprintf(stderr, "password read error!\n"); fprintf(stderr, "password read error!\n");
} }
taosSetConsoleEcho(true); taosSetConsoleEcho(true);
} else { } else {
tstrncpy(arguments->password, (char *)(argv[i] + 2), tstrncpy(g_args.password, (char *)(argv[i] + 2),
SHELL_MAX_PASSWORD_LEN); SHELL_MAX_PASSWORD_LEN);
} }
} else if ((0 == strncmp(argv[i], "-o", strlen("-o"))) || } else if ((0 == strncmp(argv[i], "-o", strlen("-o"))) ||
...@@ -283,19 +282,18 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -283,19 +282,18 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg3(argv[0], "--output"); errorPrintReqArg3(argv[0], "--output");
goto end_parse_command; goto end_parse_command;
} }
arguments->output_file = argv[++i]; g_args.output_file = argv[++i];
} else if (0 == } else if (0 ==
strncmp(argv[i], "--output=", strlen("--output="))) { strncmp(argv[i], "--output=", strlen("--output="))) {
arguments->output_file = g_args.output_file = (char *)(argv[i++] + strlen("--output="));
(char *)(argv[i++] + strlen("--output="));
} else if (0 == strncmp(argv[i], "-o", strlen("-o"))) { } else if (0 == strncmp(argv[i], "-o", strlen("-o"))) {
arguments->output_file = (char *)(argv[i++] + strlen("-o")); g_args.output_file = (char *)(argv[i++] + strlen("-o"));
} else if (strlen("--output") == strlen(argv[i])) { } else if (strlen("--output") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg3(argv[0], "--output"); errorPrintReqArg3(argv[0], "--output");
goto end_parse_command; goto end_parse_command;
} }
arguments->output_file = argv[++i]; g_args.output_file = argv[++i];
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -308,19 +306,18 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -308,19 +306,18 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg(argv[0], "s"); errorPrintReqArg(argv[0], "s");
goto end_parse_command; goto end_parse_command;
} }
arguments->sqlFile = argv[++i]; g_args.sqlFile = argv[++i];
} else if (0 == } else if (0 ==
strncmp(argv[i], "--sql-file=", strlen("--sql-file="))) { strncmp(argv[i], "--sql-file=", strlen("--sql-file="))) {
arguments->sqlFile = g_args.sqlFile = (char *)(argv[i++] + strlen("--sql-file="));
(char *)(argv[i++] + strlen("--sql-file="));
} else if (0 == strncmp(argv[i], "-s", strlen("-s"))) { } else if (0 == strncmp(argv[i], "-s", strlen("-s"))) {
arguments->sqlFile = (char *)(argv[i++] + strlen("-s")); g_args.sqlFile = (char *)(argv[i++] + strlen("-s"));
} else if (strlen("--sql-file") == strlen(argv[i])) { } else if (strlen("--sql-file") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg3(argv[0], "--sql-file"); errorPrintReqArg3(argv[0], "--sql-file");
goto end_parse_command; goto end_parse_command;
} }
arguments->sqlFile = argv[++i]; g_args.sqlFile = argv[++i];
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -336,12 +333,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -336,12 +333,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "q"); errorPrintReqArg2(argv[0], "q");
goto end_parse_command; goto end_parse_command;
} }
arguments->async_mode = atoi(argv[++i]); g_args.async_mode = atoi(argv[++i]);
} else if (0 == strncmp(argv[i], } else if (0 == strncmp(argv[i],
"--query-mode=", strlen("--query-mode="))) { "--query-mode=", strlen("--query-mode="))) {
if (isStringNumber( if (isStringNumber(
(char *)(argv[i] + strlen("--query-mode=")))) { (char *)(argv[i] + strlen("--query-mode=")))) {
arguments->async_mode = g_args.async_mode =
atoi((char *)(argv[i] + strlen("--query-mode="))); atoi((char *)(argv[i] + strlen("--query-mode=")));
} else { } else {
errorPrintReqArg2(argv[0], "--query-mode"); errorPrintReqArg2(argv[0], "--query-mode");
...@@ -349,8 +346,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -349,8 +346,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-q", strlen("-q"))) { } else if (0 == strncmp(argv[i], "-q", strlen("-q"))) {
if (isStringNumber((char *)(argv[i] + strlen("-q")))) { if (isStringNumber((char *)(argv[i] + strlen("-q")))) {
arguments->async_mode = g_args.async_mode = atoi((char *)(argv[i] + strlen("-q")));
atoi((char *)(argv[i] + strlen("-q")));
} else { } else {
errorPrintReqArg2(argv[0], "-q"); errorPrintReqArg2(argv[0], "-q");
goto end_parse_command; goto end_parse_command;
...@@ -363,7 +359,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -363,7 +359,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--query-mode"); errorPrintReqArg2(argv[0], "--query-mode");
goto end_parse_command; goto end_parse_command;
} }
arguments->async_mode = atoi(argv[++i]); g_args.async_mode = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -378,11 +374,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -378,11 +374,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "T"); errorPrintReqArg2(argv[0], "T");
goto end_parse_command; goto end_parse_command;
} }
arguments->nthreads = atoi(argv[++i]); g_args.nthreads = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--threads=", strlen("--threads="))) { strncmp(argv[i], "--threads=", strlen("--threads="))) {
if (isStringNumber((char *)(argv[i] + strlen("--threads=")))) { if (isStringNumber((char *)(argv[i] + strlen("--threads=")))) {
arguments->nthreads = g_args.nthreads =
atoi((char *)(argv[i] + strlen("--threads="))); atoi((char *)(argv[i] + strlen("--threads=")));
} else { } else {
errorPrintReqArg2(argv[0], "--threads"); errorPrintReqArg2(argv[0], "--threads");
...@@ -390,8 +386,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -390,8 +386,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-T", strlen("-T"))) { } else if (0 == strncmp(argv[i], "-T", strlen("-T"))) {
if (isStringNumber((char *)(argv[i] + strlen("-T")))) { if (isStringNumber((char *)(argv[i] + strlen("-T")))) {
arguments->nthreads = g_args.nthreads = atoi((char *)(argv[i] + strlen("-T")));
atoi((char *)(argv[i] + strlen("-T")));
} else { } else {
errorPrintReqArg2(argv[0], "-T"); errorPrintReqArg2(argv[0], "-T");
goto end_parse_command; goto end_parse_command;
...@@ -404,7 +399,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -404,7 +399,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--threads"); errorPrintReqArg2(argv[0], "--threads");
goto end_parse_command; goto end_parse_command;
} }
arguments->nthreads = atoi(argv[++i]); g_args.nthreads = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -420,12 +415,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -420,12 +415,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "i"); errorPrintReqArg2(argv[0], "i");
goto end_parse_command; goto end_parse_command;
} }
arguments->insert_interval = atoi(argv[++i]); g_args.insert_interval = atoi(argv[++i]);
} else if (0 == strncmp(argv[i], "--insert-interval=", } else if (0 == strncmp(argv[i], "--insert-interval=",
strlen("--insert-interval="))) { strlen("--insert-interval="))) {
if (isStringNumber( if (isStringNumber(
(char *)(argv[i] + strlen("--insert-interval=")))) { (char *)(argv[i] + strlen("--insert-interval=")))) {
arguments->insert_interval = g_args.insert_interval =
atoi((char *)(argv[i] + strlen("--insert-interval="))); atoi((char *)(argv[i] + strlen("--insert-interval=")));
} else { } else {
errorPrintReqArg3(argv[0], "--insert-innterval"); errorPrintReqArg3(argv[0], "--insert-innterval");
...@@ -433,7 +428,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -433,7 +428,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-i", strlen("-i"))) { } else if (0 == strncmp(argv[i], "-i", strlen("-i"))) {
if (isStringNumber((char *)(argv[i] + strlen("-i")))) { if (isStringNumber((char *)(argv[i] + strlen("-i")))) {
arguments->insert_interval = g_args.insert_interval =
atoi((char *)(argv[i] + strlen("-i"))); atoi((char *)(argv[i] + strlen("-i")));
} else { } else {
errorPrintReqArg3(argv[0], "-i"); errorPrintReqArg3(argv[0], "-i");
...@@ -447,7 +442,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -447,7 +442,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--insert-interval"); errorPrintReqArg2(argv[0], "--insert-interval");
goto end_parse_command; goto end_parse_command;
} }
arguments->insert_interval = atoi(argv[++i]); g_args.insert_interval = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -463,12 +458,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -463,12 +458,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "S"); errorPrintReqArg2(argv[0], "S");
goto end_parse_command; goto end_parse_command;
} }
arguments->async_mode = atoi(argv[++i]); g_args.async_mode = atoi(argv[++i]);
} else if (0 == strncmp(argv[i], } else if (0 == strncmp(argv[i],
"--time-step=", strlen("--time-step="))) { "--time-step=", strlen("--time-step="))) {
if (isStringNumber( if (isStringNumber(
(char *)(argv[i] + strlen("--time-step=")))) { (char *)(argv[i] + strlen("--time-step=")))) {
arguments->async_mode = g_args.async_mode =
atoi((char *)(argv[i] + strlen("--time-step="))); atoi((char *)(argv[i] + strlen("--time-step=")));
} else { } else {
errorPrintReqArg2(argv[0], "--time-step"); errorPrintReqArg2(argv[0], "--time-step");
...@@ -476,8 +471,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -476,8 +471,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-S", strlen("-S"))) { } else if (0 == strncmp(argv[i], "-S", strlen("-S"))) {
if (isStringNumber((char *)(argv[i] + strlen("-S")))) { if (isStringNumber((char *)(argv[i] + strlen("-S")))) {
arguments->async_mode = g_args.async_mode = atoi((char *)(argv[i] + strlen("-S")));
atoi((char *)(argv[i] + strlen("-S")));
} else { } else {
errorPrintReqArg2(argv[0], "-S"); errorPrintReqArg2(argv[0], "-S");
goto end_parse_command; goto end_parse_command;
...@@ -490,7 +484,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -490,7 +484,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--time-step"); errorPrintReqArg2(argv[0], "--time-step");
goto end_parse_command; goto end_parse_command;
} }
arguments->async_mode = atoi(argv[++i]); g_args.async_mode = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -501,7 +495,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -501,7 +495,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrint("%s", "\n\t-qt need a number following!\n"); errorPrint("%s", "\n\t-qt need a number following!\n");
goto end_parse_command; goto end_parse_command;
} }
arguments->query_times = atoi(argv[++i]); g_args.query_times = atoi(argv[++i]);
} else if ((0 == strncmp(argv[i], "-B", strlen("-B"))) || } else if ((0 == strncmp(argv[i], "-B", strlen("-B"))) ||
(0 == strncmp(argv[i], "--interlace-rows", (0 == strncmp(argv[i], "--interlace-rows",
strlen("--interlace-rows")))) { strlen("--interlace-rows")))) {
...@@ -513,12 +507,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -513,12 +507,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "B"); errorPrintReqArg2(argv[0], "B");
goto end_parse_command; goto end_parse_command;
} }
arguments->interlaceRows = atoi(argv[++i]); g_args.interlaceRows = atoi(argv[++i]);
} else if (0 == strncmp(argv[i], "--interlace-rows=", } else if (0 == strncmp(argv[i], "--interlace-rows=",
strlen("--interlace-rows="))) { strlen("--interlace-rows="))) {
if (isStringNumber( if (isStringNumber(
(char *)(argv[i] + strlen("--interlace-rows=")))) { (char *)(argv[i] + strlen("--interlace-rows=")))) {
arguments->interlaceRows = g_args.interlaceRows =
atoi((char *)(argv[i] + strlen("--interlace-rows="))); atoi((char *)(argv[i] + strlen("--interlace-rows=")));
} else { } else {
errorPrintReqArg2(argv[0], "--interlace-rows"); errorPrintReqArg2(argv[0], "--interlace-rows");
...@@ -526,7 +520,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -526,7 +520,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-B", strlen("-B"))) { } else if (0 == strncmp(argv[i], "-B", strlen("-B"))) {
if (isStringNumber((char *)(argv[i] + strlen("-B")))) { if (isStringNumber((char *)(argv[i] + strlen("-B")))) {
arguments->interlaceRows = g_args.interlaceRows =
atoi((char *)(argv[i] + strlen("-B"))); atoi((char *)(argv[i] + strlen("-B")));
} else { } else {
errorPrintReqArg2(argv[0], "-B"); errorPrintReqArg2(argv[0], "-B");
...@@ -540,7 +534,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -540,7 +534,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--interlace-rows"); errorPrintReqArg2(argv[0], "--interlace-rows");
goto end_parse_command; goto end_parse_command;
} }
arguments->interlaceRows = atoi(argv[++i]); g_args.interlaceRows = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -555,12 +549,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -555,12 +549,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "r"); errorPrintReqArg2(argv[0], "r");
goto end_parse_command; goto end_parse_command;
} }
arguments->reqPerReq = atoi(argv[++i]); g_args.reqPerReq = atoi(argv[++i]);
} else if (0 == strncmp(argv[i], "--rec-per-req=", } else if (0 == strncmp(argv[i], "--rec-per-req=",
strlen("--rec-per-req="))) { strlen("--rec-per-req="))) {
if (isStringNumber( if (isStringNumber(
(char *)(argv[i] + strlen("--rec-per-req=")))) { (char *)(argv[i] + strlen("--rec-per-req=")))) {
arguments->reqPerReq = g_args.reqPerReq =
atoi((char *)(argv[i] + strlen("--rec-per-req="))); atoi((char *)(argv[i] + strlen("--rec-per-req=")));
} else { } else {
errorPrintReqArg2(argv[0], "--rec-per-req"); errorPrintReqArg2(argv[0], "--rec-per-req");
...@@ -568,8 +562,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -568,8 +562,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-r", strlen("-r"))) { } else if (0 == strncmp(argv[i], "-r", strlen("-r"))) {
if (isStringNumber((char *)(argv[i] + strlen("-r")))) { if (isStringNumber((char *)(argv[i] + strlen("-r")))) {
arguments->reqPerReq = g_args.reqPerReq = atoi((char *)(argv[i] + strlen("-r")));
atoi((char *)(argv[i] + strlen("-r")));
} else { } else {
errorPrintReqArg2(argv[0], "-r"); errorPrintReqArg2(argv[0], "-r");
goto end_parse_command; goto end_parse_command;
...@@ -582,7 +575,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -582,7 +575,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--rec-per-req"); errorPrintReqArg2(argv[0], "--rec-per-req");
goto end_parse_command; goto end_parse_command;
} }
arguments->reqPerReq = atoi(argv[++i]); g_args.reqPerReq = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -597,11 +590,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -597,11 +590,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "t"); errorPrintReqArg2(argv[0], "t");
goto end_parse_command; goto end_parse_command;
} }
arguments->ntables = atoi(argv[++i]); g_args.ntables = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--tables=", strlen("--tables="))) { strncmp(argv[i], "--tables=", strlen("--tables="))) {
if (isStringNumber((char *)(argv[i] + strlen("--tables=")))) { if (isStringNumber((char *)(argv[i] + strlen("--tables=")))) {
arguments->ntables = g_args.ntables =
atoi((char *)(argv[i] + strlen("--tables="))); atoi((char *)(argv[i] + strlen("--tables=")));
} else { } else {
errorPrintReqArg2(argv[0], "--tables"); errorPrintReqArg2(argv[0], "--tables");
...@@ -609,7 +602,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -609,7 +602,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-t", strlen("-t"))) { } else if (0 == strncmp(argv[i], "-t", strlen("-t"))) {
if (isStringNumber((char *)(argv[i] + strlen("-t")))) { if (isStringNumber((char *)(argv[i] + strlen("-t")))) {
arguments->ntables = atoi((char *)(argv[i] + strlen("-t"))); g_args.ntables = atoi((char *)(argv[i] + strlen("-t")));
} else { } else {
errorPrintReqArg2(argv[0], "-t"); errorPrintReqArg2(argv[0], "-t");
goto end_parse_command; goto end_parse_command;
...@@ -622,13 +615,13 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -622,13 +615,13 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--tables"); errorPrintReqArg2(argv[0], "--tables");
goto end_parse_command; goto end_parse_command;
} }
arguments->ntables = atoi(argv[++i]); g_args.ntables = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
} }
g_totalChildTables = arguments->ntables; g_totalChildTables = g_args.ntables;
} else if ((0 == strncmp(argv[i], "-n", strlen("-n"))) || } else if ((0 == strncmp(argv[i], "-n", strlen("-n"))) ||
(0 == strncmp(argv[i], "--records", strlen("--records")))) { (0 == strncmp(argv[i], "--records", strlen("--records")))) {
if (2 == strlen(argv[i])) { if (2 == strlen(argv[i])) {
...@@ -639,11 +632,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -639,11 +632,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "n"); errorPrintReqArg2(argv[0], "n");
goto end_parse_command; goto end_parse_command;
} }
arguments->insertRows = atoi(argv[++i]); g_args.insertRows = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--records=", strlen("--records="))) { strncmp(argv[i], "--records=", strlen("--records="))) {
if (isStringNumber((char *)(argv[i] + strlen("--records=")))) { if (isStringNumber((char *)(argv[i] + strlen("--records=")))) {
arguments->insertRows = g_args.insertRows =
atoi((char *)(argv[i] + strlen("--records="))); atoi((char *)(argv[i] + strlen("--records=")));
} else { } else {
errorPrintReqArg2(argv[0], "--records"); errorPrintReqArg2(argv[0], "--records");
...@@ -651,8 +644,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -651,8 +644,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-n", strlen("-n"))) { } else if (0 == strncmp(argv[i], "-n", strlen("-n"))) {
if (isStringNumber((char *)(argv[i] + strlen("-n")))) { if (isStringNumber((char *)(argv[i] + strlen("-n")))) {
arguments->insertRows = g_args.insertRows = atoi((char *)(argv[i] + strlen("-n")));
atoi((char *)(argv[i] + strlen("-n")));
} else { } else {
errorPrintReqArg2(argv[0], "-n"); errorPrintReqArg2(argv[0], "-n");
goto end_parse_command; goto end_parse_command;
...@@ -665,7 +657,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -665,7 +657,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--records"); errorPrintReqArg2(argv[0], "--records");
goto end_parse_command; goto end_parse_command;
} }
arguments->insertRows = atoi(argv[++i]); g_args.insertRows = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -678,26 +670,25 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -678,26 +670,25 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg(argv[0], "d"); errorPrintReqArg(argv[0], "d");
goto end_parse_command; goto end_parse_command;
} }
arguments->database = argv[++i]; g_args.database = argv[++i];
} else if (0 == } else if (0 ==
strncmp(argv[i], "--database=", strlen("--database="))) { strncmp(argv[i], "--database=", strlen("--database="))) {
arguments->output_file = g_args.output_file = (char *)(argv[i] + strlen("--database="));
(char *)(argv[i] + strlen("--database="));
} else if (0 == strncmp(argv[i], "-d", strlen("-d"))) { } else if (0 == strncmp(argv[i], "-d", strlen("-d"))) {
arguments->output_file = (char *)(argv[i] + strlen("-d")); g_args.output_file = (char *)(argv[i] + strlen("-d"));
} else if (strlen("--database") == strlen(argv[i])) { } else if (strlen("--database") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg3(argv[0], "--database"); errorPrintReqArg3(argv[0], "--database");
goto end_parse_command; goto end_parse_command;
} }
arguments->database = argv[++i]; g_args.database = argv[++i];
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
} }
} else if ((0 == strncmp(argv[i], "-l", strlen("-l"))) || } else if ((0 == strncmp(argv[i], "-l", strlen("-l"))) ||
(0 == strncmp(argv[i], "--columns", strlen("--columns")))) { (0 == strncmp(argv[i], "--columns", strlen("--columns")))) {
arguments->demo_mode = false; g_args.demo_mode = false;
if (2 == strlen(argv[i])) { if (2 == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg(argv[0], "l"); errorPrintReqArg(argv[0], "l");
...@@ -706,11 +697,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -706,11 +697,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "l"); errorPrintReqArg2(argv[0], "l");
goto end_parse_command; goto end_parse_command;
} }
arguments->columnCount = atoi(argv[++i]); g_args.columnCount = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--columns=", strlen("--columns="))) { strncmp(argv[i], "--columns=", strlen("--columns="))) {
if (isStringNumber((char *)(argv[i] + strlen("--columns=")))) { if (isStringNumber((char *)(argv[i] + strlen("--columns=")))) {
arguments->columnCount = g_args.columnCount =
atoi((char *)(argv[i] + strlen("--columns="))); atoi((char *)(argv[i] + strlen("--columns=")));
} else { } else {
errorPrintReqArg2(argv[0], "--columns"); errorPrintReqArg2(argv[0], "--columns");
...@@ -718,8 +709,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -718,8 +709,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-l", strlen("-l"))) { } else if (0 == strncmp(argv[i], "-l", strlen("-l"))) {
if (isStringNumber((char *)(argv[i] + strlen("-l")))) { if (isStringNumber((char *)(argv[i] + strlen("-l")))) {
arguments->columnCount = g_args.columnCount = atoi((char *)(argv[i] + strlen("-l")));
atoi((char *)(argv[i] + strlen("-l")));
} else { } else {
errorPrintReqArg2(argv[0], "-l"); errorPrintReqArg2(argv[0], "-l");
goto end_parse_command; goto end_parse_command;
...@@ -732,33 +722,32 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -732,33 +722,32 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--columns"); errorPrintReqArg2(argv[0], "--columns");
goto end_parse_command; goto end_parse_command;
} }
arguments->columnCount = atoi(argv[++i]); g_args.columnCount = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
} }
if (arguments->columnCount > MAX_NUM_COLUMNS) { if (g_args.columnCount > MAX_NUM_COLUMNS) {
printf("WARNING: max acceptable columns count is %d\n", printf("WARNING: max acceptable columns count is %d\n",
MAX_NUM_COLUMNS); MAX_NUM_COLUMNS);
prompt(); prompt();
arguments->columnCount = MAX_NUM_COLUMNS; g_args.columnCount = MAX_NUM_COLUMNS;
} }
for (int col = DEFAULT_DATATYPE_NUM; col < arguments->columnCount; for (int col = DEFAULT_DATATYPE_NUM; col < g_args.columnCount;
col++) { col++) {
arguments->dataType[col] = "INT"; g_args.dataType[col] = "INT";
arguments->data_type[col] = TSDB_DATA_TYPE_INT; g_args.data_type[col] = TSDB_DATA_TYPE_INT;
} }
for (int col = arguments->columnCount; col < MAX_NUM_COLUMNS; for (int col = g_args.columnCount; col < MAX_NUM_COLUMNS; col++) {
col++) { g_args.dataType[col] = NULL;
arguments->dataType[col] = NULL; g_args.data_type[col] = TSDB_DATA_TYPE_NULL;
arguments->data_type[col] = TSDB_DATA_TYPE_NULL;
} }
} else if ((0 == strncmp(argv[i], "-b", strlen("-b"))) || } else if ((0 == strncmp(argv[i], "-b", strlen("-b"))) ||
(0 == (0 ==
strncmp(argv[i], "--data-type", strlen("--data-type")))) { strncmp(argv[i], "--data-type", strlen("--data-type")))) {
arguments->demo_mode = false; g_args.demo_mode = false;
char *dataType; char *dataType;
if (2 == strlen(argv[i])) { if (2 == strlen(argv[i])) {
...@@ -804,44 +793,44 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -804,44 +793,44 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrint("%s", "-b: Invalid data_type!\n"); errorPrint("%s", "-b: Invalid data_type!\n");
goto end_parse_command; goto end_parse_command;
} }
arguments->dataType[0] = dataType;
if (0 == strcasecmp(dataType, "INT")) { if (0 == strcasecmp(dataType, "INT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_INT; g_args.data_type[0] = TSDB_DATA_TYPE_INT;
} else if (0 == strcasecmp(dataType, "TINYINT")) { } else if (0 == strcasecmp(dataType, "TINYINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_TINYINT; g_args.data_type[0] = TSDB_DATA_TYPE_TINYINT;
} else if (0 == strcasecmp(dataType, "SMALLINT")) { } else if (0 == strcasecmp(dataType, "SMALLINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_SMALLINT; g_args.data_type[0] = TSDB_DATA_TYPE_SMALLINT;
} else if (0 == strcasecmp(dataType, "BIGINT")) { } else if (0 == strcasecmp(dataType, "BIGINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_BIGINT; g_args.data_type[0] = TSDB_DATA_TYPE_BIGINT;
} else if (0 == strcasecmp(dataType, "FLOAT")) { } else if (0 == strcasecmp(dataType, "FLOAT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_FLOAT; g_args.data_type[0] = TSDB_DATA_TYPE_FLOAT;
} else if (0 == strcasecmp(dataType, "DOUBLE")) { } else if (0 == strcasecmp(dataType, "DOUBLE")) {
arguments->data_type[0] = TSDB_DATA_TYPE_DOUBLE; g_args.data_type[0] = TSDB_DATA_TYPE_DOUBLE;
} else if (1 == regexMatch(dataType, } else if (1 == regexMatch(dataType,
"^BINARY(\\([1-9][0-9]*\\))?$", "^BINARY(\\([1-9][0-9]*\\))?$",
REG_ICASE | REG_EXTENDED)) { REG_ICASE | REG_EXTENDED)) {
arguments->data_type[0] = TSDB_DATA_TYPE_BINARY; g_args.data_type[0] = TSDB_DATA_TYPE_BINARY;
} else if (1 == regexMatch(dataType, } else if (1 == regexMatch(dataType,
"^NCHAR(\\([1-9][0-9]*\\))?$", "^NCHAR(\\([1-9][0-9]*\\))?$",
REG_ICASE | REG_EXTENDED)) { REG_ICASE | REG_EXTENDED)) {
arguments->data_type[0] = TSDB_DATA_TYPE_NCHAR; g_args.data_type[0] = TSDB_DATA_TYPE_NCHAR;
} else if (0 == strcasecmp(dataType, "BOOL")) { } else if (0 == strcasecmp(dataType, "BOOL")) {
arguments->data_type[0] = TSDB_DATA_TYPE_BOOL; g_args.data_type[0] = TSDB_DATA_TYPE_BOOL;
} else if (0 == strcasecmp(dataType, "TIMESTAMP")) { } else if (0 == strcasecmp(dataType, "TIMESTAMP")) {
arguments->data_type[0] = TSDB_DATA_TYPE_TIMESTAMP; g_args.data_type[0] = TSDB_DATA_TYPE_TIMESTAMP;
} else if (0 == strcasecmp(dataType, "UTINYINT")) { } else if (0 == strcasecmp(dataType, "UTINYINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_UTINYINT; g_args.data_type[0] = TSDB_DATA_TYPE_UTINYINT;
} else if (0 == strcasecmp(dataType, "USMALLINT")) { } else if (0 == strcasecmp(dataType, "USMALLINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_USMALLINT; g_args.data_type[0] = TSDB_DATA_TYPE_USMALLINT;
} else if (0 == strcasecmp(dataType, "UINT")) { } else if (0 == strcasecmp(dataType, "UINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_UINT; g_args.data_type[0] = TSDB_DATA_TYPE_UINT;
} else if (0 == strcasecmp(dataType, "UBIGINT")) { } else if (0 == strcasecmp(dataType, "UBIGINT")) {
arguments->data_type[0] = TSDB_DATA_TYPE_UBIGINT; g_args.data_type[0] = TSDB_DATA_TYPE_UBIGINT;
} else { } else {
arguments->data_type[0] = TSDB_DATA_TYPE_NULL; g_args.data_type[0] = TSDB_DATA_TYPE_NULL;
} }
arguments->dataType[1] = NULL; g_args.dataType[0] = dataType;
arguments->data_type[1] = TSDB_DATA_TYPE_NULL; g_args.dataType[1] = NULL;
g_args.data_type[1] = TSDB_DATA_TYPE_NULL;
} else { } else {
// more than one col // more than one col
int index = 0; int index = 0;
...@@ -870,47 +859,47 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -870,47 +859,47 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
if (0 == strcasecmp(token, "INT")) { if (0 == strcasecmp(token, "INT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_INT; g_args.data_type[index] = TSDB_DATA_TYPE_INT;
} else if (0 == strcasecmp(token, "FLOAT")) { } else if (0 == strcasecmp(token, "FLOAT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_FLOAT; g_args.data_type[index] = TSDB_DATA_TYPE_FLOAT;
} else if (0 == strcasecmp(token, "SMALLINT")) { } else if (0 == strcasecmp(token, "SMALLINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_SMALLINT; g_args.data_type[index] = TSDB_DATA_TYPE_SMALLINT;
} else if (0 == strcasecmp(token, "BIGINT")) { } else if (0 == strcasecmp(token, "BIGINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_BIGINT; g_args.data_type[index] = TSDB_DATA_TYPE_BIGINT;
} else if (0 == strcasecmp(token, "DOUBLE")) { } else if (0 == strcasecmp(token, "DOUBLE")) {
arguments->data_type[index] = TSDB_DATA_TYPE_DOUBLE; g_args.data_type[index] = TSDB_DATA_TYPE_DOUBLE;
} else if (0 == strcasecmp(token, "TINYINT")) { } else if (0 == strcasecmp(token, "TINYINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_TINYINT; g_args.data_type[index] = TSDB_DATA_TYPE_TINYINT;
} else if (1 == regexMatch(token, } else if (1 == regexMatch(token,
"^BINARY(\\([1-9][0-9]*\\))?$", "^BINARY(\\([1-9][0-9]*\\))?$",
REG_ICASE | REG_EXTENDED)) { REG_ICASE | REG_EXTENDED)) {
arguments->data_type[index] = TSDB_DATA_TYPE_BINARY; g_args.data_type[index] = TSDB_DATA_TYPE_BINARY;
} else if (1 == regexMatch(token, } else if (1 == regexMatch(token,
"^NCHAR(\\([1-9][0-9]*\\))?$", "^NCHAR(\\([1-9][0-9]*\\))?$",
REG_ICASE | REG_EXTENDED)) { REG_ICASE | REG_EXTENDED)) {
arguments->data_type[index] = TSDB_DATA_TYPE_NCHAR; g_args.data_type[index] = TSDB_DATA_TYPE_NCHAR;
} else if (0 == strcasecmp(token, "BOOL")) { } else if (0 == strcasecmp(token, "BOOL")) {
arguments->data_type[index] = TSDB_DATA_TYPE_BOOL; g_args.data_type[index] = TSDB_DATA_TYPE_BOOL;
} else if (0 == strcasecmp(token, "TIMESTAMP")) { } else if (0 == strcasecmp(token, "TIMESTAMP")) {
arguments->data_type[index] = TSDB_DATA_TYPE_TIMESTAMP; g_args.data_type[index] = TSDB_DATA_TYPE_TIMESTAMP;
} else if (0 == strcasecmp(token, "UTINYINT")) { } else if (0 == strcasecmp(token, "UTINYINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_UTINYINT; g_args.data_type[index] = TSDB_DATA_TYPE_UTINYINT;
} else if (0 == strcasecmp(token, "USMALLINT")) { } else if (0 == strcasecmp(token, "USMALLINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_USMALLINT; g_args.data_type[index] = TSDB_DATA_TYPE_USMALLINT;
} else if (0 == strcasecmp(token, "UINT")) { } else if (0 == strcasecmp(token, "UINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_UINT; g_args.data_type[index] = TSDB_DATA_TYPE_UINT;
} else if (0 == strcasecmp(token, "UBIGINT")) { } else if (0 == strcasecmp(token, "UBIGINT")) {
arguments->data_type[index] = TSDB_DATA_TYPE_UBIGINT; g_args.data_type[index] = TSDB_DATA_TYPE_UBIGINT;
} else { } else {
arguments->data_type[index] = TSDB_DATA_TYPE_NULL; g_args.data_type[index] = TSDB_DATA_TYPE_NULL;
} }
arguments->dataType[index] = token; g_args.dataType[index] = token;
index++; index++;
token = strsep(&running, ","); token = strsep(&running, ",");
if (index >= MAX_NUM_COLUMNS) break; if (index >= MAX_NUM_COLUMNS) break;
} }
arguments->dataType[index] = NULL; g_args.dataType[index] = NULL;
arguments->data_type[index] = TSDB_DATA_TYPE_NULL; g_args.data_type[index] = TSDB_DATA_TYPE_NULL;
} }
} else if ((0 == strncmp(argv[i], "-w", strlen("-w"))) || } else if ((0 == strncmp(argv[i], "-w", strlen("-w"))) ||
(0 == (0 ==
...@@ -923,11 +912,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -923,11 +912,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "w"); errorPrintReqArg2(argv[0], "w");
goto end_parse_command; goto end_parse_command;
} }
arguments->binwidth = atoi(argv[++i]); g_args.binwidth = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--binwidth=", strlen("--binwidth="))) { strncmp(argv[i], "--binwidth=", strlen("--binwidth="))) {
if (isStringNumber((char *)(argv[i] + strlen("--binwidth=")))) { if (isStringNumber((char *)(argv[i] + strlen("--binwidth=")))) {
arguments->binwidth = g_args.binwidth =
atoi((char *)(argv[i] + strlen("--binwidth="))); atoi((char *)(argv[i] + strlen("--binwidth=")));
} else { } else {
errorPrintReqArg2(argv[0], "--binwidth"); errorPrintReqArg2(argv[0], "--binwidth");
...@@ -935,8 +924,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -935,8 +924,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-w", strlen("-w"))) { } else if (0 == strncmp(argv[i], "-w", strlen("-w"))) {
if (isStringNumber((char *)(argv[i] + strlen("-w")))) { if (isStringNumber((char *)(argv[i] + strlen("-w")))) {
arguments->binwidth = g_args.binwidth = atoi((char *)(argv[i] + strlen("-w")));
atoi((char *)(argv[i] + strlen("-w")));
} else { } else {
errorPrintReqArg2(argv[0], "-w"); errorPrintReqArg2(argv[0], "-w");
goto end_parse_command; goto end_parse_command;
...@@ -949,7 +937,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -949,7 +937,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--binwidth"); errorPrintReqArg2(argv[0], "--binwidth");
goto end_parse_command; goto end_parse_command;
} }
arguments->binwidth = atoi(argv[++i]); g_args.binwidth = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -962,19 +950,19 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -962,19 +950,19 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg(argv[0], "m"); errorPrintReqArg(argv[0], "m");
goto end_parse_command; goto end_parse_command;
} }
arguments->tb_prefix = argv[++i]; g_args.tb_prefix = argv[++i];
} else if (0 == strncmp(argv[i], "--table-prefix=", } else if (0 == strncmp(argv[i], "--table-prefix=",
strlen("--table-prefix="))) { strlen("--table-prefix="))) {
arguments->tb_prefix = g_args.tb_prefix =
(char *)(argv[i] + strlen("--table-prefix=")); (char *)(argv[i] + strlen("--table-prefix="));
} else if (0 == strncmp(argv[i], "-m", strlen("-m"))) { } else if (0 == strncmp(argv[i], "-m", strlen("-m"))) {
arguments->tb_prefix = (char *)(argv[i] + strlen("-m")); g_args.tb_prefix = (char *)(argv[i] + strlen("-m"));
} else if (strlen("--table-prefix") == strlen(argv[i])) { } else if (strlen("--table-prefix") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
errorPrintReqArg3(argv[0], "--table-prefix"); errorPrintReqArg3(argv[0], "--table-prefix");
goto end_parse_command; goto end_parse_command;
} }
arguments->tb_prefix = argv[++i]; g_args.tb_prefix = argv[++i];
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -982,25 +970,25 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -982,25 +970,25 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} else if ((0 == strncmp(argv[i], "-E", strlen("-E"))) || } else if ((0 == strncmp(argv[i], "-E", strlen("-E"))) ||
(0 == strncmp(argv[i], "--escape-character", (0 == strncmp(argv[i], "--escape-character",
strlen("--escape-character")))) { strlen("--escape-character")))) {
arguments->escapeChar = true; g_args.escapeChar = true;
} else if ((strcmp(argv[i], "-N") == 0) || } else if ((strcmp(argv[i], "-N") == 0) ||
(0 == strcmp(argv[i], "--normal-table"))) { (0 == strcmp(argv[i], "--normal-table"))) {
arguments->demo_mode = false; g_args.demo_mode = false;
arguments->use_metric = false; g_args.use_metric = false;
} else if ((strcmp(argv[i], "-M") == 0) || } else if ((strcmp(argv[i], "-M") == 0) ||
(0 == strcmp(argv[i], "--random"))) { (0 == strcmp(argv[i], "--random"))) {
arguments->demo_mode = false; g_args.demo_mode = false;
} else if ((strcmp(argv[i], "-x") == 0) || } else if ((strcmp(argv[i], "-x") == 0) ||
(0 == strcmp(argv[i], "--aggr-func"))) { (0 == strcmp(argv[i], "--aggr-func"))) {
arguments->aggr_func = true; g_args.aggr_func = true;
} else if ((strcmp(argv[i], "-y") == 0) || } else if ((strcmp(argv[i], "-y") == 0) ||
(0 == strcmp(argv[i], "--answer-yes"))) { (0 == strcmp(argv[i], "--answer-yes"))) {
arguments->answer_yes = true; g_args.answer_yes = true;
} else if ((strcmp(argv[i], "-g") == 0) || } else if ((strcmp(argv[i], "-g") == 0) ||
(0 == strcmp(argv[i], "--debug"))) { (0 == strcmp(argv[i], "--debug"))) {
arguments->debug_print = true; g_args.debug_print = true;
} else if (strcmp(argv[i], "-gg") == 0) { } else if (strcmp(argv[i], "-gg") == 0) {
arguments->verbose_print = true; g_args.verbose_print = true;
} else if ((0 == strncmp(argv[i], "-R", strlen("-R"))) || } else if ((0 == strncmp(argv[i], "-R", strlen("-R"))) ||
(0 == strncmp(argv[i], "--disorder-range", (0 == strncmp(argv[i], "--disorder-range",
strlen("--disorder-range")))) { strlen("--disorder-range")))) {
...@@ -1012,12 +1000,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1012,12 +1000,12 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "R"); errorPrintReqArg2(argv[0], "R");
goto end_parse_command; goto end_parse_command;
} }
arguments->disorderRange = atoi(argv[++i]); g_args.disorderRange = atoi(argv[++i]);
} else if (0 == strncmp(argv[i], "--disorder-range=", } else if (0 == strncmp(argv[i], "--disorder-range=",
strlen("--disorder-range="))) { strlen("--disorder-range="))) {
if (isStringNumber( if (isStringNumber(
(char *)(argv[i] + strlen("--disorder-range=")))) { (char *)(argv[i] + strlen("--disorder-range=")))) {
arguments->disorderRange = g_args.disorderRange =
atoi((char *)(argv[i] + strlen("--disorder-range="))); atoi((char *)(argv[i] + strlen("--disorder-range=")));
} else { } else {
errorPrintReqArg2(argv[0], "--disorder-range"); errorPrintReqArg2(argv[0], "--disorder-range");
...@@ -1025,17 +1013,17 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1025,17 +1013,17 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-R", strlen("-R"))) { } else if (0 == strncmp(argv[i], "-R", strlen("-R"))) {
if (isStringNumber((char *)(argv[i] + strlen("-R")))) { if (isStringNumber((char *)(argv[i] + strlen("-R")))) {
arguments->disorderRange = g_args.disorderRange =
atoi((char *)(argv[i] + strlen("-R"))); atoi((char *)(argv[i] + strlen("-R")));
} else { } else {
errorPrintReqArg2(argv[0], "-R"); errorPrintReqArg2(argv[0], "-R");
goto end_parse_command; goto end_parse_command;
} }
if (arguments->disorderRange < 0) { if (g_args.disorderRange < 0) {
errorPrint("Invalid disorder range %d, will be set to %d\n", errorPrint("Invalid disorder range %d, will be set to %d\n",
arguments->disorderRange, 1000); g_args.disorderRange, 1000);
arguments->disorderRange = 1000; g_args.disorderRange = 1000;
} }
} else if (strlen("--disorder-range") == strlen(argv[i])) { } else if (strlen("--disorder-range") == strlen(argv[i])) {
if (argc == i + 1) { if (argc == i + 1) {
...@@ -1045,7 +1033,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1045,7 +1033,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--disorder-range"); errorPrintReqArg2(argv[0], "--disorder-range");
goto end_parse_command; goto end_parse_command;
} }
arguments->disorderRange = atoi(argv[++i]); g_args.disorderRange = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
...@@ -1061,11 +1049,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1061,11 +1049,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "O"); errorPrintReqArg2(argv[0], "O");
goto end_parse_command; goto end_parse_command;
} }
arguments->disorderRatio = atoi(argv[++i]); g_args.disorderRatio = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--disorder=", strlen("--disorder="))) { strncmp(argv[i], "--disorder=", strlen("--disorder="))) {
if (isStringNumber((char *)(argv[i] + strlen("--disorder=")))) { if (isStringNumber((char *)(argv[i] + strlen("--disorder=")))) {
arguments->disorderRatio = g_args.disorderRatio =
atoi((char *)(argv[i] + strlen("--disorder="))); atoi((char *)(argv[i] + strlen("--disorder=")));
} else { } else {
errorPrintReqArg2(argv[0], "--disorder"); errorPrintReqArg2(argv[0], "--disorder");
...@@ -1073,7 +1061,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1073,7 +1061,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-O", strlen("-O"))) { } else if (0 == strncmp(argv[i], "-O", strlen("-O"))) {
if (isStringNumber((char *)(argv[i] + strlen("-O")))) { if (isStringNumber((char *)(argv[i] + strlen("-O")))) {
arguments->disorderRatio = g_args.disorderRatio =
atoi((char *)(argv[i] + strlen("-O"))); atoi((char *)(argv[i] + strlen("-O")));
} else { } else {
errorPrintReqArg2(argv[0], "-O"); errorPrintReqArg2(argv[0], "-O");
...@@ -1087,16 +1075,16 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1087,16 +1075,16 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--disorder"); errorPrintReqArg2(argv[0], "--disorder");
goto end_parse_command; goto end_parse_command;
} }
arguments->disorderRatio = atoi(argv[++i]); g_args.disorderRatio = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
} }
if (arguments->disorderRatio > 50) { if (g_args.disorderRatio > 50) {
errorPrint("Invalid disorder ratio %d, will be set to %d\n", errorPrint("Invalid disorder ratio %d, will be set to %d\n",
arguments->disorderRatio, 50); g_args.disorderRatio, 50);
arguments->disorderRatio = 50; g_args.disorderRatio = 50;
} }
} else if ((0 == strncmp(argv[i], "-a", strlen("-a"))) || } else if ((0 == strncmp(argv[i], "-a", strlen("-a"))) ||
(0 == strncmp(argv[i], "--replica", strlen("--replica")))) { (0 == strncmp(argv[i], "--replica", strlen("--replica")))) {
...@@ -1108,11 +1096,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1108,11 +1096,11 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "a"); errorPrintReqArg2(argv[0], "a");
goto end_parse_command; goto end_parse_command;
} }
arguments->replica = atoi(argv[++i]); g_args.replica = atoi(argv[++i]);
} else if (0 == } else if (0 ==
strncmp(argv[i], "--replica=", strlen("--replica="))) { strncmp(argv[i], "--replica=", strlen("--replica="))) {
if (isStringNumber((char *)(argv[i] + strlen("--replica=")))) { if (isStringNumber((char *)(argv[i] + strlen("--replica=")))) {
arguments->replica = g_args.replica =
atoi((char *)(argv[i] + strlen("--replica="))); atoi((char *)(argv[i] + strlen("--replica=")));
} else { } else {
errorPrintReqArg2(argv[0], "--replica"); errorPrintReqArg2(argv[0], "--replica");
...@@ -1120,7 +1108,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1120,7 +1108,7 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} else if (0 == strncmp(argv[i], "-a", strlen("-a"))) { } else if (0 == strncmp(argv[i], "-a", strlen("-a"))) {
if (isStringNumber((char *)(argv[i] + strlen("-a")))) { if (isStringNumber((char *)(argv[i] + strlen("-a")))) {
arguments->replica = atoi((char *)(argv[i] + strlen("-a"))); g_args.replica = atoi((char *)(argv[i] + strlen("-a")));
} else { } else {
errorPrintReqArg2(argv[0], "-a"); errorPrintReqArg2(argv[0], "-a");
goto end_parse_command; goto end_parse_command;
...@@ -1133,20 +1121,20 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1133,20 +1121,20 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
errorPrintReqArg2(argv[0], "--replica"); errorPrintReqArg2(argv[0], "--replica");
goto end_parse_command; goto end_parse_command;
} }
arguments->replica = atoi(argv[++i]); g_args.replica = atoi(argv[++i]);
} else { } else {
errorUnrecognized(argv[0], argv[i]); errorUnrecognized(argv[0], argv[i]);
goto end_parse_command; goto end_parse_command;
} }
if (arguments->replica > 3 || arguments->replica < 1) { if (g_args.replica > 3 || g_args.replica < 1) {
errorPrint("Invalid replica value %d, will be set to %d\n", errorPrint("Invalid replica value %d, will be set to %d\n",
arguments->replica, 1); g_args.replica, 1);
arguments->replica = 1; g_args.replica = 1;
} }
} else if (strcmp(argv[i], "-D") == 0) { } else if (strcmp(argv[i], "-D") == 0) {
arguments->method_of_delete = atoi(argv[++i]); g_args.method_of_delete = atoi(argv[++i]);
if (arguments->method_of_delete > 3) { if (g_args.method_of_delete > 3) {
errorPrint("%s", errorPrint("%s",
"\n\t-D need a value (0~3) number following!\n"); "\n\t-D need a value (0~3) number following!\n");
goto end_parse_command; goto end_parse_command;
...@@ -1260,62 +1248,52 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1260,62 +1248,52 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
} }
if (((arguments->debug_print) && (NULL != arguments->metaFile)) || if (((g_args.debug_print) && (NULL != g_args.metaFile)) ||
arguments->verbose_print) { g_args.verbose_print) {
printf( printf(
"##################################################################" "##################################################################"
"#\n"); "#\n");
printf("# meta file: %s\n", printf("# meta file: %s\n", g_args.metaFile);
arguments->metaFile);
printf("# Server IP: %s:%hu\n", printf("# Server IP: %s:%hu\n",
arguments->host == NULL ? "localhost" : arguments->host, g_args.host == NULL ? "localhost" : g_args.host, g_args.port);
arguments->port); printf("# User: %s\n", g_args.user);
printf("# User: %s\n", arguments->user); printf("# Password: %s\n", g_args.password);
printf("# Password: %s\n",
arguments->password);
printf("# Use metric: %s\n", printf("# Use metric: %s\n",
arguments->use_metric ? "true" : "false"); g_args.use_metric ? "true" : "false");
if (*(arguments->dataType)) { if (*(g_args.dataType)) {
printf("# Specified data type: "); printf("# Specified data type: ");
for (int c = 0; c < MAX_NUM_COLUMNS; c++) for (int c = 0; c < MAX_NUM_COLUMNS; c++)
if (arguments->dataType[c]) if (g_args.dataType[c])
printf("%s,", arguments->dataType[c]); printf("%s,", g_args.dataType[c]);
else else
break; break;
printf("\n"); printf("\n");
} }
printf("# Insertion interval: %" PRIu64 "\n", printf("# Insertion interval: %" PRIu64 "\n",
arguments->insert_interval); g_args.insert_interval);
printf("# Number of records per req: %u\n", printf("# Number of records per req: %u\n", g_args.reqPerReq);
arguments->reqPerReq);
printf("# Max SQL length: %" PRIu64 "\n", printf("# Max SQL length: %" PRIu64 "\n",
arguments->max_sql_len); g_args.max_sql_len);
printf("# Length of Binary: %d\n", printf("# Length of Binary: %d\n", g_args.binwidth);
arguments->binwidth); printf("# Number of Threads: %d\n", g_args.nthreads);
printf("# Number of Threads: %d\n",
arguments->nthreads);
printf("# Number of Tables: %" PRId64 "\n", printf("# Number of Tables: %" PRId64 "\n",
arguments->ntables); g_args.ntables);
printf("# Number of Data per Table: %" PRId64 "\n", printf("# Number of Data per Table: %" PRId64 "\n",
arguments->insertRows); g_args.insertRows);
printf("# Database name: %s\n", printf("# Database name: %s\n", g_args.database);
arguments->database); printf("# Table prefix: %s\n", g_args.tb_prefix);
printf("# Table prefix: %s\n", if (g_args.disorderRatio) {
arguments->tb_prefix);
if (arguments->disorderRatio) {
printf("# Data order: %d\n", printf("# Data order: %d\n",
arguments->disorderRatio); g_args.disorderRatio);
printf("# Data out of order rate: %d\n", printf("# Data out of order rate: %d\n",
arguments->disorderRange); g_args.disorderRange);
} }
printf("# Delete method: %d\n", printf("# Delete method: %d\n",
arguments->method_of_delete); g_args.method_of_delete);
printf("# Answer yes when prompt: %d\n", printf("# Answer yes when prompt: %d\n", g_args.answer_yes);
arguments->answer_yes); printf("# Print debug info: %d\n", g_args.debug_print);
printf("# Print debug info: %d\n",
arguments->debug_print);
printf("# Print verbose info: %d\n", printf("# Print verbose info: %d\n",
arguments->verbose_print); g_args.verbose_print);
printf( printf(
"##################################################################" "##################################################################"
"#\n"); "#\n");
...@@ -1324,7 +1302,6 @@ int parse_args(int argc, char *argv[], SArguments *arguments) { ...@@ -1324,7 +1302,6 @@ int parse_args(int argc, char *argv[], SArguments *arguments) {
} }
code = 0; code = 0;
end_parse_command: end_parse_command:
tmfree(g_dupstr);
return code; return code;
} }
void setParaFromArg() { void setParaFromArg() {
......
...@@ -182,6 +182,9 @@ static int calcRowLen(SSuperTable *superTbls) { ...@@ -182,6 +182,9 @@ static int calcRowLen(SSuperTable *superTbls) {
errorPrint("get error data type : %s\n", dataType); errorPrint("get error data type : %s\n", dataType);
exit(EXIT_FAILURE); exit(EXIT_FAILURE);
} }
if (superTbls->iface == SML_IFACE) {
lenOfOneRow += SML_LINE_SQL_SYNTAX_OFFSET;
}
} }
superTbls->lenOfOneRow = lenOfOneRow + TIMESTAMP_BUFF_LEN; // timestamp superTbls->lenOfOneRow = lenOfOneRow + TIMESTAMP_BUFF_LEN; // timestamp
...@@ -233,6 +236,15 @@ static int calcRowLen(SSuperTable *superTbls) { ...@@ -233,6 +236,15 @@ static int calcRowLen(SSuperTable *superTbls) {
errorPrint("get error tag type : %s\n", dataType); errorPrint("get error tag type : %s\n", dataType);
exit(EXIT_FAILURE); exit(EXIT_FAILURE);
} }
if (superTbls->iface == SML_IFACE) {
lenOfOneRow += SML_LINE_SQL_SYNTAX_OFFSET;
}
}
if (superTbls->iface == SML_IFACE) {
lenOfTagOfOneRow +=
2 * TSDB_TABLE_NAME_LEN * 2 + SML_LINE_SQL_SYNTAX_OFFSET;
superTbls->lenOfOneRow += lenOfTagOfOneRow;
} }
superTbls->lenOfTagOfOneRow = lenOfTagOfOneRow; superTbls->lenOfTagOfOneRow = lenOfTagOfOneRow;
...@@ -1357,7 +1369,7 @@ static int prepareSampleData() { ...@@ -1357,7 +1369,7 @@ static int prepareSampleData() {
void postFreeResource() { void postFreeResource() {
tmfclose(g_fpOfInsertResult); tmfclose(g_fpOfInsertResult);
tmfree(g_dupstr);
for (int i = 0; i < g_Dbs.dbCount; i++) { for (int i = 0; i < g_Dbs.dbCount; i++) {
for (uint64_t j = 0; j < g_Dbs.db[i].superTblCount; j++) { for (uint64_t j = 0; j < g_Dbs.db[i].superTblCount; j++) {
if (0 != g_Dbs.db[i].superTbls[j].colsOfCreateChildTable) { if (0 != g_Dbs.db[i].superTbls[j].colsOfCreateChildTable) {
...@@ -1918,8 +1930,10 @@ static int32_t execInsert(threadInfo *pThreadInfo, uint32_t k) { ...@@ -1918,8 +1930,10 @@ static int32_t execInsert(threadInfo *pThreadInfo, uint32_t k) {
affectedRows = k; affectedRows = k;
break; break;
case SML_IFACE: case SML_IFACE:
res = taos_schemaless_insert(pThreadInfo->taos, pThreadInfo->lines, res = taos_schemaless_insert(
k, 0, pThreadInfo->time_precision); pThreadInfo->taos, pThreadInfo->lines,
stbInfo->lineProtocol == TSDB_SML_JSON_PROTOCOL ? 0 : k,
stbInfo->lineProtocol, stbInfo->tsPrecision);
code = taos_errno(res); code = taos_errno(res);
affectedRows = taos_affected_rows(res); affectedRows = taos_affected_rows(res);
if (code != TSDB_CODE_SUCCESS) { if (code != TSDB_CODE_SUCCESS) {
......
...@@ -854,7 +854,6 @@ int getMetaFromInsertJsonFile(cJSON *root) { ...@@ -854,7 +854,6 @@ int getMetaFromInsertJsonFile(cJSON *root) {
g_Dbs.db[i].superTbls[j].iface = STMT_IFACE; g_Dbs.db[i].superTbls[j].iface = STMT_IFACE;
} else if (0 == strcasecmp(stbIface->valuestring, "sml")) { } else if (0 == strcasecmp(stbIface->valuestring, "sml")) {
g_Dbs.db[i].superTbls[j].iface = SML_IFACE; g_Dbs.db[i].superTbls[j].iface = SML_IFACE;
g_args.iface = SML_IFACE;
} else { } else {
errorPrint( errorPrint(
"failed to read json, insert_mode %s not recognized\n", "failed to read json, insert_mode %s not recognized\n",
...@@ -869,6 +868,36 @@ int getMetaFromInsertJsonFile(cJSON *root) { ...@@ -869,6 +868,36 @@ int getMetaFromInsertJsonFile(cJSON *root) {
goto PARSE_OVER; goto PARSE_OVER;
} }
cJSON *stbLineProtocol =
cJSON_GetObjectItem(stbInfo, "line_protocol");
if (stbLineProtocol && stbLineProtocol->type == cJSON_String &&
stbLineProtocol->valuestring != NULL) {
if (0 == strcasecmp(stbLineProtocol->valuestring, "line")) {
g_Dbs.db[i].superTbls[j].lineProtocol =
TSDB_SML_LINE_PROTOCOL;
} else if (0 ==
strcasecmp(stbLineProtocol->valuestring, "telnet")) {
g_Dbs.db[i].superTbls[j].lineProtocol =
TSDB_SML_TELNET_PROTOCOL;
} else if (0 ==
strcasecmp(stbLineProtocol->valuestring, "json")) {
g_Dbs.db[i].superTbls[j].lineProtocol =
TSDB_SML_JSON_PROTOCOL;
} else {
errorPrint(
"failed to read json, line_protocol %s not "
"recognized\n",
stbLineProtocol->valuestring);
goto PARSE_OVER;
}
} else if (!stbLineProtocol) {
g_Dbs.db[i].superTbls[j].lineProtocol = TSDB_SML_LINE_PROTOCOL;
} else {
errorPrint("%s",
"failed to read json, line_protocol not found\n");
goto PARSE_OVER;
}
cJSON *childTbl_limit = cJSON *childTbl_limit =
cJSON_GetObjectItem(stbInfo, "childtable_limit"); cJSON_GetObjectItem(stbInfo, "childtable_limit");
if ((childTbl_limit) && (g_Dbs.db[i].drop != true) && if ((childTbl_limit) && (g_Dbs.db[i].drop != true) &&
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
int64_t g_totalChildTables = DEFAULT_CHILDTABLES; int64_t g_totalChildTables = DEFAULT_CHILDTABLES;
int64_t g_actualChildTables = 0; int64_t g_actualChildTables = 0;
FILE * g_fpOfInsertResult = NULL; FILE * g_fpOfInsertResult = NULL;
char * g_dupstr = NULL;
SDbs g_Dbs; SDbs g_Dbs;
SQueryMetaInfo g_queryInfo; SQueryMetaInfo g_queryInfo;
SArguments g_args = { SArguments g_args = {
...@@ -66,7 +67,7 @@ SArguments g_args = { ...@@ -66,7 +67,7 @@ SArguments g_args = {
}; };
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
if (parse_args(argc, argv, &g_args)) { if (parse_args(argc, argv)) {
exit(EXIT_FAILURE); exit(EXIT_FAILURE);
} }
debugPrint("meta file: %s\n", g_args.metaFile); debugPrint("meta file: %s\n", g_args.metaFile);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册