Skip to content

Commit

Permalink
*: Remove the useless code about DDL owner info (pingcap#3472)
Browse files Browse the repository at this point in the history
* *: remove useless code about the ddl owner
  • Loading branch information
zimulala authored Jun 15, 2017
1 parent bdaf1e9 commit 3b9e5de
Show file tree
Hide file tree
Showing 9 changed files with 5 additions and 154 deletions.
33 changes: 1 addition & 32 deletions ddl/ddl.go
Original file line number Diff line number Diff line change
Expand Up @@ -285,40 +285,9 @@ func (d *ddl) Stop() error {
defer d.m.Unlock()

d.close()

err := kv.RunInNewTxn(d.store, true, func(txn kv.Transaction) error {
t := meta.NewMeta(txn)
owner, err1 := t.GetDDLJobOwner()
if err1 != nil {
return errors.Trace(err1)
}
if owner == nil || owner.OwnerID != d.uuid {
return nil
}

// DDL job's owner is me, clean it so other servers can complete it quickly.
return t.SetDDLJobOwner(&model.Owner{})
})
if err != nil {
return errors.Trace(err)
}

err = kv.RunInNewTxn(d.store, true, func(txn kv.Transaction) error {
t := meta.NewMeta(txn)
owner, err1 := t.GetBgJobOwner()
if err1 != nil {
return errors.Trace(err1)
}
if owner == nil || owner.OwnerID != d.uuid {
return nil
}

// Background job's owner is me, clean it so other servers can complete it quickly.
return t.SetBgJobOwner(&model.Owner{})
})
log.Infof("stop DDL:%s", d.uuid)

return errors.Trace(err)
return nil
}

func (d *ddl) start(ctx goctx.Context) {
Expand Down
16 changes: 0 additions & 16 deletions ddl/ddl_worker.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,22 +80,6 @@ func (d *ddl) isOwner(flag JobType) bool {
return isOwner
}

func (d *ddl) getJobOwner(t *meta.Meta, flag JobType) (*model.Owner, error) {
var owner *model.Owner
var err error

switch flag {
case ddlJobFlag:
owner, err = t.GetDDLJobOwner()
case bgJobFlag:
owner, err = t.GetBgJobOwner()
default:
err = errInvalidJobFlag
}

return owner, errors.Trace(err)
}

// addDDLJob gets a global job ID and puts the DDL job in the DDL queue.
func (d *ddl) addDDLJob(ctx context.Context, job *model.Job) error {
job.Query, _ = ctx.Value(context.QueryString).(string)
Expand Down
12 changes: 2 additions & 10 deletions ddl/stat.go
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,7 @@ func (d *ddl) Stats() (map[string]interface{}, error) {
}

m[ddlSchemaVersion] = ddlInfo.SchemaVer
if ddlInfo.Owner != nil {
m[ddlOwnerID] = ddlInfo.Owner.OwnerID
// LastUpdateTS uses nanosecond.
m[ddlOwnerLastUpdateTS] = ddlInfo.Owner.LastUpdateTS / 1e9
}
// TODO: Get the owner information.
if ddlInfo.Job != nil {
m[ddlJobID] = ddlInfo.Job.ID
m[ddlJobAction] = ddlInfo.Job.Type.String()
Expand All @@ -107,11 +103,7 @@ func (d *ddl) Stats() (map[string]interface{}, error) {

// background DDL info
m[bgSchemaVersion] = bgInfo.SchemaVer
if bgInfo.Owner != nil {
m[bgOwnerID] = bgInfo.Owner.OwnerID
// LastUpdateTS uses nanosecond.
m[bgOwnerLastUpdateTS] = bgInfo.Owner.LastUpdateTS / 1e9
}
// TODO: Get the owner information.
if bgInfo.Job != nil {
m[bgJobID] = bgInfo.Job.ID
m[bgJobAction] = bgInfo.Job.Type.String()
Expand Down
9 changes: 2 additions & 7 deletions executor/executor.go
Original file line number Diff line number Diff line change
Expand Up @@ -171,18 +171,13 @@ func (e *ShowDDLExec) Next() (*Row, error) {
if e.done {
return nil, nil
}

// TODO: Get the DDL owner information.
var ddlOwner, ddlJob string
if e.ddlInfo.Owner != nil {
ddlOwner = e.ddlInfo.Owner.String()
}
if e.ddlInfo.Job != nil {
ddlJob = e.ddlInfo.Job.String()
}

var bgOwner, bgJob string
if e.bgInfo.Owner != nil {
bgOwner = e.bgInfo.Owner.String()
}
if e.bgInfo.Job != nil {
bgJob = e.bgInfo.Job.String()
}
Expand Down
11 changes: 0 additions & 11 deletions inspectkv/inspectkv.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ import (
type DDLInfo struct {
SchemaVer int64
ReorgHandle int64 // it's only used for DDL information.
Owner *model.Owner
Job *model.Job
}

Expand All @@ -45,11 +44,6 @@ func GetDDLInfo(txn kv.Transaction) (*DDLInfo, error) {
info := &DDLInfo{}
t := meta.NewMeta(txn)

// TODO: Get DDL owner information from etcd.
//info.Owner, err = t.GetDDLJobOwner()
//if err != nil {
// return nil, errors.Trace(err)
//}
info.Job, err = t.GetDDLJob(0)
if err != nil {
return nil, errors.Trace(err)
Expand All @@ -76,11 +70,6 @@ func GetBgDDLInfo(txn kv.Transaction) (*DDLInfo, error) {
info := &DDLInfo{}
t := meta.NewMeta(txn)

// TODO: Get background owner information from etcd.
//info.Owner, err = t.GetBgJobOwner()
//if err != nil {
// return nil, errors.Trace(err)
//}
info.Job, err = t.GetBgJob(0)
if err != nil {
return nil, errors.Trace(err)
Expand Down
10 changes: 0 additions & 10 deletions inspectkv/inspectkv_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -141,9 +141,6 @@ func (s *testSuite) TestGetDDLInfo(c *C) {
c.Assert(err, IsNil)
t := meta.NewMeta(txn)

owner := &model.Owner{OwnerID: "owner"}
err = t.SetDDLJobOwner(owner)
c.Assert(err, IsNil)
dbInfo2 := &model.DBInfo{
ID: 2,
Name: model.NewCIStr("b"),
Expand All @@ -158,8 +155,6 @@ func (s *testSuite) TestGetDDLInfo(c *C) {
c.Assert(err, IsNil)
info, err := GetDDLInfo(txn)
c.Assert(err, IsNil)
// TODO: Pass this test.
// c.Assert(info.Owner, DeepEquals, owner)
c.Assert(info.Job, DeepEquals, job)
c.Assert(info.ReorgHandle, Equals, int64(0))
err = txn.Commit()
Expand All @@ -172,9 +167,6 @@ func (s *testSuite) TestGetBgDDLInfo(c *C) {
c.Assert(err, IsNil)
t := meta.NewMeta(txn)

owner := &model.Owner{OwnerID: "owner"}
err = t.SetBgJobOwner(owner)
c.Assert(err, IsNil)
job := &model.Job{
SchemaID: 1,
Type: model.ActionDropTable,
Expand All @@ -184,8 +176,6 @@ func (s *testSuite) TestGetBgDDLInfo(c *C) {
c.Assert(err, IsNil)
info, err := GetBgDDLInfo(txn)
c.Assert(err, IsNil)
// TODO: Pass this test.
// c.Assert(info.Owner, DeepEquals, owner)
c.Assert(info.Job, DeepEquals, job)
c.Assert(info.ReorgHandle, Equals, int64(0))
err = txn.Commit()
Expand Down
41 changes: 0 additions & 41 deletions meta/meta.go
Original file line number Diff line number Diff line change
Expand Up @@ -430,41 +430,11 @@ func (m *Meta) GetTable(dbID int64, tableID int64) (*model.TableInfo, error) {
// to operate DDL jobs, and dispatch them to MR Jobs.

var (
mDDLJobOwnerKey = []byte("DDLJobOwner")
mDDLJobListKey = []byte("DDLJobList")
mDDLJobHistoryKey = []byte("DDLJobHistory")
mDDLJobReorgKey = []byte("DDLJobReorg")
)

func (m *Meta) getJobOwner(key []byte) (*model.Owner, error) {
value, err := m.txn.Get(key)
if err != nil || value == nil {
return nil, errors.Trace(err)
}

owner := &model.Owner{}
err = json.Unmarshal(value, owner)
return owner, errors.Trace(err)
}

// GetDDLJobOwner gets the current owner for DDL.
func (m *Meta) GetDDLJobOwner() (*model.Owner, error) {
return m.getJobOwner(mDDLJobOwnerKey)
}

func (m *Meta) setJobOwner(key []byte, o *model.Owner) error {
b, err := json.Marshal(o)
if err != nil {
return errors.Trace(err)
}
return m.txn.Set(key, b)
}

// SetDDLJobOwner sets the current owner for DDL.
func (m *Meta) SetDDLJobOwner(o *model.Owner) error {
return m.setJobOwner(mDDLJobOwnerKey, o)
}

func (m *Meta) enQueueDDLJob(key []byte, job *model.Job) error {
b, err := job.Encode()
if err != nil {
Expand Down Expand Up @@ -643,7 +613,6 @@ func (m *Meta) GetDDLReorgHandle(job *model.Job) (int64, error) {
// to operate background job, and dispatch them to MR background job.

var (
mBgJobOwnerKey = []byte("BgJobOwner")
mBgJobListKey = []byte("BgJobList")
mBgJobHistoryKey = []byte("BgJobHistory")
)
Expand Down Expand Up @@ -685,16 +654,6 @@ func (m *Meta) DeQueueBgJob() (*model.Job, error) {
return m.deQueueDDLJob(mBgJobListKey)
}

// GetBgJobOwner gets the current background job owner.
func (m *Meta) GetBgJobOwner() (*model.Owner, error) {
return m.getJobOwner(mBgJobOwnerKey)
}

// SetBgJobOwner sets the current background job owner.
func (m *Meta) SetBgJobOwner(o *model.Owner) error {
return m.setJobOwner(mBgJobOwnerKey, o)
}

func (m *Meta) tableStatsKey(tableID int64) []byte {
return []byte(fmt.Sprintf("%s:%d", mTableStatsPrefix, tableID))
}
Expand Down
14 changes: 0 additions & 14 deletions meta/meta_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -230,13 +230,6 @@ func (s *testSuite) TestDDL(c *C) {

t := meta.NewMeta(txn)

owner := &model.Owner{OwnerID: "1"}
err = t.SetDDLJobOwner(owner)
c.Assert(err, IsNil)
ov, err := t.GetDDLJobOwner()
c.Assert(err, IsNil)
c.Assert(owner, DeepEquals, ov)

job := &model.Job{ID: 1}
err = t.EnQueueDDLJob(job)
c.Assert(err, IsNil)
Expand Down Expand Up @@ -282,13 +275,6 @@ func (s *testSuite) TestDDL(c *C) {
lastID = job.ID
}

// DDL background job test
err = t.SetBgJobOwner(owner)
c.Assert(err, IsNil)
ov, err = t.GetBgJobOwner()
c.Assert(err, IsNil)
c.Assert(owner, DeepEquals, ov)

bgJob := &model.Job{ID: 1}
err = t.EnQueueBgJob(bgJob)
c.Assert(err, IsNil)
Expand Down
13 changes: 0 additions & 13 deletions model/ddl.go
Original file line number Diff line number Diff line change
Expand Up @@ -230,19 +230,6 @@ func (s JobState) String() string {
}
}

// Owner is for DDL Owner.
type Owner struct {
OwnerID string `json:"owner_id"`
// LastUpdateTS now uses unix nano seconds
// TODO: Use timestamp allocated by TSO.
LastUpdateTS int64 `json:"last_update_ts"`
}

// String implements fmt.Stringer interface.
func (o *Owner) String() string {
return fmt.Sprintf("ID:%s, LastUpdateTS:%d", o.OwnerID, o.LastUpdateTS)
}

// SchemaDiff contains the schema modification at a particular schema version.
// It is used to reduce schema reload cost.
type SchemaDiff struct {
Expand Down

0 comments on commit 3b9e5de

Please sign in to comment.