Commit Graph

84 Commits

Author SHA1 Message Date
296f4a6cf3 util/types: refact Time introduce a TimeInternal interface (#2098)
Go time representation is not compatible with mysql, this
commit is a prepare before the code refact.

timeInternal is a interface for time representation, and it
would make the refact more smooth.
2016-11-29 21:04:59 +08:00
5230f5eabd variable: define StatementContext. (#2121)
StatementContext is used to hold statement execution mode and state.
As every computation need this, there are many API changes.
2016-11-29 14:25:38 +08:00
3c349259e4 *: basic support for builtin function STR_TO_DATE (#2078) 2016-11-28 14:17:32 +08:00
ea894e8b77 *: Add a function GenByArgs for Error (#2033)
*: Add a function GenByArgs for Error
2016-11-27 13:18:43 +08:00
73f2ffad90 varsutil: remove dependency on 'types' for 'variable' package (#2095)
* varsutil: remove dependency on 'types' for 'variable' package

'variable' package will be used in 'types', remove dependency on 'types' by
moving functions to a new 'varsutil' package.

Also extract 'SetExec' from 'SimpleExec'
2016-11-25 13:44:49 +08:00
9cca7b0b02 types: move Bit, Enum, Set, Hex to types package (#2085)
Consistent with Time and MyDecimal.
2016-11-24 12:28:55 +08:00
b19cc75a94 mysql, types: move MyDecimal and Time from 'mysql' to 'types' package. (#2082)
So we don't need to handle sql mode in 'mysql' package, avoid potential dependency cycle.
2016-11-24 10:50:31 +08:00
0af8520a78 sessionctx/variable: remove dependency on context package. (#2064)
Makes using session variable easier and faster.
Prepare for use session variable to handle data truncated error.
2016-11-23 14:39:48 +08:00
bb93112bda fix bugs (#2020) 2016-11-17 21:46:19 +08:00
421ceeb8fa *: make golint happy. 2016-11-15 11:12:24 +08:00
1c6c145f94 *: Set custom verbose flag to true (#1956)
* *: set custom verbose flag to true

* *: update .gitignore
2016-11-05 18:00:13 +08:00
85c0954dc2 support builtin function from_unixtime (#1929) 2016-11-04 13:15:55 +08:00
75f0eb98cb tiny refactor: normalize functions' names (#1863) 2016-10-24 11:44:05 +08:00
6dec14119a Fix typos (#1714) 2016-09-09 22:58:47 +08:00
5a3f87d099 support unhex. (#1675) 2016-09-01 19:25:04 +08:00
6de67d3695 *: do not coerce int and uint to uint (#1671)
partially revert previous PR
2016-09-01 14:14:07 +08:00
aabb7664ef *: Support ceil() and ceiling() (#1666)
* *: support ceil and ceiling
2016-09-01 10:53:02 +08:00
e508a23234 util/types: fix CoerceDatum function behavior (#1667)
* util/types: fix CoerceDatum function behavior
2016-08-31 20:15:54 +08:00
a09d282711 executor: tiny clean up (#1653)
* executor: tiny clean up

* replace more time.Now().Sub() with time.Since()
2016-08-29 06:20:23 -05:00
e31b281ee7 *: use new MyDecimal implementation. (#1611) 2016-08-22 20:24:39 +08:00
da6ceb949b add constant folding (#1534) 2016-08-02 15:45:58 +08:00
4a4faccba3 Add builtin function hex (#1504) 2016-07-28 13:53:54 +08:00
f5a6c962b5 *: Change ctx.Value from interface{} to Datum (#1494) 2016-07-25 10:42:54 +08:00
432df5458b *: aggregate related code cleanup (#1488) 2016-07-23 14:29:52 +08:00
8749945b0c *: add builtin function greatest (#1463) 2016-07-20 11:32:14 +08:00
7654b6b5d5 *: Support sleep function (#1457)
* *: support sleep function

* evaluator: add SQL mode judgement
2016-07-16 13:48:45 +08:00
d4f85c8138 Add get_lock() and key_column_usage table (#1437)
Parsed but ignored. This is used for Ruby's activerecord migrations.
2016-07-13 10:57:05 +08:00
e35c7ce6eb support nested subquery and fix bug of setting variable (#1412) 2016-07-09 20:25:51 +08:00
db4cdcfaec parser: reduce memory allocation (#1408) 2016-07-07 16:42:30 +08:00
452637dccb *: Convert RegexpExpr to ScalarFuntion and check the arguments length of builtin functions (#1388)
* *: convert RegexpExpr to ScalarFuntion and add check arguments length
2016-07-05 12:37:23 +08:00
0450ba0b47 *: unify "See url" format (#1391)
* *: unify "See url" format
2016-07-05 11:21:10 +08:00
5520e266dc *: Convert CaseExpr to ScalarFunction and clean up (#1377)
* *: support CaseExpr to ScalarFunction and tiny clean up
2016-07-04 15:15:44 +08:00
c72917d6e8 support cast and change the name of expression select field. (#1373) 2016-07-04 14:27:07 +08:00
01a42dfb8c *: Convert expression to pbExpr and implement builtin function (#1358)
* *: convert expression to pbExpr and implement the builtin function
2016-06-30 17:16:48 +08:00
234d0be5de *: Support build range, support betweenExpr, inExpr and likeExpr convert to scalarFunc (#1344)
* *: support build range, support betweenExpr, inExpr and likeExpr convert
to scalarFunc
2016-06-27 20:30:16 +08:00
0eac76eb22 support row expression. (#1349)
support row function and row expression.
2016-06-27 16:03:51 +08:00
b3bd0dce4d *: add builtin string function SPACE (#1332) 2016-06-21 15:45:26 +08:00
a4ce312d4b *: Push down where in newTableScan (#1320)
* *: tiny clean up

* *: push down where
2016-06-15 19:48:08 +08:00
004500171e *: Refactor datum arithmetic codes and support Add/Div in xeval. (#1311)
Prepare for aggregate function sum/avg.
2016-06-13 11:24:07 +08:00
e3597b6548 Add Datum.IsNull() fucntion (#1298)
Add IsNull function for Datum to simplify null check.
2016-06-07 23:35:25 +08:00
10359b0052 rewrite executor. (#1294)
* rewrite executor.
2016-06-07 20:32:15 +08:00
d9569a6801 *: Support date_format (#1295)
* *: support date_format

* evaluator: update yearweek function
2016-06-06 18:49:06 +08:00
0373895334 *: Support time (#1282)
* *: support time
2016-06-02 10:48:09 +08:00
75f089d056 util/types: clean up, removed unused code. (#1281) 2016-06-02 10:42:36 +08:00
61532d7c4e *: Support monthname (#1279)
* *: support monthname
2016-06-01 14:02:53 +08:00
f9c31d9130 Hanfei/rewrite plan (#1272) 2016-06-01 13:12:55 +08:00
f09574d826 *: support sql mode (#1263) 2016-05-30 13:16:41 +08:00
86fe54dadc *: Fix issue 1118 (#1259)
* *: fix issue 1118
2016-05-26 12:49:43 +08:00
228f1d7026 support hash join in new plan (#1234)
* support hash join.

* fix some errors

* add test for predicate push down

* change substitutor...

* add bench mark

* change comment

* fix bug.
2016-05-19 15:43:16 +08:00
55ed68ca6c add builtin-reverse func (#1224) 2016-05-13 20:53:55 +08:00