Guilhem Bichot
12e822039d
Fix for BUG#42980 "Client doesn't set NUM_FLAG for DECIMAL and TIMESTAMP":
...
DECIMAL and TIMESTAMP used to have NUM_FLAG, but NEWDECIMAL was forgotten.
It's correct that TIMESTAMP does not have the flag nowadays (manual will be updated, connectors
developers will be notified).
client/mysqldump.c:
IS_NUM_FIELD(f) removed and replaced by its definition (f>flags & NUM_FLAG).
include/mysql.h:
- IS_NUM_FIELD() is removed because name is too close to IS_NUM() and it is not used a lot
- INTERNAL_NUM_FIELD() is removed:
* it forgets to test NEWDECIMAL (when IS_NUM() was updated for NEWDECIMAL we forgot
to update INTERNAL_NUM_FIELD()), that's why client didn't mark NEWDECIMAL with NUM_FLAG (a bug).
* it has an obsolete test for length of the TIMESTAMP field: test became accidentally wrong when length
of TIMESTAMP was changed to always be 19 (when the format was changed from YYYYMMDDhhmmss to
YYYY-MM-DD hh:mm:ss), never 8 or 14 anymore. That obsolete test caused TIMESTAMP to lose NUM_FLAG,
which was an accidental but good change (see below).
* IS_NUM() should be used instead
- IS_NUM(f) is changed: TIMESTAMP used to be parsable as a number without quotes (when it was formatted as
"YYYYMMDDhhmmss"); but it is not anymore (now that it is "YYYY-MM-DD hh:mm:ss"), so it should not have NUM_FLAG
(mysqldump needs to quote TIMESTAMP values), so IS_NUM() should return false for it.
libmysqld/lib_sql.cc:
use IS_NUM() instead of INTERNAL_NUM_FIELD()
mysql-test/r/bigint.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/r/metadata.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/r/mysqldump.result:
DECIMAL columns are not quoted anymore by mysqldump. Which is ok, the parser does not need '' for them
mysql-test/r/ps_2myisam.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/r/ps_3innodb.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/r/ps_4heap.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/r/ps_5merge.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/suite/ndb/r/ps_7ndb.result:
result change: NEWDECIMAL fields now have NUM_FLAG (32768)
mysql-test/t/metadata.test:
test for BUG#42980
sql-common/client.c:
use IS_NUM() instead of INTERNAL_NUM_FIELD()
2009-09-30 12:25:50 +02:00
..
2009-08-25 15:56:50 +02:00
2009-03-06 15:56:17 +01:00
2008-12-09 17:31:22 +04:00
2009-08-27 15:22:19 +05:00
2009-05-15 12:15:56 +02:00
2009-09-10 11:58:13 +05:00
2009-08-20 14:30:59 +02:00
2009-02-09 22:00:15 +01:00
2009-07-13 18:11:16 +03:00
2009-07-13 18:11:16 +03:00
2009-07-10 15:00:34 +03:00
2009-09-05 09:40:18 +02:00
2009-05-21 13:06:43 +05:00
2009-01-15 14:58:32 +03:00
2009-01-31 22:04:57 -02:00
2009-02-05 21:47:23 +01:00
2009-05-15 12:15:56 +02:00
2009-02-09 22:00:15 +01:00
2009-05-25 17:19:20 +02:00
2009-05-11 20:54:00 -03:00
2009-06-08 20:03:01 -03:00
2009-09-04 12:27:10 +05:30
2009-02-05 13:49:32 +04:00
2009-05-15 12:15:56 +02:00
2009-03-19 12:20:28 +04:00
2009-06-25 13:44:50 +05:00
2009-07-24 11:27:23 +05:00
2009-09-07 13:42:54 +08:00
2009-06-04 14:35:29 +05:00
2009-05-05 11:55:22 +05:00
2008-12-23 18:21:01 +04:00
2009-01-13 23:29:11 +01:00
2009-05-15 12:15:56 +02:00
2009-05-15 12:15:56 +02:00
2009-02-03 15:16:24 -02:00
2009-07-11 23:44:29 +05:00
2009-03-03 21:34:18 +01:00
2009-07-15 14:20:56 +02:00
2009-09-06 00:42:17 +04:00
2009-05-15 12:15:56 +02:00
2009-03-11 17:30:56 -03:00
2009-05-15 12:15:56 +02:00
2009-08-27 15:17:09 +02:00
2008-12-16 19:09:09 +01:00
2009-05-15 12:15:56 +02:00
2009-05-15 12:15:56 +02:00
2009-09-04 12:39:56 +05:00
2009-05-15 12:15:56 +02:00
2009-03-03 21:34:18 +01:00
2009-03-03 21:34:18 +01:00
2009-03-06 15:56:17 +01:00
2009-05-15 12:15:56 +02:00
2008-12-17 17:24:34 +04:00
2008-12-17 17:24:34 +04:00
2009-07-15 15:43:45 +05:30
2009-06-19 11:27:19 +02:00
2009-05-21 13:06:43 +05:00
2009-05-27 14:20:57 +04:00
2009-04-17 18:52:57 +03:00
2009-04-27 15:05:01 +05:00
2009-09-10 03:18:29 -06:00
2009-04-01 16:02:26 +05:00
2008-12-12 17:16:25 +04:00
2009-05-25 11:00:40 +03:00
2009-07-21 19:56:35 +02:00
2009-03-27 10:18:06 +08:00
2009-02-06 18:25:08 +01:00
2009-06-16 16:36:15 +02:00
2009-09-10 15:30:03 +05:00
2009-01-23 13:22:05 +01:00
2009-04-29 07:59:10 +05:00
2009-06-17 16:58:33 +02:00
2009-02-27 09:41:39 +02:00
2009-02-02 22:20:25 +01:00
2009-05-29 15:37:54 +02:00
2009-01-13 13:09:12 +02:00
2009-02-26 18:17:06 +01:00
2009-08-30 11:03:37 +04:00
2009-08-21 10:55:35 +05:00
2009-01-16 17:38:38 +02:00
2009-05-06 15:00:14 +05:30
2009-08-25 17:53:43 +02:00
2009-03-14 21:58:23 +03:00
2009-08-07 22:04:53 +02:00
2009-08-07 22:04:53 +02:00
2009-07-06 18:20:17 -04:00
2009-04-02 13:00:44 +02:00
2009-07-10 17:05:53 +05:30
2009-01-31 14:10:43 -02:00
2009-01-08 10:31:34 -02:00
2008-12-14 13:31:13 -07:00
2008-12-14 13:31:13 -07:00
2009-06-25 15:20:26 +05:30
2009-05-19 13:50:28 +05:30
2009-07-10 16:06:07 +05:30
2009-07-10 16:06:07 +05:30
2009-02-20 16:56:32 +01:00
2009-06-22 16:58:00 +05:30
2009-02-09 19:03:52 +04:00
2009-02-09 19:03:52 +04:00
2009-01-09 14:04:47 +02:00
2009-01-09 14:04:47 +02:00
2009-02-20 11:12:06 +02:00
2009-07-07 15:52:34 +03:00
2009-07-30 16:31:45 +02:00
2009-05-06 17:11:08 +02:00
2009-09-17 11:59:43 +05:30
2009-01-13 15:14:11 +01:00
2009-04-15 17:16:08 +05:30
2009-08-12 16:39:50 +02:00
2009-09-04 15:20:58 +02:00
2009-04-28 20:12:18 +02:00
2009-04-09 14:38:50 +05:00
2009-08-28 18:49:16 -03:00
2009-08-28 18:49:16 -03:00
2009-04-03 16:46:00 -03:00
2009-02-02 22:20:25 +01:00
2009-03-05 15:22:33 +01:00
2009-01-23 13:22:05 +01:00
2009-06-15 20:27:27 -03:00
2009-08-27 15:17:09 +02:00
2009-03-11 17:30:56 -03:00
2009-05-15 12:15:56 +02:00
2009-09-09 14:38:50 +05:00
2009-09-09 14:38:50 +05:00
2009-09-09 14:38:50 +05:00
2009-08-28 16:13:27 +02:00
2009-02-17 18:22:48 +04:00
2009-02-18 16:09:46 +04:00
2009-08-14 00:49:28 +05:00
2009-09-30 12:25:50 +02:00
2009-06-08 19:18:31 -03:00
2009-02-09 22:00:15 +01:00
2009-04-06 12:31:17 +05:30
2009-04-06 12:31:17 +05:30
2009-05-04 14:35:16 +05:30
2009-09-17 16:33:23 +05:00
2009-04-30 16:33:44 +05:30
2009-04-07 17:06:15 +05:30
2009-07-28 16:59:38 -03:00
2009-03-25 11:47:41 +03:00
2009-06-17 20:10:48 +04:00
2009-07-30 17:51:25 -07:00
2009-04-02 18:34:18 -04:00
2009-09-07 13:42:54 +08:00
2009-05-08 21:24:15 +04:00
2009-05-20 18:31:10 -07:00
2009-05-22 10:38:17 -04:00
2009-03-02 11:03:13 +01:00
2009-07-31 22:14:52 +05:00
2009-08-07 22:04:53 +02:00
2009-09-02 11:17:33 +02:00
2009-04-30 12:26:11 +02:00
2009-09-18 16:44:11 +02:00
2009-02-05 13:49:32 +04:00
2009-05-25 10:00:18 -03:00
2009-08-07 13:51:40 +02:00
2009-07-31 22:14:52 +05:00
2009-02-03 14:45:17 +01:00
2009-02-05 21:47:23 +01:00
2009-06-19 11:27:19 +02:00
2009-04-17 16:00:53 -04:00
2009-04-17 16:00:53 -04:00
2009-09-04 15:20:58 +02:00
2009-01-08 15:16:44 +01:00
2009-08-12 12:03:05 +02:00
2009-02-18 21:29:30 +01:00
2008-12-16 12:44:18 +01:00
2009-01-13 23:12:16 +01:00
2008-12-10 19:29:22 +01:00
2009-09-16 10:52:43 +04:00
2009-04-17 16:00:53 -04:00
2009-07-27 16:50:43 +05:30
2009-08-28 12:55:59 +02:00
2009-07-27 16:50:43 +05:30
2009-09-10 11:15:39 +02:00
2009-08-21 17:38:29 +02:00
2009-06-10 10:59:49 +02:00
2009-06-10 10:59:49 +02:00
2009-05-05 17:03:23 -04:00
2009-04-01 10:58:55 +02:00
2009-09-04 17:02:17 -03:00
2009-08-27 15:17:09 +02:00
2009-05-27 16:05:29 +03:00
2009-02-23 09:03:31 +01:00
2009-06-17 16:28:11 +02:00
2009-02-13 17:26:20 -02:00
2009-01-30 15:44:49 +02:00
2009-03-06 15:56:17 +01:00
2009-02-11 10:27:52 +01:00
2009-02-19 17:20:44 +04:00
2009-06-26 19:57:42 +00:00
2009-03-26 20:17:27 -03:00
2009-08-27 15:17:09 +02:00
2009-03-06 15:56:17 +01:00
2009-09-10 03:18:29 -06:00
2009-09-10 03:18:29 -06:00
2009-09-10 03:18:29 -06:00
2009-09-10 03:18:29 -06:00
2009-09-10 03:18:29 -06:00
2009-09-10 03:18:29 -06:00
2009-03-10 16:54:24 +01:00
2009-07-29 22:07:08 +02:00
2009-04-28 20:42:17 +02:00
2009-05-27 18:19:44 +03:00
2009-07-03 10:19:32 +02:00
2009-03-06 15:56:17 +01:00
2009-02-05 21:47:23 +01:00
2009-09-04 13:14:54 +05:00
2009-06-12 18:11:19 -03:00
2009-03-03 21:34:18 +01:00
2009-03-03 21:34:18 +01:00
2009-03-03 21:34:18 +01:00
2008-12-17 17:23:21 +04:00
2009-08-27 15:17:09 +02:00
2009-06-10 11:58:36 +03:00
2009-03-05 08:20:01 -03:00
2009-07-21 19:55:33 +02:00
2009-09-03 18:03:46 +03:00
2009-08-31 16:40:35 +03:00
2008-12-13 19:42:12 +00:00
2009-02-05 21:47:23 +01:00
2009-02-02 13:36:03 +02:00
2009-01-07 10:11:37 -02:00
2009-01-12 17:40:29 +01:00
2009-02-05 21:47:23 +01:00
2009-06-25 15:52:50 +05:00
2009-02-19 18:24:25 -05:00
2009-06-22 14:51:33 +02:00
2009-03-11 14:54:57 -06:00
2008-12-09 17:31:22 +04:00
2009-01-13 15:04:28 +01:00
2009-02-13 19:07:03 +01:00
2009-02-14 18:36:57 +03:00
2009-08-24 16:47:08 -03:00
2009-05-15 12:16:00 +04:00
2009-01-31 02:08:41 +01:00
2009-09-07 11:57:22 +02:00
2009-05-15 12:11:07 +05:00
2009-08-25 15:56:50 +02:00
2009-03-03 21:34:18 +01:00
2009-05-10 21:20:35 +05:00
2009-04-28 20:12:18 +02:00
2009-03-26 19:12:19 +01:00
2009-04-06 13:42:33 +02:00
2008-12-13 19:42:12 +00:00
2009-06-19 11:27:19 +02:00
2009-08-21 17:41:48 +03:00
2009-08-31 17:09:09 +03:00
2009-03-06 15:56:17 +01:00
2008-12-17 19:45:34 +04:00
2009-09-10 13:49:49 +05:00
2009-02-12 11:52:01 +02:00
2009-06-25 12:25:23 -03:00
2009-04-01 13:40:33 +05:00