ddl: Tiny clean up
This commit is contained in:
@ -104,6 +104,7 @@ func newDDL(store kv.Storage, infoHandle *infoschema.Handle, hook OnDDLChange, l
|
||||
uuid: uuid.NewV4().String(),
|
||||
jobCh: make(chan struct{}, 1),
|
||||
jobDoneCh: make(chan struct{}, 1),
|
||||
reOrgDoneCh: make(chan error, 1),
|
||||
}
|
||||
|
||||
d.start()
|
||||
|
||||
11
ddl/index.go
11
ddl/index.go
@ -29,7 +29,7 @@ import (
|
||||
"github.com/pingcap/tidb/util/errors2"
|
||||
)
|
||||
|
||||
func (d *ddl) checkTablePublic(t *meta.Meta, job *model.Job) (*model.TableInfo, error) {
|
||||
func (d *ddl) getTableInfo(t *meta.Meta, job *model.Job) (*model.TableInfo, error) {
|
||||
schemaID := job.SchemaID
|
||||
tableID := job.TableID
|
||||
tblInfo, err := t.GetTable(schemaID, tableID)
|
||||
@ -104,8 +104,7 @@ func buildIndexInfo(tblInfo *model.TableInfo, unique bool, indexName model.CIStr
|
||||
|
||||
func (d *ddl) onIndexCreate(t *meta.Meta, job *model.Job) error {
|
||||
schemaID := job.SchemaID
|
||||
|
||||
tblInfo, err := d.checkTablePublic(t, job)
|
||||
tblInfo, err := d.getTableInfo(t, job)
|
||||
if err != nil {
|
||||
return errors.Trace(err)
|
||||
}
|
||||
@ -214,8 +213,7 @@ func (d *ddl) onIndexCreate(t *meta.Meta, job *model.Job) error {
|
||||
|
||||
func (d *ddl) onIndexDrop(t *meta.Meta, job *model.Job) error {
|
||||
schemaID := job.SchemaID
|
||||
|
||||
tblInfo, err := d.checkTablePublic(t, job)
|
||||
tblInfo, err := d.getTableInfo(t, job)
|
||||
if err != nil {
|
||||
return errors.Trace(err)
|
||||
}
|
||||
@ -264,8 +262,7 @@ func (d *ddl) onIndexDrop(t *meta.Meta, job *model.Job) error {
|
||||
return errors.Trace(err)
|
||||
case model.StateReorgnization:
|
||||
// reorganization -> absent
|
||||
var tbl table.Table
|
||||
tbl, err = d.getTable(t, schemaID, tblInfo)
|
||||
tbl, err := d.getTable(t, schemaID, tblInfo)
|
||||
if err != nil {
|
||||
return errors.Trace(err)
|
||||
}
|
||||
|
||||
14
ddl/reorg.go
14
ddl/reorg.go
@ -97,15 +97,11 @@ const waitReorgTimeout = 10 * time.Second
|
||||
var errWaitReorgTimeout = errors.New("wait for reorgnization timeout")
|
||||
|
||||
func (d *ddl) runReorgJob(f func() error) error {
|
||||
// wait reorgnization jobs done
|
||||
// TODO use persistent reorgnization job list.
|
||||
if d.reOrgDoneCh == nil {
|
||||
// start a reorgnization job
|
||||
d.reOrgDoneCh = make(chan error, 1)
|
||||
go func() {
|
||||
d.reOrgDoneCh <- f()
|
||||
}()
|
||||
}
|
||||
// TODO: use persistent reorgnization job list.
|
||||
// start a reorgnization job
|
||||
go func() {
|
||||
d.reOrgDoneCh <- f()
|
||||
}()
|
||||
|
||||
waitTimeout := chooseLeaseTime(d.lease, waitReorgTimeout)
|
||||
|
||||
|
||||
@ -294,7 +294,9 @@ func (d *ddl) runJob(t *meta.Meta, job *model.Job) error {
|
||||
case model.ActionDropIndex:
|
||||
err = d.onIndexDrop(t, job)
|
||||
case model.ActionAddConstraint:
|
||||
log.Fatal("Doesn't support change constraint online")
|
||||
case model.ActionDropConstraint:
|
||||
log.Fatal("Doesn't support change constraint online")
|
||||
default:
|
||||
// invalid job, cancel it.
|
||||
job.State = model.JobCancelled
|
||||
|
||||
Reference in New Issue
Block a user