commit
5c0b0e2266
|
@ -88,12 +88,14 @@ int32_t dnodeInitMClient() {
|
|||
if (strcmp(tsSecond, tsMaster) != 0) {
|
||||
tsMnodeIpSet.numOfIps = 2;
|
||||
taosGetFqdnPortFromEp(tsSecond, tsMnodeIpSet.fqdn[1], &tsMnodeIpSet.port[1]);
|
||||
tsMnodeIpSet.port[0] += TSDB_PORT_MNODEDNODE;
|
||||
}
|
||||
} else {
|
||||
tsMnodeIpSet.inUse = tsMnodeInfos.inUse;
|
||||
tsMnodeIpSet.numOfIps = tsMnodeInfos.nodeNum;
|
||||
for (int32_t i = 0; i < tsMnodeInfos.nodeNum; i++) {
|
||||
taosGetFqdnPortFromEp(tsMnodeInfos.nodeInfos[i].nodeEp, tsMnodeIpSet.fqdn[i], &tsMnodeIpSet.port[i]);
|
||||
tsMnodeIpSet.port[i] += TSDB_PORT_MNODEDNODE;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -324,7 +324,7 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
|
|||
if (pStatus->dnodeId == 0) {
|
||||
mTrace("dnode:%d %s, first access", pDnode->dnodeId, pDnode->dnodeEp);
|
||||
} else {
|
||||
//mTrace("dnode:%d, status received, access times %d", pDnode->dnodeId, pDnode->lastAccess);
|
||||
mTrace("dnode:%d, status received, access times %d", pDnode->dnodeId, pDnode->lastAccess);
|
||||
}
|
||||
|
||||
int32_t openVnodes = htons(pStatus->openVnodes);
|
||||
|
|
|
@ -613,11 +613,18 @@ static void mgmtExtractTableName(char* tableId, char* name) {
|
|||
static void mgmtProcessCreateTableMsg(SQueuedMsg *pMsg) {
|
||||
SCMCreateTableMsg *pCreate = pMsg->pCont;
|
||||
|
||||
if (pMsg->pDb == NULL) pMsg->pDb = mgmtGetDb(pCreate->db);
|
||||
if (pMsg->pDb == NULL || pMsg->pDb->status != TSDB_DB_STATUS_READY) {
|
||||
mError("table:%s, failed to create, db not selected", pCreate->tableId);
|
||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_DB_NOT_SELECTED);
|
||||
return;
|
||||
}
|
||||
|
||||
if (pMsg->pTable == NULL) pMsg->pTable = mgmtGetTable(pCreate->tableId);
|
||||
if (pMsg->pTable != NULL && pMsg->retry == 0) {
|
||||
if (pCreate->getMeta) {
|
||||
mTrace("table:%s, continue to get meta", pCreate->tableId);
|
||||
mgmtProcessTableMetaMsg(pMsg);
|
||||
mgmtGetChildTableMeta(pMsg);
|
||||
} else if (pCreate->igExists) {
|
||||
mTrace("table:%s, is already exist", pCreate->tableId);
|
||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_SUCCESS);
|
||||
|
@ -628,13 +635,6 @@ static void mgmtProcessCreateTableMsg(SQueuedMsg *pMsg) {
|
|||
return;
|
||||
}
|
||||
|
||||
if (pMsg->pDb == NULL) pMsg->pDb = mgmtGetDb(pCreate->db);
|
||||
if (pMsg->pDb == NULL || pMsg->pDb->status != TSDB_DB_STATUS_READY) {
|
||||
mError("table:%s, failed to create, db not selected", pCreate->tableId);
|
||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_DB_NOT_SELECTED);
|
||||
return;
|
||||
}
|
||||
|
||||
if (pCreate->numOfTags != 0) {
|
||||
mTrace("table:%s, create msg is received from thandle:%p", pCreate->tableId, pMsg->thandle);
|
||||
mgmtProcessCreateSuperTableMsg(pMsg);
|
||||
|
@ -646,7 +646,7 @@ static void mgmtProcessCreateTableMsg(SQueuedMsg *pMsg) {
|
|||
|
||||
static void mgmtProcessDropTableMsg(SQueuedMsg *pMsg) {
|
||||
SCMDropTableMsg *pDrop = pMsg->pCont;
|
||||
pMsg->pDb = mgmtGetDbByTableId(pDrop->tableId);
|
||||
if (pMsg->pDb == NULL) pMsg->pDb = mgmtGetDbByTableId(pDrop->tableId);
|
||||
if (pMsg->pDb == NULL || pMsg->pDb->status != TSDB_DB_STATUS_READY) {
|
||||
mError("table:%s, failed to drop table, db not selected", pDrop->tableId);
|
||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_DB_NOT_SELECTED);
|
||||
|
@ -659,8 +659,8 @@ static void mgmtProcessDropTableMsg(SQueuedMsg *pMsg) {
|
|||
return;
|
||||
}
|
||||
|
||||
pMsg->pTable = mgmtGetTable(pDrop->tableId);
|
||||
if (pMsg->pTable == NULL) {
|
||||
if (pMsg->pTable == NULL) pMsg->pTable = mgmtGetTable(pDrop->tableId);
|
||||
if (pMsg->pTable == NULL) {
|
||||
if (pDrop->igNotExists) {
|
||||
mTrace("table:%s, table is not exist, think drop success", pDrop->tableId);
|
||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_SUCCESS);
|
||||
|
@ -683,7 +683,8 @@ static void mgmtProcessDropTableMsg(SQueuedMsg *pMsg) {
|
|||
|
||||
static void mgmtProcessTableMetaMsg(SQueuedMsg *pMsg) {
|
||||
SCMTableInfoMsg *pInfo = pMsg->pCont;
|
||||
mTrace("table:%s, table meta msg is received from thandle:%p", pInfo->tableId, pMsg->thandle);
|
||||
pInfo->createFlag = htons(pInfo->createFlag);
|
||||
mTrace("table:%s, table meta msg is received from thandle:%p, createFlag:%d", pInfo->tableId, pMsg->thandle, pInfo->createFlag);
|
||||
|
||||
if (pMsg->pDb == NULL) pMsg->pDb = mgmtGetDbByTableId(pInfo->tableId);
|
||||
if (pMsg->pDb == NULL || pMsg->pDb->status != TSDB_DB_STATUS_READY) {
|
||||
|
@ -694,7 +695,7 @@ static void mgmtProcessTableMetaMsg(SQueuedMsg *pMsg) {
|
|||
|
||||
if (pMsg->pTable == NULL) pMsg->pTable = mgmtGetTable(pInfo->tableId);
|
||||
if (pMsg->pTable == NULL) {
|
||||
if (htons(pInfo->createFlag) != 1) {
|
||||
if (!pInfo->createFlag) {
|
||||
mError("table:%s, failed to get table meta, table not exist", pInfo->tableId);
|
||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_INVALID_TABLE);
|
||||
} else {
|
||||
|
@ -1672,10 +1673,12 @@ static void mgmtAutoCreateChildTable(SQueuedMsg *pMsg) {
|
|||
strcpy(pCreateMsg->db, pMsg->pDb->name);
|
||||
pCreateMsg->igExists = 1;
|
||||
pCreateMsg->getMeta = 1;
|
||||
pCreateMsg->contLen = htonl(contLen);
|
||||
memcpy(pCreateMsg->schema, pInfo->tags, sizeof(STagData));
|
||||
|
||||
SQueuedMsg *newMsg = mgmtCloneQueuedMsg(pMsg);
|
||||
pMsg->pCont = newMsg->pCont;
|
||||
newMsg->msgType = TSDB_MSG_TYPE_CM_CREATE_TABLE;
|
||||
newMsg->pCont = pCreateMsg;
|
||||
|
||||
mTrace("table:%s, start to create on demand", pInfo->tableId);
|
||||
|
@ -1889,9 +1892,10 @@ static void mgmtProcessCreateChildTableRsp(SRpcMsg *rpcMsg) {
|
|||
} else {
|
||||
mTrace("table:%s, created in dnode, thandle:%p result:%s", pTable->info.tableId, queueMsg->thandle,
|
||||
tstrerror(rpcMsg->code));
|
||||
|
||||
if (queueMsg->msgType != TSDB_MSG_TYPE_CM_CREATE_TABLE) {
|
||||
mTrace("table:%s, start to get meta", pTable->info.tableId);
|
||||
SCMCreateTableMsg *pCreate = queueMsg->pCont;
|
||||
if (pCreate->getMeta) {
|
||||
mTrace("table:%s, continue to get meta", pTable->info.tableId);
|
||||
queueMsg->retry = 0;
|
||||
mgmtAddToShellQueue(queueMsg);
|
||||
} else {
|
||||
mgmtSendSimpleResp(queueMsg->thandle, rpcMsg->code);
|
||||
|
|
|
@ -1,8 +1,28 @@
|
|||
#################################
|
||||
run general/db/basic1.sim
|
||||
run general/db/basic2.sim
|
||||
run general/db/basic3.sim
|
||||
run general/db/basic4.sim
|
||||
run general/db/basic5.sim
|
||||
|
||||
run general/db/testSuite.sim
|
||||
run general/insert/testSuite.sim
|
||||
run general/table/testSuite.sim
|
||||
run general/user/basicSuite.sim
|
||||
run general/table/basic1.sim
|
||||
run general/table/basic2.sim
|
||||
run general/table/basic3.sim
|
||||
run general/table/column_num.sim
|
||||
run general/table/column_name.sim
|
||||
run general/table/bigint.sim
|
||||
run general/table/bool.sim
|
||||
run general/table/double.sim
|
||||
run general/table/float.sim
|
||||
run general/table/int.sim
|
||||
run general/table/smallint.sim
|
||||
run general/table/tinyint.sim
|
||||
run general/table/db.table.sim
|
||||
|
||||
run general/user/basic1.sim
|
||||
run general/user/pass_alter.sim
|
||||
run general/user/pass_len.sim
|
||||
run general/user/user_create.sim
|
||||
run general/user/user_len.sim
|
||||
|
||||
##################################
|
||||
|
|
|
@ -0,0 +1,102 @@
|
|||
system sh/stop_dnodes.sh
|
||||
system sh/deploy.sh -n dnode1 -m 192.168.0.1 -i 192.168.0.1
|
||||
system sh/exec.sh -n dnode1 -s start
|
||||
sql connect
|
||||
|
||||
print =============== create database
|
||||
sql create database db
|
||||
sql show databases
|
||||
if $rows != 1 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
print $data00 $data01 $data02
|
||||
|
||||
print =============== create super table
|
||||
sql create table db.st1 (ts timestamp, i int) tags (j int)
|
||||
sql create table db.st2 (ts timestamp, i int, j int) tags (t1 int, t2 int, t3 int)
|
||||
sql show db.stables
|
||||
if $rows != 2 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
print $data00 $data01 $data02
|
||||
|
||||
print =============== create child table
|
||||
sql insert into db.c1 using db.st1 tags(1) values(now, 1);
|
||||
sql insert into db.c2 using db.st1 tags(2) values(now, 2);
|
||||
sql insert into db.c3 using db.st1 tags(3) values(now, 3);
|
||||
sql insert into db.c4 using db.st1 tags(4) values(now, 4);
|
||||
sql insert into db.c1 using db.st1 tags(1) values(now, 1);
|
||||
sql insert into db.c2 using db.st1 tags(2) values(now, 2);
|
||||
sql insert into db.c3 using db.st1 tags(3) values(now, 3);
|
||||
sql insert into db.c4 using db.st1 tags(4) values(now, 4);
|
||||
|
||||
sql show db.tables
|
||||
if $rows != 4 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.c1
|
||||
if $rows != 2 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.c2
|
||||
if $rows != 2 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.c3
|
||||
if $rows != 2 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.c4
|
||||
if $rows != 2 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.st1
|
||||
if $rows != 8 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
print =============== insert data
|
||||
sql insert into db.s1 using db.st2 tags(1, 1, 1) values(now, 1, 2);
|
||||
sql insert into db.s2 using db.st2 tags(2, 2, 2) values(now, 2, 3);
|
||||
sql insert into db.s3 using db.st2 tags(3, 3, 3) values(now, 3, 4);
|
||||
sql insert into db.s4 using db.st2 tags(4, 4, 4) values(now, 4, 5);
|
||||
sql insert into db.s1 using db.st2 tags(1, 1, 1) values(now, 1, 2);
|
||||
sql insert into db.s2 using db.st2 tags(2, 2, 2) values(now, 2, 3);
|
||||
sql insert into db.s3 using db.st2 tags(3, 3, 3) values(now, 3, 4);
|
||||
sql insert into db.s4 using db.st2 tags(4, 4, 4) values(now, 4, 5);
|
||||
sql insert into db.s1 using db.st2 tags(1, 1, 1) values(now, 1, 2);
|
||||
sql insert into db.s2 using db.st2 tags(2, 2, 2) values(now, 2, 3);
|
||||
sql insert into db.s3 using db.st2 tags(3, 3, 3) values(now, 3, 4);
|
||||
sql insert into db.s4 using db.st2 tags(4, 4, 4) values(now, 4, 5);
|
||||
|
||||
sql show db.tables
|
||||
if $rows != 8 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.s1
|
||||
if $rows != 3 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.s2
|
||||
if $rows != 3 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.s3
|
||||
if $rows != 3 then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql select * from db.s4
|
||||
if $rows != 3 then
|
||||
return -1
|
||||
endi
|
|
@ -1,25 +1,26 @@
|
|||
run general/table/autocreate.sim
|
||||
run general/table/basic1.sim
|
||||
run general/table/basic2.sim
|
||||
run general/table/basic3.sim
|
||||
#run general/table/table.sim
|
||||
#run general/table/vgroup.sim
|
||||
#run general/table/limit.sim
|
||||
#run general/table/table_len.sim
|
||||
run general/table/column_num.sim
|
||||
#run general/table/column2.sim
|
||||
run general/table/column_name.sim
|
||||
#run general/table/column_value.sim
|
||||
#run general/table/describe.sim
|
||||
#run general/table/date.sim
|
||||
run general/table/bigint.sim
|
||||
#run general/table/binary.sim
|
||||
run general/table/bool.sim
|
||||
run general/table/double.sim
|
||||
run general/table/float.sim
|
||||
run general/table/int.sim
|
||||
run general/table/smallint.sim
|
||||
run general/table/tinyint.sim
|
||||
run general/table/column_name.sim
|
||||
run general/table/column_num.sim
|
||||
#run general/table/column_value.sim
|
||||
#run general/table/column2.sim
|
||||
#run general/table/date.sim
|
||||
run general/table/db.table.sim
|
||||
#run general/table/delete_reuse1.sim
|
||||
#run general/table/delete_reuse2.sim
|
||||
#run general/table/delete_writing.sim
|
||||
#run general/table/describe.sim
|
||||
run general/table/double.sim
|
||||
run general/table/float.sim
|
||||
run general/table/int.sim
|
||||
#run general/table/limit.sim
|
||||
run general/table/smallint.sim
|
||||
#run general/table/table_len.sim
|
||||
#run general/table/table.sim
|
||||
run general/table/tinyint.sim
|
||||
#run general/table/vgroup.sim
|
||||
|
|
Loading…
Reference in New Issue