Skip to content

Commit

Permalink
Manual merge fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
mjonss committed Oct 3, 2023
1 parent be821d2 commit 623b592
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 37 deletions.
13 changes: 0 additions & 13 deletions ddl/ddl_worker.go
Original file line number Diff line number Diff line change
Expand Up @@ -1366,17 +1366,6 @@ func updateSchemaVersion(d *ddlCtx, t *meta.Meta, job *model.Job, multiInfos ...
diff.OldSchemaID = oldSchemaIDs[0]
diff.AffectedOpts = affects
case model.ActionExchangeTablePartition:
<<<<<<< HEAD
var (
ptSchemaID int64
ptTableID int64
partName string
withValidation bool
)
err = job.DecodeArgs(&diff.TableID, &ptSchemaID, &ptTableID, &partName, &withValidation)
if err != nil {
return 0, errors.Trace(err)
=======
// From start of function: diff.SchemaID = job.SchemaID
// Old is original non partitioned table
diff.OldTableID = job.TableID
Expand All @@ -1395,7 +1384,6 @@ func updateSchemaVersion(d *ddlCtx, t *meta.Meta, job *model.Job, multiInfos ...
return 0, errors.Trace(err)
}
// This is needed for not crashing TiFlash!
// TODO: Update TiFlash, to handle StateWriteOnly
diff.AffectedOpts = []*model.AffectedOption{{
TableID: ptTableID,
}}
Expand All @@ -1411,7 +1399,6 @@ func updateSchemaVersion(d *ddlCtx, t *meta.Meta, job *model.Job, multiInfos ...
diff.TableID = ptDefID
// Also add correct SchemaID in case different schemas
diff.AffectedOpts[0].SchemaID = ptSchemaID
>>>>>>> 48e22971729 (ddl: Exchange part schema load fix (#46126))
}
diff.OldTableID = job.TableID
affects := make([]*model.AffectedOption, 1)
Expand Down
28 changes: 11 additions & 17 deletions ddl/partition.go
Original file line number Diff line number Diff line change
Expand Up @@ -2141,13 +2141,10 @@ func (w *worker) onExchangeTablePartition(d *ddlCtx, t *meta.Meta, job *model.Jo
return ver, errors.Trace(err)
}

index, _, err := getPartitionDef(pt, partName)
index, partDef, err := getPartitionDef(pt, partName)
if err != nil {
return ver, errors.Trace(err)
}
<<<<<<< HEAD
if nt.ExchangePartitionInfo == nil || !nt.ExchangePartitionInfo.ExchangePartitionFlag {
=======
if job.SchemaState == model.StateNone {
if pt.State != model.StatePublic {
job.State = model.JobStateCancelled
Expand Down Expand Up @@ -2181,7 +2178,6 @@ func (w *worker) onExchangeTablePartition(d *ddlCtx, t *meta.Meta, job *model.Jo
return ver, errors.Trace(err)
}
}
>>>>>>> 48e22971729 (ddl: Exchange part schema load fix (#46126))
nt.ExchangePartitionInfo = &model.ExchangePartitionInfo{
ExchangePartitionFlag: true,
ExchangePartitionID: ptID,
Expand Down Expand Up @@ -2227,12 +2223,6 @@ func (w *worker) onExchangeTablePartition(d *ddlCtx, t *meta.Meta, job *model.Jo
return ver, errors.Trace(err)
}

_, partDef, err := getPartitionDef(pt, partName)
if err != nil {
job.State = model.JobStateCancelled
return ver, errors.Trace(err)
}

if pt.TiFlashReplica != nil {
for i, id := range pt.TiFlashReplica.AvailablePartitionIDs {
if id == partDef.ID {
Expand Down Expand Up @@ -2303,7 +2293,7 @@ func (w *worker) onExchangeTablePartition(d *ddlCtx, t *meta.Meta, job *model.Jo
}
})

err = checkExchangePartitionPlacementPolicy(t, partDef.PlacementPolicyRef, nt.PlacementPolicyRef)
err = checkExchangePartitionPlacementPolicy(t, nt.PlacementPolicyRef, pt.PlacementPolicyRef, partDef.PlacementPolicyRef)
if err != nil {
job.State = model.JobStateCancelled
return ver, errors.Trace(err)
Expand Down Expand Up @@ -3106,16 +3096,20 @@ func checkExchangePartitionRecordValidation(w *worker, pt *model.TableInfo, inde
return nil
}

func checkExchangePartitionPlacementPolicy(t *meta.Meta, ntPlacementPolicyRef *model.PolicyRefInfo, ptPlacementPolicyRef *model.PolicyRefInfo) error {
if ntPlacementPolicyRef == nil && ptPlacementPolicyRef == nil {
func checkExchangePartitionPlacementPolicy(t *meta.Meta, ntPPRef, ptPPRef, partPPRef *model.PolicyRefInfo) error {
partitionPPRef := partPPRef
if partitionPPRef == nil {
partitionPPRef = ptPPRef
}
if ntPPRef == nil && partitionPPRef == nil {
return nil
}
if ntPlacementPolicyRef == nil || ptPlacementPolicyRef == nil {
if ntPPRef == nil || partitionPPRef == nil {
return dbterror.ErrTablesDifferentMetadata
}

ptPlacementPolicyInfo, _ := getPolicyInfo(t, ptPlacementPolicyRef.ID)
ntPlacementPolicyInfo, _ := getPolicyInfo(t, ntPlacementPolicyRef.ID)
ptPlacementPolicyInfo, _ := getPolicyInfo(t, partitionPPRef.ID)
ntPlacementPolicyInfo, _ := getPolicyInfo(t, ntPPRef.ID)
if ntPlacementPolicyInfo == nil && ptPlacementPolicyInfo == nil {
return nil
}
Expand Down
7 changes: 0 additions & 7 deletions infoschema/builder.go
Original file line number Diff line number Diff line change
Expand Up @@ -309,8 +309,6 @@ func (b *Builder) applyReorganizePartition(m *meta.Meta, diff *model.SchemaDiff)
return tblIDs, nil
}

<<<<<<< HEAD
=======
func (b *Builder) applyExchangeTablePartition(m *meta.Meta, diff *model.SchemaDiff) ([]int64, error) {
// The partitioned table is not affected until the last stage
if diff.OldTableID == diff.TableID && diff.OldSchemaID == diff.SchemaID {
Expand Down Expand Up @@ -367,7 +365,6 @@ func (b *Builder) applyExchangeTablePartition(m *meta.Meta, diff *model.SchemaDi
return append(ptIDs, ntIDs...), nil
}

>>>>>>> 48e22971729 (ddl: Exchange part schema load fix (#46126))
func (b *Builder) applyRecoverTable(m *meta.Meta, diff *model.SchemaDiff) ([]int64, error) {
tblIDs, err := b.applyTableUpdate(m, diff)
if err != nil {
Expand Down Expand Up @@ -474,12 +471,8 @@ func (b *Builder) applyTableUpdate(m *meta.Meta, diff *model.SchemaDiff) ([]int6
newTableID = diff.TableID
case model.ActionDropTable, model.ActionDropView, model.ActionDropSequence:
oldTableID = diff.TableID
<<<<<<< HEAD
case model.ActionTruncateTable, model.ActionCreateView, model.ActionExchangeTablePartition:
=======
case model.ActionTruncateTable, model.ActionCreateView,
model.ActionExchangeTablePartition:
>>>>>>> 48e22971729 (ddl: Exchange part schema load fix (#46126))
oldTableID = diff.OldTableID
newTableID = diff.TableID
default:
Expand Down

0 comments on commit 623b592

Please sign in to comment.