Skip to content

Commit

Permalink
Merge branch 'master' into huachaohuang/update-pd-client
Browse files Browse the repository at this point in the history
  • Loading branch information
huachaohuang authored Oct 24, 2016
2 parents 5e9d4c2 + dacb392 commit 2cb3709
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 9 deletions.
2 changes: 2 additions & 0 deletions ddl/ddl_db_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -392,6 +392,7 @@ func sessionExec(c *C, s kv.Storage, sql string) {
se, err := tidb.CreateSession(s)
c.Assert(err, IsNil)
_, err = se.Execute("use test_db")
c.Assert(err, IsNil)
rs, err := se.Execute(sql)
c.Assert(err, IsNil, Commentf("err:%v", errors.ErrorStack(err)))
c.Assert(rs, IsNil)
Expand Down Expand Up @@ -672,6 +673,7 @@ func (s *testDBSuite) TestTruncateTable(c *C) {

is = sessionctx.GetDomain(ctx).InfoSchema()
newTblInfo, err := is.TableByName(model.NewCIStr("test"), model.NewCIStr("t"))
c.Assert(err, IsNil)
c.Assert(newTblInfo.Meta().ID, Greater, oldTblID)

// verify that the old table data has been deleted by background worker.
Expand Down
20 changes: 20 additions & 0 deletions ddl/index_change_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -285,6 +285,9 @@ func (s *testIndexChangeSuite) checkAddPublic(d *ddl, ctx context.Context, write
return errors.Trace(err)
}
err = checkIndexExists(ctx, publicTbl, 6, 6, false)
if err != nil {
return errors.Trace(err)
}

var rows [][]types.Datum
publicTbl.IterRecords(ctx, publicTbl.FirstKey(), publicTbl.Cols(),
Expand Down Expand Up @@ -312,21 +315,29 @@ func (s *testIndexChangeSuite) checkDropWriteOnly(d *ddl, ctx context.Context, p
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, publicTbl, 8, 8, true)
if err != nil {
return errors.Trace(err)
}

// WriteOnlyTable update t set c2 = 7 where c1 = 8 and c2 = 8
err = writeTbl.UpdateRecord(ctx, 8, types.MakeDatums(8, 8), types.MakeDatums(8, 7), touchedMap(writeTbl))
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, publicTbl, 7, 8, true)
if err != nil {
return errors.Trace(err)
}

// WriteOnlyTable delete t where c1 = 8
err = writeTbl.RemoveRecord(ctx, 8, types.MakeDatums(8, 7))
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, publicTbl, 7, 8, false)
if err != nil {
return errors.Trace(err)
Expand All @@ -340,25 +351,34 @@ func (s *testIndexChangeSuite) checkDropDeleteOnly(d *ddl, ctx context.Context,
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, writeTbl, 9, 9, true)
if err != nil {
return errors.Trace(err)
}

// DeleteOnlyTable insert t values (10, 10)
_, err = delTbl.AddRecord(ctx, types.MakeDatums(10, 10))
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, writeTbl, 10, 10, false)
if err != nil {
return errors.Trace(err)
}

// DeleteOnlyTable update t set c2 = 10 where c1 = 9
err = delTbl.UpdateRecord(ctx, 9, types.MakeDatums(9, 9), types.MakeDatums(9, 10), touchedMap(delTbl))
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, writeTbl, 9, 9, false)
if err != nil {
return errors.Trace(err)
}

err = checkIndexExists(ctx, writeTbl, 10, 9, false)
if err != nil {
return errors.Trace(err)
Expand Down
20 changes: 12 additions & 8 deletions plan/predicate_push_down.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,17 @@ import (
"github.com/pingcap/tidb/util/types"
)

var (
inequalityFuncs = map[string]string{
ast.LT: ast.LT,
ast.GT: ast.GT,
ast.LE: ast.LE,
ast.GE: ast.GE,
ast.NE: ast.NE,
ast.Like: ast.Like,
}
)

func addSelection(p Plan, child LogicalPlan, conditions []expression.Expression, allocator *idAllocator) error {
selection := &Selection{
Conditions: conditions,
Expand Down Expand Up @@ -154,14 +165,7 @@ func propagateConstant(conditions []expression.Expression) []expression.Expressi
if len(multipleEqualities) == 0 {
return conditions
}
inequalityFuncs := map[string]string{
ast.LT: ast.LT,
ast.GT: ast.GT,
ast.LE: ast.LE,
ast.GE: ast.GE,
ast.NE: ast.NE,
ast.Like: ast.Like,
}

type inequalityFactor struct {
FuncName string
Factor []*expression.Constant
Expand Down
2 changes: 1 addition & 1 deletion util/charset/charset.go
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ func GetDefaultCollation(charset string) (string, error) {
}
c, ok := charsets[charset]
if !ok {
return "", errors.Errorf("Unkown charset %s", charset)
return "", errors.Errorf("Unknown charset %s", charset)
}
return c.DefaultCollation.Name, nil
}
Expand Down

0 comments on commit 2cb3709

Please sign in to comment.