提交 0201008c 编写于 作者: S Shengliang Guan

[TD-669] incomplete update while alter vgroup

上级 f33d040b
...@@ -185,11 +185,16 @@ static int32_t mnodeChildTableActionUpdate(SSdbOper *pOper) { ...@@ -185,11 +185,16 @@ static int32_t mnodeChildTableActionUpdate(SSdbOper *pOper) {
void *oldTableId = pTable->info.tableId; void *oldTableId = pTable->info.tableId;
void *oldSql = pTable->sql; void *oldSql = pTable->sql;
void *oldSchema = pTable->schema; void *oldSchema = pTable->schema;
void *oldSTable = pTable->superTable;
int32_t oldRefCount = pTable->refCount; int32_t oldRefCount = pTable->refCount;
memcpy(pTable, pNew, sizeof(SChildTableObj)); memcpy(pTable, pNew, sizeof(SChildTableObj));
pTable->refCount = oldRefCount; pTable->refCount = oldRefCount;
pTable->sql = pNew->sql; pTable->sql = pNew->sql;
pTable->schema = pNew->schema; pTable->schema = pNew->schema;
pTable->superTable = oldSTable;
free(pNew); free(pNew);
free(oldSql); free(oldSql);
free(oldSchema); free(oldSchema);
......
...@@ -149,16 +149,7 @@ static int32_t mnodeVgroupActionUpdate(SSdbOper *pOper) { ...@@ -149,16 +149,7 @@ static int32_t mnodeVgroupActionUpdate(SSdbOper *pOper) {
} }
} }
void *idPool = pVgroup->idPool; memcpy(pVgroup, pNew, tsVgUpdateSize);
void *tableList = pVgroup->tableList;
int32_t oldRefCount = pVgroup->refCount;
memcpy(pVgroup, pNew, sizeof(SVgObj));
free(pNew);
pVgroup->refCount = oldRefCount;
pVgroup->idPool = idPool;
pVgroup->tableList = tableList;
for (int32_t i = 0; i < pVgroup->numOfVnodes; ++i) { for (int32_t i = 0; i < pVgroup->numOfVnodes; ++i) {
SDnodeObj *pDnode = mnodeGetDnode(pVgroup->vnodeGid[i].dnodeId); SDnodeObj *pDnode = mnodeGetDnode(pVgroup->vnodeGid[i].dnodeId);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册