~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/r/optimizer.result

  • Committer: Prafulla Tekawade
  • Date: 2010-08-06 11:21:12 UTC
  • mto: (1711.1.21 build) (1725.1.1 build)
  • mto: This revision was merged to the branch mainline in revision 1714.
  • Revision ID: prafulla_t@users.sourceforge.net-20100806112112-7w5u0s3nx9u67nzt
Fix for Bug 586051

1. test_if_ref method which checks whether predicate is already evaluated
   due to ref/eq_ref access or not was incorrectly removing a predicate 
   that was not implicitly evaluated due to ref access (due to presence of filesort ?)
   It was field=NULL predicate.
   Such predicate should be kept and execution engine will filter out rows
   correctly. Removal of such predicate led to returning of rows which had
   NULL for join/predicate columns.
2. field COMP_OP NULL will always false for all fields except when COMP_OP
   is NULL-safe equality operator. Modified range optimizer to return zero
   row count in such cases.
   Query now does not even run. It returns zero result. As such Fix(1) is not
   required but we might hit that case in some other query (I have not tried it
   yet)
3. Fixed Field::val_str to print "NULL" for literal NULL instead of "0". It
   added lot of confusion while debugging.

Show diffs side-by-side

added added

removed removed

Lines of Context:
112
112
PRIMARY KEY (`pk`),
113
113
KEY `col_int_key` (`col_int_key`)
114
114
) ENGINE=InnoDB;
 
115
ALTER TABLE `p` DISABLE KEYS;
 
116
Warnings:
 
117
Note    1031    Table storage engine for 'p' doesn't have this option
115
118
INSERT INTO `p` VALUES (1,NULL),(2,261947392),(3,-1761017856),(4,NULL),(5,NULL),(6,NULL),(7,1941635072),(8,-610992128),(9,NULL),(10,-1486618624),(11,1047199744),(12,5),(13,2),(14,NULL),(15,NULL),(16,-828899328),(17,5),(18,NULL),(19,-1573322752),(20,NULL),(21,1),(22,1080360960),(23,NULL),(24,9),(25,243335168),(26,NULL),(27,2),(28,351469568),(29,NULL),(30,0),(31,1626865664),(32,NULL),(33,NULL),(34,6),(35,NULL),(36,6),(37,NULL),(38,838598656),(39,-1732706304),(40,-120061952),(41,NULL),(42,3),(43,2),(44,8),(45,-1234436096),(46,4),(47,-1542324224),(48,NULL),(49,1607073792),(50,0),(51,9),(52,NULL),(53,NULL),(54,-921174016),(55,-184877056),(56,NULL),(57,-1291059200),(58,0),(59,NULL),(60,565379072),(61,NULL),(62,506855424),(63,NULL),(64,NULL),(65,NULL),(66,5),(67,5),(68,5),(69,2),(70,6),(71,NULL),(72,9),(73,7),(74,-2108555264),(75,6),(76,1057095680),(77,8),(78,-409468928),(79,-438960128),(80,-939393024),(81,-927203328),(82,NULL),(83,-1834680320),(84,NULL),(85,1984561152),(86,8),(87,NULL),(88,8),(89,-326500352),(90,NULL),(91,4),(92,NULL),(93,NULL),(94,-1369833472),(95,NULL),(96,0),(97,31260672),(98,NULL),(99,NULL),(100,0);
 
119
ALTER TABLE `p` ENABLE KEYS;
 
120
Warnings:
 
121
Note    1031    Table storage engine for 'p' doesn't have this option
116
122
DROP TABLE IF EXISTS `n`;
117
123
Warnings:
118
124
Note    1051    Unknown table 'n'
122
128
PRIMARY KEY (`pk`),
123
129
KEY `col_varchar_10_key` (`col_varchar_10_key`)
124
130
) ENGINE=InnoDB;
 
131
ALTER TABLE `n` DISABLE KEYS;
 
132
Warnings:
 
133
Note    1031    Table storage engine for 'n' doesn't have this option
125
134
INSERT INTO `n` VALUES (1,'rdtxodtcmi'),(2,'corrdtxodt'),(3,'v'),(4,'dcorrdtxod'),(5,'s'),(6,'my'),(7,'e'),(8,'qxszmrdcor'),(9,'bqxszmrdco'),(10,'wbqxszmrdc'),(11,'v'),(12,'kywbqxszmr'),(13,'v'),(14,'lngrakywbq'),(15,'umtlngraky'),(16,'could'),(17,'peiywumtln'),(18,'will'),(19,'tell'),(20,'w'),(21,'jenpeiywum'),(22,'cejenpeiyw'),(23,'x'),(24,'vxcejenpei');
 
135
ALTER TABLE `n` ENABLE KEYS;
 
136
Warnings:
 
137
Note    1031    Table storage engine for 'n' doesn't have this option
126
138
CREATE TABLE `d` (
127
139
`pk` int NOT NULL AUTO_INCREMENT,
128
140
`col_varchar_10` varchar(10) DEFAULT NULL,
129
141
PRIMARY KEY (`pk`)
130
142
) ENGINE=InnoDB;
 
143
ALTER TABLE `d` DISABLE KEYS;
 
144
Warnings:
 
145
Note    1031    Table storage engine for 'd' doesn't have this option
131
146
INSERT INTO `d` VALUES (1,'f'),(2,'zdvoleqxer'),(3,'i'),(4,'u'),(5,'q');
 
147
ALTER TABLE `d` ENABLE KEYS;
 
148
Warnings:
 
149
Note    1031    Table storage engine for 'd' doesn't have this option
132
150
CREATE TABLE `h` (
133
151
`col_varchar_10` varchar(10) DEFAULT NULL,
134
152
`pk` int NOT NULL AUTO_INCREMENT,
138
156
KEY `col_varchar_10_key` (`col_varchar_10_key`),
139
157
KEY `col_int_key` (`col_int_key`)
140
158
) ENGINE=InnoDB;
 
159
ALTER TABLE `h` DISABLE KEYS;
 
160
Warnings:
 
161
Note    1031    Table storage engine for 'h' doesn't have this option
141
162
INSERT INTO `h` VALUES ('n',1,'rshrrbmsyd',4),('h',2,'okay',NULL),('ok',3,'i',-802095104),('just',4,'z',6),('hfnrshrrbm',5,'his',8),('f',6,'xhfnrshrrb',1),('h',7,'wxhfnrshrr',7),('wtwxhfnrsh',8,'v',7),('of',9,'cwtwxhfnrs',-1258487808);
 
163
ALTER TABLE `h` ENABLE KEYS;
 
164
Warnings:
 
165
Note    1031    Table storage engine for 'h' doesn't have this option
142
166
CREATE TABLE `a` (
143
167
`pk` int NOT NULL AUTO_INCREMENT,
144
168
PRIMARY KEY (`pk`)
152
176
KEY `col_varchar_10_key` (`col_varchar_10_key`),
153
177
KEY `col_int_key` (`col_int_key`)
154
178
) ENGINE=InnoDB;
 
179
ALTER TABLE `k` DISABLE KEYS;
 
180
Warnings:
 
181
Note    1031    Table storage engine for 'k' doesn't have this option
155
182
INSERT INTO `k` VALUES (1,'bwylrhande','hbwylrhand',-522452992),(2,'how','about',2098200576),(3,'ephbwylrha','pephbwylrh',904331264),(4,'okay','ipephbwylr',-1176633344),(5,'but','one',-1177288704),(6,'tnwkipephb','j',5),(7,'hqtnwkipep','a',9),(8,'with','wdhqtnwkip',NULL),(9,'eyxwdhqtnw','jeyxwdhqtn',2),(10,'right','something',3),(11,'z','ujeyxwdhqt',5),(12,'yyujeyxwdh','we',NULL),(13,'can','syyujeyxwd',0),(14,'s','oh',21037056),(15,'ngvsyyujey','something',1224867840),(16,'gngvsyyuje','qgngvsyyuj',1),(17,'this','really',4),(18,'p','bbuqgngvsy',1865023488),(19,'okay','from',1),(20,'dmbbuqgngv','but',9),(21,'one','rdmbbuqgng',0);
 
183
ALTER TABLE `k` ENABLE KEYS;
 
184
Warnings:
 
185
Note    1031    Table storage engine for 'k' doesn't have this option
156
186
SELECT
157
187
table2 . `pk` AS field4
158
188
FROM p AS table1 LEFT JOIN
185
215
PRIMARY KEY (`pk`),
186
216
KEY `col_int_key` (`col_int_key`)
187
217
) ENGINE=InnoDB;
 
218
ALTER TABLE `i` DISABLE KEYS;
188
219
INSERT INTO `i` VALUES (-480247808,1),(-1066663936,2),(NULL,3),(NULL,4),(-1583808512,5),(NULL,6),(NULL,7),(NULL,8),(0,9),(-219152384,10);
 
220
ALTER TABLE `i` ENABLE KEYS;
189
221
DROP TABLE IF EXISTS `b`;
190
222
CREATE TABLE `b` (
191
223
`col_int_key` int DEFAULT NULL,
194
226
PRIMARY KEY (`pk`),
195
227
KEY `col_int_key` (`col_int_key`)
196
228
) ENGINE=InnoDB;
 
229
ALTER TABLE `b` DISABLE KEYS;
197
230
INSERT INTO `b` VALUES (NULL,7,1);
 
231
ALTER TABLE `b` ENABLE KEYS;
198
232
SELECT table2 .`col_int` field3
199
233
FROM i table1 JOIN b table2 ON table1 .`col_int_key` = table2 .`col_int_key`
200
234
WHERE table1 .`pk` IN ( 4 ) 
207
241
DROP TABLE i;
208
242
DROP TABLE b;
209
243
End Bug#586051 test
210
 
Bug#585628
211
 
- Adding STRAIGHT_JOIN to certain queries results in loss of returned rows
212
 
DROP TABLE IF EXISTS `g`;
213
 
DROP TABLE IF EXISTS `e`;
214
 
DROP TABLE IF EXISTS `m`;
215
 
DROP TABLE IF EXISTS `a`;
216
 
CREATE TABLE `g` (
217
 
`pk` int NOT NULL AUTO_INCREMENT,
218
 
`col_int` int DEFAULT NULL,
219
 
PRIMARY KEY (`pk`)
220
 
) ENGINE=InnoDB;
221
 
INSERT INTO `g` VALUES (1,NULL),(2,1607860224),(3,NULL),(4,822673408),(5,1907556352),(6,NULL),(7,NULL),(8,NULL);
222
 
CREATE TABLE `e` (
223
 
`col_int_key` int DEFAULT NULL,
224
 
`pk` int NOT NULL AUTO_INCREMENT,
225
 
PRIMARY KEY (`pk`),
226
 
KEY `col_int_key` (`col_int_key`)
227
 
) ENGINE=InnoDB;
228
 
INSERT INTO `e` VALUES (NULL,1),(1862205440,2),(1,3),(-517472256,4),(1341587456,5),(5,6);
229
 
CREATE TABLE `m` (
230
 
`col_int` int DEFAULT NULL,
231
 
`pk` int NOT NULL AUTO_INCREMENT,
232
 
PRIMARY KEY (`pk`)
233
 
) ENGINE=InnoDB;
234
 
INSERT INTO `m` VALUES (1,1),(NULL,2),(NULL,3),(-207224832,4),(714801152,5),(-1265106944,6),(2023948288,7),(865599488,8),(1,9),(-1895301120,10),(3,11),(9,12),(5,13),(NULL,14),(NULL,15),(1,16),(-224657408,17),(2,18),(-1219493888,19),(7,20),(1,21),(NULL,22),(NULL,23);
235
 
CREATE TABLE `a` (
236
 
`col_int_key` int DEFAULT NULL,
237
 
`pk` int NOT NULL AUTO_INCREMENT,
238
 
PRIMARY KEY (`pk`),
239
 
KEY `col_int_key` (`col_int_key`)
240
 
) ENGINE=InnoDB;
241
 
SELECT COUNT(table1 .`col_int`)
242
 
FROM g table1 RIGHT JOIN e table2 LEFT JOIN m table3 LEFT JOIN a table5 ON table5 .`col_int_key` ON table2 .`col_int_key` = table3 .`col_int` ON table2 .`pk` ;
243
 
COUNT(table1 .`col_int`)
244
 
27
245
 
SELECT STRAIGHT_JOIN COUNT(table1 .`col_int`)
246
 
FROM g table1 RIGHT JOIN e table2 LEFT JOIN m table3 LEFT JOIN a table5 ON table5 .`col_int_key` ON table2 .`col_int_key` = table3 .`col_int` ON table2 .`pk` /* TRANSFORM_OUTCOME_UNORDERED_MATCH */;
247
 
COUNT(table1 .`col_int`)
248
 
27
249
 
DROP TABLE `a` ;
250
 
DROP TABLE `e` ;
251
 
DROP TABLE `g` ;
252
 
End Bug#585628 test
253
 
Bug#585644
254
 
- Adding STRAIGHT_JOIN to certain queries results in a large number of duplicate rows
255
 
DROP TABLE IF EXISTS `m`;
256
 
DROP TABLE IF EXISTS `o`;
257
 
CREATE TABLE `m` (
258
 
`col_int` int DEFAULT NULL,
259
 
`pk` int NOT NULL AUTO_INCREMENT,
260
 
PRIMARY KEY (`pk`)
261
 
) ENGINE=InnoDB;
262
 
INSERT INTO `m` VALUES (1,1),(NULL,2),(NULL,3),(-207224832,4),(714801152,5),(-1265106944,6),(2023948288,7),(865599488,8),(1,9),(-1895301120,10),(3,11),(9,12),(5,13),(NULL,14),(NULL,15),(1,16),(-224657408,17),(2,18),(-1219493888,19),(7,20),(1,21),(NULL,22),(NULL,23);
263
 
CREATE TABLE `o` (
264
 
`col_int_key` int DEFAULT NULL,
265
 
`pk` int NOT NULL AUTO_INCREMENT,
266
 
PRIMARY KEY (`pk`),
267
 
KEY `col_int_key` (`col_int_key`)
268
 
) ENGINE=InnoDB;
269
 
INSERT INTO `o` VALUES (4,1),(-867368960,2),(655032320,3),(1,4),(NULL,5),(-118751232,6),(7,7),(1,8),(3,9),(-518324224,10),(7,11),(1129709568,12),(-2081357824,13),(6,14),(NULL,15),(NULL,16),(NULL,17);
270
 
SELECT COUNT(table1 .`pk`)
271
 
FROM m table1 RIGHT JOIN o JOIN o table3 ON table3 .`col_int_key` ON table1 .`col_int` = table3 .`col_int_key` ;
272
 
COUNT(table1 .`pk`)
273
 
187
274
 
SELECT STRAIGHT_JOIN COUNT(table1 .`pk`)
275
 
FROM m table1 RIGHT JOIN o JOIN o table3 ON table3 .`col_int_key` ON table1 .`col_int` = table3 .`col_int_key` /* TRANSFORM_OUTCOME_UNORDERED_MATCH */;
276
 
COUNT(table1 .`pk`)
277
 
187
278
 
DROP TABLE m;
279
 
DROP TABLE o;
280
 
End Bug#585644 test
281
 
Bug#608416
282
 
Crash / assertion failed -
283
 
"void drizzled::Select_Lex::print(drizzled::Session*, drizzled::String*, drizzled::enum_query_type)") at assert.c:81
284
 
#3 0x00000000006282fb in drizzled::Select_Lex::print
285
 
(this=0x3911418, session=0x0, str=0x7f26b77fd7c0, query_type=drizzled::QT_ORDINARY) at drizzled/sql_select.cc:6592
286
 
DROP TABLE IF EXISTS `aa`,`bb`,`dd`;
287
 
DROP TABLE IF EXISTS `aa`;
288
 
Warnings:
289
 
Note    1051    Unknown table 'aa'
290
 
CREATE TABLE `aa` (
291
 
`pk` int NOT NULL AUTO_INCREMENT,
292
 
`col_enum_not_null_key` enum('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z') NOT NULL,
293
 
`col_int_not_null_key` int NOT NULL,
294
 
`col_char_10_not_null_key` varchar(10) NOT NULL,
295
 
`col_int_key` int DEFAULT NULL,
296
 
`col_text_not_null` text NOT NULL,
297
 
`col_char_1024_key` varchar(1024) DEFAULT NULL,
298
 
`col_bigint_key` bigint DEFAULT NULL,
299
 
`col_int_not_null` int NOT NULL,
300
 
PRIMARY KEY (`pk`),
301
 
KEY `col_enum_not_null_key` (`col_enum_not_null_key`),
302
 
KEY `col_int_not_null_key` (`col_int_not_null_key`),
303
 
KEY `col_char_10_not_null_key` (`col_char_10_not_null_key`),
304
 
KEY `col_int_key` (`col_int_key`),
305
 
KEY `col_char_1024_key` (`col_char_1024_key`(255)),
306
 
KEY `col_bigint_key` (`col_bigint_key`)
307
 
) ENGINE=InnoDB;
308
 
INSERT INTO `aa` VALUES (1,'s',-523436032,'at',2071265280,'','LPUJD',NULL,-1974206464),(2,'p',1,'VDMDI',1,'','don\'t',NULL,3),(3,'n',621543424,'WPTIG',NULL,'','think',-2842897264777625600,-274595840),(4,'o',880148480,'your',1734213632,'','on',NULL,295501824),(5,'b',1963982848,'q',1505558528,'','YTUNQ',3557843705622691840,9),(6,'c',8,'OOQXU',8,'','o',-4628011567076605952,2),(7,'p',1445462016,'RDODX',NULL,'','so',-5755881798756204544,-1601306624),(8,'i',0,'e',-1685520384,'','get',NULL,-1770323968),(9,'f',-747241472,'FEKXH',NULL,'','l',NULL,256311296),(10,'p',6,'GTHOM',-1431502848,'','h',-5719290051783819264,4);
309
 
CREATE TABLE `bb` (
310
 
`col_enum_not_null_key` enum('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z') NOT NULL,
311
 
`col_text_not_null` text NOT NULL,
312
 
`col_char_10_not_null_key` varchar(10) NOT NULL,
313
 
`col_bigint_key` bigint DEFAULT NULL,
314
 
`col_char_1024_key` varchar(1024) DEFAULT NULL,
315
 
`pk` int NOT NULL AUTO_INCREMENT,
316
 
`col_int_not_null_key` int NOT NULL,
317
 
`col_int_key` int DEFAULT NULL,
318
 
`col_int_not_null` int NOT NULL,
319
 
PRIMARY KEY (`pk`),
320
 
KEY `col_enum_not_null_key` (`col_enum_not_null_key`),
321
 
KEY `col_char_10_not_null_key` (`col_char_10_not_null_key`),
322
 
KEY `col_bigint_key` (`col_bigint_key`),
323
 
KEY `col_char_1024_key` (`col_char_1024_key`(255)),
324
 
KEY `col_int_not_null_key` (`col_int_not_null_key`),
325
 
KEY `col_int_key` (`col_int_key`)
326
 
) ENGINE=InnoDB;
327
 
INSERT INTO `bb` VALUES ('r','','DCJRX',NULL,'ANVSO',1,1,NULL,763953152),('a','','x',NULL,'JBJPT',2,1,4,-132513792),('s','','ZMHDL',-647673921411219456,'KAHJT',3,-1536425984,-628359168,3),('i','','SJGHS',-5702401553181179904,'q',4,-1443495936,-2114322432,-1349844992),('w','','his',NULL,'l',5,2,105971712,-2019688448),('v','','m',4,'ULWFL',6,0,2,-38207488),('d','','i',NULL,'YOIXU',7,8,NULL,3),('f','','d',8,'that\'s',8,476315648,NULL,8),('y','','from',NULL,'ZPPIG',9,5,-607322112,-1129054208),('o','','h',NULL,'like',10,5,0,-415629312);
328
 
CREATE TABLE `dd` (
329
 
`col_int_not_null` int NOT NULL,
330
 
`col_int_key` int DEFAULT NULL,
331
 
`col_enum_not_null_key` enum('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z') NOT NULL,
332
 
`col_bigint_key` bigint DEFAULT NULL,
333
 
`col_char_10_not_null_key` varchar(10) NOT NULL,
334
 
`col_int_not_null_key` int NOT NULL,
335
 
`col_text_not_null` text NOT NULL,
336
 
`pk` int NOT NULL AUTO_INCREMENT,
337
 
`col_char_1024_key` varchar(1024) DEFAULT NULL,
338
 
PRIMARY KEY (`pk`),
339
 
KEY `col_int_key` (`col_int_key`),
340
 
KEY `col_enum_not_null_key` (`col_enum_not_null_key`),
341
 
KEY `col_bigint_key` (`col_bigint_key`),
342
 
KEY `col_char_10_not_null_key` (`col_char_10_not_null_key`),
343
 
KEY `col_int_not_null_key` (`col_int_not_null_key`),
344
 
KEY `col_char_1024_key` (`col_char_1024_key`(255))
345
 
) ENGINE=InnoDB;
346
 
INSERT INTO `dd` VALUES (1777795072,NULL,'g',0,'was',-1866203136,'',1,'g');
347
 
EXPLAIN EXTENDED SELECT
348
 
table2 . `col_enum_not_null_key` AS field1 ,
349
 
table1 . `col_char_1024_key` AS field2
350
 
FROM ( ( SELECT SUBQUERY1_t1 . * FROM ( BB AS SUBQUERY1_t1 RIGHT JOIN AA AS SUBQUERY1_t2 ON (SUBQUERY1_t2 . `col_int_not_null_key` = SUBQUERY1_t1 . `col_int_key` ) ) ) AS table1 INNER JOIN ( ( DD AS table2 STRAIGHT_JOIN BB AS table3 ON (table3 . `col_char_10_not_null_key` = table2 . `col_char_key` ) ) ) ON (table3 . `col_char_key` = table2 . `col_text_not_null` ) ) WHERE ( ( SELECT MIN( SUBQUERY2_t2 . `col_char_10_not_null_key` ) AS SUBQUERY2_field1 FROM AA AS SUBQUERY2_t1 WHERE ( EXISTS ( ( SELECT CHILD_SUBQUERY1_t2 . `col_char_10_not_null_key` AS CHILD_SUBQUERY1_field1 FROM ( BB AS CHILD_SUBQUERY1_t1 INNER JOIN AA AS CHILD_SUBQUERY1_t2 ON (CHILD_SUBQUERY1_t2 . `col_int_key` = CHILD_SUBQUERY1_t1 . `pk` ) ) WHERE ( CHILD_SUBQUERY1_t2 . `col_char_10_not_null_key` > 'y' AND CHILD_SUBQUERY1_t1 . `col_int_not_null_key` = CHILD_SUBQUERY1_t1 . `col_int_not_null` ) HAVING CHILD_SUBQUERY1_t2 . `col_bigint_key` >= 3) ) AND SUBQUERY2_t1 . `col_int_key` != 8 ) ) IS NOT NULL ) AND ( table1 . `col_int_key` = 160 AND table1 . `col_int_key` = 197 ) AND table3 . `col_text_not_null` >= 'g' GROUP BY field1, field2;
351
 
ERROR 42S22: Unknown column 'SUBQUERY2_t2.col_char_10_not_null_key' in 'field list'
352
 
DROP TABLE `aa`;
353
 
DROP TABLE `bb`;
354
 
DROP TABLE `dd`;
355
 
End Bug#608416
356
 
Bug#615419
357
 
Crash/segfault - in drizzled::DTCollation::set (this=0x60, dt=...) at drizzled/dtcollation.cc:51 51 collation= dt.collation
358
 
DROP TABLE IF EXISTS `aa`;
359
 
DROP TABLE IF EXISTS `bb`;
360
 
DROP TABLE IF EXISTS `cc`;
361
 
CREATE TABLE `aa` (
362
 
`pk` int NOT NULL AUTO_INCREMENT,
363
 
`col_char_10_key` varchar(10) DEFAULT NULL,
364
 
`col_char_1024_not_null_key` varchar(1024) NOT NULL,
365
 
`col_int_not_null_key` int NOT NULL,
366
 
`col_int_key` int DEFAULT NULL,
367
 
`col_bigint_key` bigint DEFAULT NULL,
368
 
PRIMARY KEY (`pk`),
369
 
KEY `col_char_10_key` (`col_char_10_key`),
370
 
KEY `col_char_1024_not_null_key` (`col_char_1024_not_null_key`(255)),
371
 
KEY `col_int_not_null_key` (`col_int_not_null_key`),
372
 
KEY `col_int_key` (`col_int_key`),
373
 
KEY `col_bigint_key` (`col_bigint_key`)
374
 
) ENGINE=InnoDB;
375
 
INSERT INTO `aa` VALUES (1,'ZDPHP','well',-523436032,2071265280,NULL),(2,'AIJUR','on',1,1,NULL),(3,'NEMIU','ASUNK',621543424,NULL,-2842897264777625600),(4,'HMHFF','d',880148480,1734213632,NULL),(5,'XIXMV','m',1963982848,1505558528,3557843705622691840),(6,'k','to',8,8,-4628011567076605952),(7,'GJZBY','t',1445462016,NULL,-5755881798756204544),(8,'UGMMS','m',0,-1685520384,NULL),(9,'p','USQVA',-747241472,NULL,NULL),(10,'RMZLQ','FUBQO',6,-1431502848,-5719290051783819264);
376
 
CREATE TABLE `bb` (
377
 
`col_enum_not_null_key` enum('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z') NOT NULL,
378
 
`col_text_not_null_key` text NOT NULL,
379
 
`col_char_10_not_null_key` varchar(10) NOT NULL,
380
 
`col_char_1024_not_null_key` varchar(1024) NOT NULL,
381
 
`col_bigint_key` bigint DEFAULT NULL,
382
 
`pk` int NOT NULL AUTO_INCREMENT,
383
 
`col_int_key` int DEFAULT NULL,
384
 
`col_int_not_null` int NOT NULL,
385
 
PRIMARY KEY (`pk`),
386
 
KEY `col_enum_not_null_key` (`col_enum_not_null_key`),
387
 
KEY `col_text_not_null_key` (`col_text_not_null_key`(255)),
388
 
KEY `col_char_10_not_null_key` (`col_char_10_not_null_key`),
389
 
KEY `col_char_1024_not_null_key` (`col_char_1024_not_null_key`(255)),
390
 
KEY `col_bigint_key` (`col_bigint_key`),
391
 
KEY `col_int_key` (`col_int_key`)
392
 
) ENGINE=InnoDB;
393
 
INSERT INTO `bb` VALUES ('r','','DCJRX','IHTVZ',NULL,1,NULL,763953152),('a','','x','a',NULL,2,4,-132513792),('s','','ZMHDL','s',-647673921411219456,3,-628359168,3),('i','','SJGHS','d',-5702401553181179904,4,-2114322432,-1349844992),('w','','his','TTNNK',NULL,5,105971712,-2019688448),('v','','m','GKTRR',4,6,2,-38207488),('d','','i','ZZDWO',NULL,7,NULL,3),('f','','d','up',8,8,NULL,8),('y','','from','would',NULL,9,-607322112,-1129054208),('o','','h','JNAFV',NULL,10,0,-415629312);
394
 
CREATE TABLE `cc` (
395
 
`pk` int NOT NULL AUTO_INCREMENT,
396
 
`col_int_not_null` int NOT NULL,
397
 
`col_int_not_null_key` int NOT NULL,
398
 
PRIMARY KEY (`pk`),
399
 
KEY `col_int_not_null_key` (`col_int_not_null_key`)
400
 
) ENGINE=InnoDB;
401
 
INSERT INTO `cc` VALUES (1,9,-1665335296),(2,2,0),(3,0,1736638464),(4,-1205207040,-2136604672),(5,-330170368,3),(6,7,309592064),(7,-858259456,4),(8,-1265565696,1614217216),(9,532217856,1822883840),(10,-1106640896,1),(11,7,0),(12,-2060517376,8),(13,9,248709120),(14,3,8),(15,1633353728,-1300496384),(16,621150208,1776549888),(17,6,2053242880),(18,8,-2143551488),(19,7,1),(20,1232142336,7),(21,1089404928,1946615808),(22,2,-141492224),(23,-1999896576,1),(24,-858324992,2062483456),(25,2034565120,2115698688),(26,-2020933632,-1325596672),(27,108658688,1),(28,-1947402240,759889920),(29,-1483669504,9),(30,2,-1726873600),(31,711720960,1),(32,4,8),(33,0,381353984),(34,2,-1951727616),(35,412811264,-1688338432),(36,3,6),(37,4,-1386217472),(38,335544320,680787968),(39,-1573322752,8),(40,-1445724160,3),(41,1,8),(42,7,9),(43,998375424,-1370816512),(44,1,6),(45,6,4),(46,6,612171776),(47,6,9),(48,4,693370880),(49,1413349376,1978990592),(50,-1399783424,4),(51,5,-40304640),(52,4,-562626560),(53,1834352640,6),(54,9,6),(55,37158912,4),(56,1434648576,6),(57,1995636736,0),(58,2,-1440415744),(59,8,9),(60,-1991114752,-883687424),(61,8,5),(62,2,8),(63,-2013528064,79429632),(64,7,4128768),(65,1269104640,-1750990848),(66,563675136,1545011200),(67,707330048,3),(68,-460324864,-959643648),(69,436142080,1),(70,-1233977344,1),(71,-602931200,6),(72,6,1964769280),(73,741867520,1),(74,2045575168,4),(75,2,-117506048),(76,-1779499008,0),(77,6,1717436416),(78,1460862976,1473773568),(79,6,140902400),(80,8,4),(81,1401683968,1398669312),(82,-853671936,-1045561344),(83,58261504,-817299456),(84,7,7),(85,0,-976027648),(86,-1865809920,1135542272),(87,-1795358720,8),(88,1723465728,6),(89,-1031340032,2),(90,9,1),(91,5,-1602879488),(92,-938999808,4),(93,-2075787264,6),(94,379453440,-336789504),(95,347734016,1),(96,0,-1887174656),(97,4,8),(98,4,-1159266304),(99,1025703936,523763712),(100,1,1434124288);
402
 
SELECT table2 . `col_enum_not_null_key` AS field1
403
 
FROM ( BB AS table1 STRAIGHT_JOIN
404
 
( ( BB AS table2 INNER JOIN
405
 
CC AS table3 ON
406
 
(table3 . `col_int_not_null` = table2 . `col_bigint_key` AND ( 6, 6 )
407
 
IN ( SELECT SUBQUERY1_t1 . `col_bigint_key` AS SUBQUERY1_field1 , SUM( SUBQUERY1_t1 . `col_int_key` ) AS SUBQUERY1_field2 FROM ( AA AS SUBQUERY1_t1 RIGHT OUTER JOIN AA AS SUBQUERY1_t2 ON (SUBQUERY1_t2 . `col_int_not_null_key` = SUBQUERY1_t1 . `col_int_not_null_key` ) ) WHERE SUBQUERY1_t2 . `col_char_1024_not_null_key` != SUBQUERY1_t1 . `col_char_10_key` ) ) ) ) ON (table3 . `col_int_not_null_key` = table2 . `pk` ) ) WHERE ( ( 'a', 't' ) IN ( SELECT SUBQUERY2_t1 . `col_char_1024_not_null_key` AS SUBQUERY2_field1 , SUBQUERY2_t1 . `col_text_not_null_key` AS SUBQUERY2_field2 FROM BB AS SUBQUERY2_t1 WHERE SUBQUERY2_t1 . `col_char_1024_not_null_key` >= 'y' ) ) AND ( table1 . `col_int_key` > 20 AND table1 . `col_int_key` < ( 20 + 229 ) OR table1 . `pk` > 20 AND table1 . `pk` < ( 20 + 158 ) ) OR ( table2 . `col_char_1024_not_null_key` < table2 . `col_char_1024_not_null_key` AND table1 . `col_int_not_null` IS NULL ) HAVING field1 <> 56 ORDER BY table1 . `col_char_10_not_null_key` , table3 .`pk` DESC;
408
 
field1
409
 
DROP TABLE `aa`, `bb`, `cc` ;
410
 
End Bug#615419