Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ func (pc *PartitionConfig) ExecuteInitStatement(pd *PartitionDetail, conn *nativ

func (pc *PartitionConfig) ExecuteInitStatementByPTTool(initStatement string, forceInitInfo *ForceInitInfo, partitionStepInfo *PartitionStepInfo) {
// 有唯一键,使用pt工具
pt_tool := "percona-toolkit-3.5.0/bin/pt-online-schema-change"
pt_tool := "percona-toolkit-3.5.7/bin/pt-online-schema-change"
user := forceInitInfo.User
pwd := forceInitInfo.Pwd
host := forceInitInfo.Host
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,12 @@ func (c *PartitionExecComp) TendbClusterPartition() (err error) {
return fmt.Errorf("error occurred while getting shard info: %s", err.Error())
}

// 强制执行是任务级别的,对此次所有分区配置通用,使用同一个ForceInitInfo
// 强制执行是任务级别的开关,DSN 在各分片上再组装
// 非强制执行,则为nil
var forceInitInfo *ForceInitInfo
if c.Params.Force {
forceInitInfo = &ForceInitInfo{
Force: c.Params.Force,
User: c.GeneralParam.RuntimeAccountParam.PartitionYwUser,
Pwd: c.GeneralParam.RuntimeAccountParam.PartitionYwPwd,
Host: c.Params.Cluster.IP,
Port: c.Params.Cluster.Port,
}
}
// 使用带缓冲的channel实现并发控制,最大并发数为3
Expand Down Expand Up @@ -149,8 +145,17 @@ func (c *PartitionExecComp) ExecuteOneConfigOnShards(tdbCluPartConf *TdbCluPartC
mu.Unlock()
return
}

tdbCluPartConf.ExecuteOneShardPartition(tdbCluPartConf, shard, shardConn, partitionShardResult, forceInitInfo, partialForce)
var shardForceInitInfo *ForceInitInfo
if forceInitInfo != nil {
shardForceInitInfo = &ForceInitInfo{
Force: forceInitInfo.Force,
User: shard.Account,
Pwd: shard.PWD,
Host: shard.IP,
Port: shard.Port,
}
}
tdbCluPartConf.ExecuteOneShardPartition(tdbCluPartConf, shard, shardConn, partitionShardResult, shardForceInitInfo, partialForce)

if !partitionShardResult.ShardStatus {
mu.Lock()
Expand Down
Loading