public override void TruncateFromClientHandler(TruncateMessageReader request) { idDict.Clear(); for (int i = 0; i < Global.ServerCount; i++) { //每个服务器挨个发送 TruncateMessageWriter tmw = new TruncateMessageWriter(request.cellIds); Global.CloudStorage.TruncateFromProxyToDatabaseServer(i, tmw); } sem.WaitOne(); //等待服务器全部返回信息 }
public void truncate() { if (!isSingle) { throw new Exception(String.Format("不可对多个表进行delete操作")); } TruncateMessageWriter tmw = new TruncateMessageWriter(cellIds); Global.CloudStorage.TruncateFromClientToDatabaseProxy(0, tmw); //this.cellIds = null; TableHeadCell thc = new TableHeadCell(this.tableNames[0], this.columnNames, this.columnTypes, this.primaryIndexs, this.defaultValues, this.cellIds); long thcId = Database.getCurrentDatabase().getTableIdList().ElementAt(Database.getCurrentDatabase().getTableNameList().IndexOf(tableNames [0])); Global.CloudStorage.SaveTableHeadCell(thcId, thc); }