Commit Graph

58 Commits

Author SHA1 Message Date
c917cd3d3d charest: add all mysql character information in parser (#34210)
close pingcap/tidb#31598
2022-04-26 10:54:51 +08:00
946fa58418 server, types: rule out JSON types from new charset framework (#31388)
close pingcap/tidb#31366
2022-01-10 15:29:41 +08:00
0c19f92741 encoding: refactor transform to avoid the misuse buffer (#31480)
close pingcap/tidb#31488
2022-01-10 12:13:41 +08:00
61d13b561c encoding: skip utf8 charset validation in some cases (#31061)
close pingcap/tidb#31014
2021-12-28 17:51:49 +08:00
ab35db14a6 *: refactor encoding and uniform usages (#30288) 2021-12-20 15:27:46 +08:00
04a9618f5c server: support decoding prepared string args to character_set_client (#30723) 2021-12-15 12:14:34 +08:00
950a274afc golangci-lint: support durationcheck (#30027) 2021-12-14 21:10:35 +08:00
e2e6e5561b encoding: refactor the character encoding (#29935) 2021-11-22 16:59:49 +08:00
9f8c053d06 parser: refactor encode and decode (#28917)
* refactor encoding

* add a simple test case for encoding

Co-authored-by: tangenta <tangenta@126.com>
Co-authored-by: Ti Chi Robot <ti-community-prow-bot@tidb.io>
2021-10-19 15:50:33 +08:00
xhe
94e30df8e2 parser: fix compiling, add unit tests (#28700) 2021-10-11 23:15:25 +08:00
62bc4d5b54 cmd, server: support system variable character_set_results (#27875) 2021-10-11 16:17:25 +08:00
680de922ed *: fix license header (#28085) 2021-09-17 22:26:41 +08:00
7755d25aba *: Integrate SkyWalking-eyes to check license headers in CI and fix licenses headers (#27198) 2021-08-16 18:52:00 +08:00
32d8cad845 server: double type column from table should ignore its decimal (#21788)
Signed-off-by: lzmhhh123 <lzmhhh123@gmail.com>
2020-12-22 11:27:02 +08:00
499a31f3c3 server: fix float fmt returned to mysql client (#21660) 2020-12-11 15:37:16 +08:00
d19a21d92a ddl, server, session: make gocritic happy (#21544) 2020-12-08 12:09:48 +08:00
1a91c1a10c executor: fix sum(double) result if value is +Inf or -Inf (#21058) 2020-11-25 11:21:54 +08:00
27c59c7363 server: make dump binary time more compatible with MySQL (#21127) 2020-11-19 12:03:47 +08:00
b8685c5dbf executor: fix float data result (#20525) 2020-10-27 11:37:35 +08:00
d8155e9b66 executor: fix float data accuracy (#20440) 2020-10-15 14:26:25 +08:00
8f188b567a server: remove useless code (#15568) 2020-09-11 10:25:25 +08:00
25bd46b68f server: dump time length as 0 directly for zero value in date/datetime/timestamp type for prepare stmt (#18825) 2020-08-10 13:55:03 +08:00
efa179c194 server: fix potential timezone related bugs caused by time.Local (#14572) 2020-02-15 20:52:58 +08:00
d006443194 type: encapsulate Time API (#14288) 2019-12-31 12:41:09 +08:00
29b872c6aa server: increase test coverage (#10830)
* fixed a potential panic in conn.go
* added more tests in conn_test.go/util_test.go
* added column_test.go/packetio_test.go
2019-06-24 20:30:04 +08:00
e9653675dd *: remove errors.Trace in main handle path (#10033) 2019-04-04 14:27:15 +08:00
7528a059cf executor/server/session: add extra info message sent to mysql client (#8285) 2018-12-19 15:32:49 +08:00
3c0d0534f2 server,types: convert zero input correctly for column type year (#8292) 2018-11-14 15:25:08 +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
89dda9d9a8 *: move parser to a separate repository (#8036) 2018-10-25 11:12:10 +08:00
f4d41273ba server: allow cors http request (#7939) 2018-10-21 11:53:36 +08:00
cb03f2bec1 move from juju/errors to pkg/errors (#7151) 2018-09-12 15:42:20 +08:00
d567770076 server: fix prepare result for zero timestamp/time/datetime (#7415) 2018-08-20 15:25:51 +08:00
06021c7cfe remove types.Row interface (#7170) 2018-07-27 13:45:03 +08:00
9cf670a324 *: cut off duration.fsp in chunk (#7043) 2018-07-17 15:36:27 +08:00
2bcef0fe71 server: support ComChangeUser (#6623) (#6638) 2018-05-24 19:09:45 +08:00
951bc41566 server: use scientific notation to format float value. (#6160) 2018-03-28 19:45:25 +08:00
88b8740724 *: avoid the generation of mysql.TypeNewDate (#5705) 2018-01-23 21:41:02 +08:00
81652dbeef *: remove returned value isNull in Row methods. (#5131) 2017-11-17 11:12:41 +08:00
66c19def93 util/codec: support decode data to chunk. (#5066) 2017-11-13 18:34:22 +08:00
8fd5c7de6e server: use types.Row to write result set. (#5056) 2017-11-10 15:41:02 +08:00
62433663e5 util/types: change types path (#5007)
* util/types: change types path
2017-11-04 10:37:14 -05:00
ad1c532ea5 *: remove unused package and functions (#5003)
* *: remove unused package and functions
2017-11-04 03:36:25 -05:00
91196a2dae server: reduce "growslice" in "dumpRowValuesBinary" (#4916) 2017-11-02 13:08:36 +08:00
665f62929d *: make "unconvert" happy (#4700) 2017-09-30 15:53:01 +08:00
fc209cb1df *: rewrite hex and bit literals (#4415) 2017-09-07 16:28:24 +08:00
1dc7bbe28b *: use FieldType.Decimal to control the decimal length of double values to be shown in client (#4191) 2017-08-15 23:39:59 +08:00
1e4bf4775c document store: add JSON type and codec. (#3248)
Document store: add JSON type and codec.

The JSON binary representation is same with MySQL 5.7. we prefer
this not bson because 1) bson only supports JSON compound types
but not JSON primitive types, and 2) this representation is better
than bson on random access.

This PR now can support these  statements:
```
CREATE TABLE t (a json_field);
INSERT INTO t (a) values ('{"a": "b"}');
SELECT * FROM t;
```

JSON codec uses MySQL 5.7 compatible format, which doesn't support use JSON field as key or index. We will limit this in tidb later.
2017-05-17 12:00:34 +08:00
9f08180d7d information_schema: Fill information_schema.key_column_usage (#2721) 2017-05-12 20:27:43 +08:00
5aec72ce81 expression,plan: fix some issues of ROUND func (#2461) 2017-01-22 11:35:26 +08:00