config root man

Current Path : /usr/opt/mysql57/mysql-test/suite/json/t/

FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64
Upload File :
Current File : //usr/opt/mysql57/mysql-test/suite/json/t/json_innodb.test

########### suite/json/t/json_innodb.test                            #
# Tests json functionality that depends on innodb features           #
#                                                                    #
# This test copies some tests originally in json.test                #
######################################################################

# original test case in the bug report
# innodb allows more than three json columns in a table
CREATE TABLE D_21104470 (
  pk int(11) NOT NULL AUTO_INCREMENT,
  col_int_nokey json NOT NULL,
  col_int_key int(11) NOT NULL,
  col_date_key date NOT NULL,
  col_date_nokey json NOT NULL,
  col_time_key time NOT NULL,
  col_time_nokey json NOT NULL,
  col_datetime_key datetime NOT NULL,
  col_datetime_nokey json NOT NULL,
  col_varchar_key varchar(1) NOT NULL,
  col_varchar_nokey json NOT NULL,
  PRIMARY KEY (pk),
  KEY col_int_key (col_int_key),
  KEY col_date_key (col_date_key),
  KEY col_time_key (col_time_key),
  KEY col_datetime_key (col_datetime_key),
  KEY col_varchar_key (col_varchar_key),
  KEY col_int_key_2 (col_int_key,col_date_key,col_time_key,col_datetime_key,col_varchar_key)
) AUTO_INCREMENT=11 DEFAULT CHARSET=latin1;
INSERT INTO D_21104470
VALUES
(1,'{"int1": "6"}',3,
  '2007-06-18','{"date": "2007-06-18"}',
  '00:00:00','{"time": null}',
  '2002-08-20 22:48:00','{"datetime": "2002-08-20 22:48:00.035785"}',
  'd','{"varc": "d"}'),
(2,'{"int1": "2"}',8,
  '2002-10-13','{"date": "2002-10-13"}',
  '00:00:00','{"time": "00:00:00"}',
  '1900-01-01 00:00:00','{"datetime": "1900-01-01 00:00:00"}',
  's','{"varc": "s"}'),
(3,'{"int1": "4"}',1,
  '1900-01-01','{"date": "1900-01-01"}',
  '15:57:25','{"time": "15:57:25.019666"}',
  '2005-08-15 00:00:00','{"datetime": "2005-08-15 00:00:00"}',
  'r','{"varc": "r"}'),
(4,'{"int1": "8"}',8,
  '1900-02-03','{"date": null}',
  '07:05:51','{"time": "07:05:51.006712"}',
  '1900-01-01 00:00:00','{"datetime": "1900-01-01 00:00:00"}',
  'm','{"varc": "m"}'),
(5,'{"int1": "4"}',8,
  '2006-03-09','{"date": "2006-03-09"}',
  '19:22:21','{"time": "19:22:21.057406"}',
  '2008-05-16 08:09:06','{"datetime": "2008-05-16 08:09:06.002924"}',
  'b','{"varc": "b"}'),
(6,'{"int1": "4"}',5,
  '2001-06-05','{"date": "2001-06-05"}',
  '03:53:16','{"time": "03:53:16.001370"}',
  '2001-01-20 12:47:23','{"datetime": "2001-01-20 12:47:23.022022"}',
  'x','{"varc": "x"}'),
(7,'{"int1": "7"}',7,
  '2006-05-28','{"date": "2006-05-28"}',
  '09:16:38','{"time": "09:16:38.034570"}',
  '2008-07-02 00:00:00','{"datetime": "2008-07-02 00:00:00"}',
  'g','{"varc": "g"}'),
(8,'{"int1": "4"}',5,
  '2001-04-19','{"date": "2001-04-19"}',
  '15:37:26','{"time": "15:37:26.028315"}',
  '1900-01-01 00:00:00','{"datetime": "1900-01-01 00:00:00"}',
  'p','{"varc": "p"}'),
(9,'{"int1": "1"}',1,
  '1900-01-01','{"date": "1900-01-01"}',
  '00:00:00','{"time": "00:00:00"}',
  '2002-12-08 11:34:58','{"datetime": "2002-12-08 11:34:58.001571"}',
  'q','{"varc": "q"}'),
(10,'{"int1": "9"}',6,
  '2004-08-20','{"date": "2004-08-20"}',
  '05:03:03','{"time": "05:03:03.047452"}',
  '1900-01-01 00:00:00','{"datetime": "1900-01-01 00:00:00"}',
  'w','{"varc": "w"}');

CREATE TABLE DD_21104470 (
  pk int(11) NOT NULL AUTO_INCREMENT,
  col_int_nokey json NOT NULL,
  col_int_key int(11) NOT NULL,
  col_date_key date NOT NULL,
  col_date_nokey json NOT NULL,
  col_time_key time NOT NULL,
  col_time_nokey json NOT NULL,
  col_datetime_key datetime NOT NULL,
  col_datetime_nokey json NOT NULL,
  col_varchar_key varchar(1) NOT NULL,
  col_varchar_nokey json NOT NULL,
  PRIMARY KEY (pk),
  KEY col_int_key (col_int_key),
  KEY col_date_key (col_date_key),
  KEY col_time_key (col_time_key),
  KEY col_datetime_key (col_datetime_key),
  KEY col_varchar_key (col_varchar_key),
  KEY col_int_key_2 (col_int_key,col_date_key,col_time_key,col_datetime_key,col_varchar_key)
) AUTO_INCREMENT=20 DEFAULT CHARSET=latin1;
INSERT INTO DD_21104470
VALUES
(10,'{"int1": "6"}',3,
  '2002-12-16','{"date": "2002-12-16"}',
  '17:54:20','{"time": "17:54:20.050299"}',
  '2007-04-06 06:20:37','{"datetime": "2007-04-06 06:20:37.035492"}',
  'i','{"varc": "i"}'),
(11,'{"int1": "1"}',1,
  '2005-08-08','{"date": "2005-08-08"}',
  '08:53:47','{"time": "08:53:47.064602"}',
  '2008-03-07 00:00:00','{"datetime": "2008-03-07 00:00:00"}',
  'x','{"varc": "x"}'),
(12,'{"int1": "5"}',2,
  '2004-11-16','{"date": "2004-11-16"}',
  '01:40:28','{"time": "01:40:28.015719"}',
  '2002-01-25 10:15:08','{"datetime": "2002-01-25 10:15:08.014682"}',
  'l','{"varc": "l"}'),
(13,'{"int1": "6"}',7,
  '1900-02-04','{"date": null}',
  '16:37:21','{"time": "16:37:21.055310"}',
  '2001-02-26 23:35:13','{"datetime": "2001-02-26 23:35:13.014897"}',
  'q','{"varc": "q"}'),
(14,'{"int1": "2"}',6,
  '2006-05-14','{"date": "2006-05-14"}',
  '01:00:33','{"time": "01:00:33.038177"}',
  '2001-06-23 13:47:43','{"datetime": "2001-06-23 13:47:43.001775"}',
  'n','{"varc": "n"}'),
(15,'{"int1": "4"}',1,
  '2005-01-19','{"date": "2005-01-19"}',
  '03:06:43','{"time": "03:06:43.059217"}',
  '2007-01-17 05:06:55','{"datetime": "2007-01-17 05:06:55.064405"}',
  'r','{"varc": "r"}'),
(16,'{"int1": "231"}',156,
  '1900-01-01','{"date": "1900-01-01"}',
  '00:00:00','{"time": null}',
  '2001-10-23 00:00:00','{"datetime": "2001-10-23 00:00:00"}',
  'c','{"varc": "c"}'),
(17,'{"int1": "4"}',8,
  '2004-06-25','{"date": "2004-06-25"}',
  '16:13:44','{"time": "16:13:44.008978"}',
  '2003-11-24 04:13:27','{"datetime": "2003-11-24 04:13:27.046820"}',
  'h','{"varc": "h"}'),
(18,'{"int1": "3"}',7,
  '2009-12-22','{"date": "2009-12-22"}',
  '14:09:13','{"time": "14:09:13.028533"}',
  '2007-09-19 14:33:09','{"datetime": "2007-09-19 14:33:09.017132"}',
  'k','{"varc": "k"}'),
(19,'{"int1": "3"}',2,
  '2004-06-25','{"date": "2004-06-25"}',
  '10:09:51','{"time": "10:09:51.017335"}',
  '1900-01-01 00:00:00','{"datetime": "1900-01-01 00:00:00"}',
  't','{"varc": "t"}');

CREATE TABLE insert_select_21104470
SELECT
table3 . col_datetime_nokey AS field1
FROM
  D_21104470 AS table1
  LEFT  JOIN  DD_21104470 AS table2
  LEFT  JOIN DD_21104470 AS table3
  ON table2 . col_int_key <  table3 . col_int_key
  ON  table1 . pk =  table2 . col_int_key
WHERE   table1 . col_int_key >= 3
AND table1 . col_int_key < ( 3 + 7 )
OR table1 . col_int_key >= 3
AND table1 . col_int_key < ( 3 + 25 )
AND table1 . col_int_key != table2 . pk
AND table1 . col_int_key IS  NULL
AND  table1 . pk IS  NULL
OR table1 . col_int_key > 3
GROUP BY field1
ORDER BY field1;

DROP TABLE D_21104470;
DROP TABLE DD_21104470;
DROP TABLE insert_select_21104470;

--echo #
--echo # Bug#21383497 DBUG_ABORT() IN VAL_JSON
--echo #
# This test produces indeterminate results in ndb that depend on the order of evaluation
# The group identifier may be any of the items that compare equal
CREATE TABLE t(a INT PRIMARY KEY);
INSERT INTO t VALUES (1), (2), (3), (4), (5);
SELECT 1 FROM t GROUP BY ST_ASGEOJSON(POINT(1, 1)) WITH ROLLUP;
SELECT JSON_EXTRACT('{"a":1}', '$.a') AS je, COUNT(DISTINCT a)
FROM t GROUP BY je WITH ROLLUP;
SELECT JSON_EXTRACT(NULL, '$.a') AS je, COUNT(DISTINCT a)
FROM t GROUP BY je WITH ROLLUP;
SELECT JSON_EXTRACT('{"a":1}', '$.a') AS je, a, COUNT(DISTINCT a)
FROM t GROUP BY je, a WITH ROLLUP;
SELECT JSON_EXTRACT('{"a":1}', '$.a') AS je, a, COUNT(DISTINCT a)
FROM t GROUP BY a, je WITH ROLLUP;
DROP TABLE t;

--echo #
--echo # Bug#21096340 VIEW WITH QUERY HAVING SUM ON JSON COLUMN RETURNS INVALID DATA
--echo #

--source include/turn_off_only_full_group_by.inc

CREATE TABLE D (
col_varchar_10_latin1 varchar(10) CHARACTER SET latin1,
col_varchar_255_latin1_key varchar(255) CHARACTER SET latin1,
col_int_key int,
pk integer auto_increment,
col_varchar_255_utf8_key varchar(255) CHARACTER SET utf8,
col_int int,
col_varchar_10_utf8 varchar(10) CHARACTER SET utf8,
col_varchar_255_latin1 varchar(255) CHARACTER SET latin1,
col_varchar_255_utf8 varchar(255) CHARACTER SET utf8,
col_varchar_10_latin1_key varchar(10) CHARACTER SET latin1,
col_varchar_10_utf8_key varchar(10) CHARACTER SET utf8,
/*Indices*/
key (col_varchar_255_latin1_key),
key (col_int_key),
primary key (pk),
key (col_varchar_255_utf8_key),
key (col_varchar_10_latin1_key),
key (col_varchar_10_utf8_key)
);

INSERT INTO D VALUES 
('have', 'say', NULL, NULL, 'who', NULL, 'JBIYP', 'he''s', 'VWJOC', 'your', 'VDMAE') ,  
('YQAHN', 'GIKYQ', 3, NULL, 'no', 1933049856,'got', 'icz', 'RMHUR', 'MPCRS', 'so') ,
('had', 'PASVH', 2144141312, NULL, 'look', 808058880, 'czstj', 'z', 'MRRVF', 'UHWEV', 'that') ,  
('BSXXI', 'DLIRG', NULL, NULL, 'zstjzfsu', 1562116096, 'is', 'WKDGV', 'stj', 'tjzf', 'with') ,  
('JFSGY', 'c', 98828288, NULL, 'n', 269418496, 'LDJWY', 'jzfsu', 'QPXVX', 'zfsunwdg', 'we');

ALTER TABLE D MODIFY COLUMN col_int JSON;

# This query is unreliable in ndb. It may return
# SUM(col_int)	col_int
# 4572643328    1933049856 or
# 4572643328	NULL
SELECT SUM(col_int), col_int FROM D AS table1 WHERE table1.pk = table1.pk;

CREATE OR REPLACE VIEW view1 AS SELECT SUM(col_int), col_int FROM D AS table1
WHERE table1.pk = table1.pk;
SELECT * FROM view1;

SELECT  SUM(col_int), col_int FROM D AS table1 WHERE table1.pk = table1.pk;

SELECT * FROM view1;

DROP VIEW view1;
DROP TABLE D;

--source include/restore_sql_mode_after_turn_off_only_full_group_by.inc


Man Man