cqtest.c 2.5 KB
Newer Older
J
jtao1735 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
/*
 * Copyright (c) 2019 TAOS Data, Inc. <jhtao@taosdata.com>
 *
 * This program is free software: you can use, redistribute, and/or modify
 * it under the terms of the GNU Affero General Public License, version 3
 * or later ("AGPL"), as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */

//#define _DEFAULT_SOURCE
#include "os.h"
#include "taosdef.h"
#include "taosmsg.h"
#include "tglobal.h"
#include "tlog.h"
#include "tcq.h"

int64_t  ver = 0;
void    *pCq = NULL;

int writeToQueue(void *pVnode, void *data, int type) {
  return 0;
}

int main(int argc, char *argv[]) {
J
jtao1735 已提交
32
  int num = 3;
J
jtao1735 已提交
33 34

  for (int i=1; i<argc; ++i) {
J
jtao1735 已提交
35
    if (strcmp(argv[i], "-d")==0 && i < argc-1) {
J
jtao1735 已提交
36
      ddebugFlag = atoi(argv[++i]);
J
jtao1735 已提交
37 38
    } else if (strcmp(argv[i], "-n") == 0 && i <argc-1) {
      num = atoi(argv[++i]);
J
jtao1735 已提交
39 40
    } else {
      printf("\nusage: %s [options] \n", argv[0]);
J
jtao1735 已提交
41
      printf("  [-n num]: number of streams, default:%d\n", num);
J
jtao1735 已提交
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
      printf("  [-d debugFlag]: debug flag, default:%d\n", ddebugFlag);
      printf("  [-h help]: print out this help\n\n");
      exit(0);
    }
  } 

  taosInitLog("cq.log", 100000, 10);

  SCqCfg cqCfg;
  strcpy(cqCfg.user, "root");
  strcpy(cqCfg.pass, "taosdata");
  cqCfg.vgId = 2;
  cqCfg.cqWrite = writeToQueue;

  pCq = cqOpen(NULL, &cqCfg);
  if (pCq == NULL) {
    printf("failed to open CQ\n");
    exit(-1);
  }

J
jtao1735 已提交
62 63 64 65 66 67 68 69 70 71 72
  SSchema schema[2];
  schema[0].type = TSDB_DATA_TYPE_TIMESTAMP;
  strcpy(schema[0].name, "ts");
  schema[0].colId = 0;
  schema[0].bytes = 8;

  schema[1].type = TSDB_DATA_TYPE_INT;
  strcpy(schema[1].name, "avgspeed");
  schema[1].colId = 1;
  schema[1].bytes = 4;

J
jtao1735 已提交
73
  for (int sid =1; sid<10; ++sid) {
J
jtao1735 已提交
74
    cqCreate(pCq, sid, "select avg(speed) from demo.t1 sliding(1s) interval(5s)", schema, 2);
J
jtao1735 已提交
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
  }

  while (1) {
    char c = getchar();
    
    switch(c) {
      case 's':
        cqStart(pCq);
        break;
      case 't':
        cqStop(pCq);
        break;
      case 'c':
        // create a CQ 
        break;
      case 'd':
        // drop a CQ
        break;
      case 'q':
        break;
J
jtao1735 已提交
95 96
      default:
        printf("invalid command:%c", c);
J
jtao1735 已提交
97 98 99 100 101 102 103
    }

    if (c=='q') break;
  }

  cqClose(pCq);

J
jtao1735 已提交
104 105
  taosCloseLog();

J
jtao1735 已提交
106 107
  return 0;
}