Commit Graph

35 Commits

Author SHA1 Message Date
5a283a98dd plan/executor: make semi joins null and empty aware (#9051) 2019-02-25 15:42:38 +08:00
09a5c8028e plan: derive col is not null from col op col conditions (#8603)
Check whether the `op` condition is null rejected, if yes, derive
`col is not null` for both sides of inner join, and for inner side
of outer join.

Also, remove duplicate conditions before pushing them down. Check
if the condition is mutable before removing duplicates.

For AntiSemiJoin, AntiLeftOuterSemiJoin and LeftOuterSemiJoin, do
not generate new `is not null` conditions.
2019-01-30 10:53:46 +08:00
d9e02b76dd expression: remove redundant "errors.Trace()" in "expression" package (#8609) 2018-12-07 12:20:31 +08:00
d42a4b34c5 expression: a constraint propagate framework mainly for partition pruning (#7643) 2018-11-28 21:44:18 +08:00
32b1dbd8d5 *: rename "github.com/pkg/errors" to "github.com/pingcap/errors" (#8136)
We import "github.com/pkg/errors" in the code, and actually put
the "github.com/pingcap/errors" there in the vendor path.
That's a dirty hack, and prevent the introduce of Go module.
2018-11-01 16:09:07 +08:00
9ec7515743 *: Add few error checks in tests, clean error messages and fix a misspell (#8101) 2018-10-31 18:50:43 +08:00
89dda9d9a8 *: move parser to a separate repository (#8036) 2018-10-25 11:12:10 +08:00
bfc12cd8de util: move disjoint set to util package (#7950) 2018-10-18 20:23:45 +08:00
6064d6482f plan: propagate constant over outer join (#7794)
- extract `outerCol = const` from join conditions and filter conditions,
  substitute `outerCol` in join conditions with `const`;
- extract `outerCol = innerCol` from join conditions, derive new join
  conditions based on this column equal condition and `outerCol` related
  expressions in join conditions and filter conditions;
2018-10-16 14:54:09 +08:00
177c155161 plan: exclude IsNull from constant propagation (#7835) 2018-10-08 14:47:13 +08:00
cb03f2bec1 move from juju/errors to pkg/errors (#7151) 2018-09-12 15:42:20 +08:00
7f37bad60f expression: propagate more filters in PropagateConstant (#7276) 2018-08-31 00:11:04 +08:00
06021c7cfe remove types.Row interface (#7170) 2018-07-27 13:45:03 +08:00
cd63332ebf expression, plan: extract the same part from DNF's leaves. (#5831) 2018-02-26 16:03:05 +08:00
12c87929b8 *:fix some golint && ineffassign && misspell to improve GoReport Result (#5867) 2018-02-23 19:31:05 +08:00
4e1a114e68 *: move package context to sessionctx (#5890) 2018-02-22 18:03:38 +08:00
8b149c3323 Prealloc / collides with package name (#5560) 2018-01-05 19:15:54 +08:00
f1e89cde19 *: use lower-case of github.com/sirupsen/logrus (#5400)
*: rename github.com/Sirupsen/logrus to github.com/sirupsen/logrus

* vendor: update pd

* vendor: update github.com/pingcap/tipb/go-mysqlx
2017-12-14 16:25:58 +08:00
5962f1404e *: prealloced plan aggregation_push_down (#5094) 2017-11-15 12:55:17 +08:00
62433663e5 util/types: change types path (#5007)
* util/types: change types path
2017-11-04 10:37:14 -05:00
3e1d036336 *: log the caller of "terror.Log()" (#4729) 2017-10-10 11:26:43 +08:00
9c2ea17722 *: enforce errcheck in Makefile (#4724)
checks all errors and enable errcheck in Makefile

Fixes https://github.com/pingcap/tidb/issues/4668
2017-10-09 17:16:10 +08:00
ca05619cdf expression: enforce error check (#4716) 2017-10-08 22:29:07 -05:00
88e1666ac6 *: change the log package to logrus (#4452) 2017-09-08 00:45:07 -05:00
71773cf33c *: change "AndAnd", "OrOr" to "LogicAnd", "LogicOr" respectively (#3874) 2017-07-25 15:53:02 +08:00
ee312bfd71 expression: Fix code style according to goword (#3123)
ref https://github.com/pingcap/tidb/issues/3120
2017-04-25 23:35:45 +08:00
7699d3fb76 *: refine EvalBool function. (#3139) 2017-04-25 22:07:17 +08:00
fb429408c9 *: make schema as a pointer. (#2533) 2017-01-23 16:23:47 +08:00
96ee4446e3 *: refactor function. (#2499) 2017-01-22 18:10:38 +08:00
f145a32063 *: refactor apply plan and executor. (#2411) 2017-01-22 11:06:17 +08:00
42dd3c8759 expression: fix shadow warning (#2354) 2016-12-30 11:56:14 +08:00
a28ab3eb73 *: add GetArgs interface (#2343) 2016-12-29 19:10:01 +08:00
5f96f67cbc *: change schema from []*Column to struct (#2321) 2016-12-27 14:02:19 +08:00
74a1c9935d *: add StatementContext argument to functions. (#2157)
Add StatementContext argument to more functions where it is needed.
2016-12-02 23:28:11 +08:00
f0db619009 *: refactor constant propagation. (#2087) 2016-11-27 16:21:12 +08:00