@@ -244,72 +244,36 @@ SELECT aqo_cleanup();
244244
245245-- Result of the query below should be empty
246246SELECT * FROM aqo_query_texts aqt1, aqo_query_texts aqt2
247- WHERE aqt1.query_text = aqt2.query_text AND aqt1.query_hash <> aqt2.query_hash ;
248- query_hash | query_text | query_hash | query_text
249- ------------ +------------+--- ---------+------------
247+ WHERE aqt1.query_text = aqt2.query_text AND aqt1.queryid <> aqt2.queryid ;
248+ queryid | query_text | queryid | query_text
249+ ---------+------------+---------+------------
250250(0 rows)
251251
252252-- Fix the state of the AQO data
253- SELECT reliability, nfeatures,query_text
253+ SELECT min( reliability),sum( nfeatures) ,query_text
254254FROM aqo_data ad, aqo_query_texts aqt
255- WHERE aqt.query_hash = ad.fspace_hash
256- ORDER BY (md5(query_text))
255+ WHERE aqt.queryid = ad.fspace_hash
256+ GROUP BY (query_text) ORDER BY (md5(query_text))
257257;
258- reliability | nfeatures | query_text
259- -------------+-----------+----------------------------------------------------------------------------------------
260- {1} | 1 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test1 AS t1, aqo_test0 AS t2 +
261- | | WHERE t1.a < 1 AND t2.b < 1 AND t2.c < 1 AND t2.d < 1 AND t1.a = t2.a;
262- {1} | 5 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test1 AS t1, aqo_test0 AS t2 +
263- | | WHERE t1.a < 1 AND t2.b < 1 AND t2.c < 1 AND t2.d < 1 AND t1.a = t2.a;
264- {1} | 4 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test1 AS t1, aqo_test0 AS t2 +
265- | | WHERE t1.a < 1 AND t2.b < 1 AND t2.c < 1 AND t2.d < 1 AND t1.a = t2.a;
266- {1,1,1} | 4 | EXPLAIN SELECT * FROM aqo_test0 +
267- | | WHERE a < 3 AND b < 3 AND c < 3 AND d < 3;
268- {1} | 0 | SELECT count(*) FROM tmp1;
269- {1} | 0 | SELECT count(*) FROM tmp1;
270- {1} | 6 | EXPlAIN SELECT t1.a, t2.b, t3.c +
271- | | FROM aqo_test1 AS t1, aqo_test0 AS t2, aqo_test0 AS t3 +
272- | | WHERE t1.a < 1 AND t3.b < 1 AND t2.c < 1 AND t3.d < 0 AND t1.a = t2.a AND t1.b = t3.b;
273- {1} | 1 | EXPlAIN SELECT t1.a, t2.b, t3.c +
274- | | FROM aqo_test1 AS t1, aqo_test0 AS t2, aqo_test0 AS t3 +
275- | | WHERE t1.a < 1 AND t3.b < 1 AND t2.c < 1 AND t3.d < 0 AND t1.a = t2.a AND t1.b = t3.b;
276- {1} | 2 | EXPlAIN SELECT t1.a, t2.b, t3.c +
277- | | FROM aqo_test1 AS t1, aqo_test0 AS t2, aqo_test0 AS t3 +
278- | | WHERE t1.a < 1 AND t3.b < 1 AND t2.c < 1 AND t3.d < 0 AND t1.a = t2.a AND t1.b = t3.b;
279- {1} | 3 | EXPlAIN SELECT t1.a, t2.b, t3.c +
280- | | FROM aqo_test1 AS t1, aqo_test0 AS t2, aqo_test0 AS t3 +
281- | | WHERE t1.a < 1 AND t3.b < 1 AND t2.c < 1 AND t3.d < 0 AND t1.a = t2.a AND t1.b = t3.b;
282- {1} | 2 | EXPlAIN SELECT t1.a, t2.b, t3.c +
283- | | FROM aqo_test1 AS t1, aqo_test0 AS t2, aqo_test0 AS t3 +
284- | | WHERE t1.a < 1 AND t3.b < 1 AND t2.c < 1 AND t3.d < 0 AND t1.a = t2.a AND t1.b = t3.b;
285- {1} | 2 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test0 AS t1, aqo_test0 AS t2 +
286- | | WHERE t1.a < 1 AND t1.b < 1 AND t2.c < 1 AND t2.d < 1;
287- {1} | 2 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test0 AS t1, aqo_test0 AS t2 +
288- | | WHERE t1.a < 1 AND t1.b < 1 AND t2.c < 1 AND t2.d < 1;
289- {1} | 4 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test0 AS t1, aqo_test0 AS t2 +
290- | | WHERE t1.a < 1 AND t1.b < 1 AND t2.c < 1 AND t2.d < 1;
291- {1} | 2 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c +
292- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3 +
293- | | WHERE t1.a = t2.b AND t2.a = t3.b;
294- {1} | 1 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c +
295- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3 +
296- | | WHERE t1.a = t2.b AND t2.a = t3.b;
297- {1} | 0 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c +
298- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3 +
299- | | WHERE t1.a = t2.b AND t2.a = t3.b;
300- {1} | 3 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c, t4.a AS d +
301- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3, aqo_test1 AS t4 +
302- | | WHERE t1.a = t2.b AND t2.a = t3.b AND t3.a = t4.b;
303- {1} | 0 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c, t4.a AS d +
304- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3, aqo_test1 AS t4 +
305- | | WHERE t1.a = t2.b AND t2.a = t3.b AND t3.a = t4.b;
306- {1} | 1 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c, t4.a AS d +
307- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3, aqo_test1 AS t4 +
308- | | WHERE t1.a = t2.b AND t2.a = t3.b AND t3.a = t4.b;
309- {1} | 2 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c, t4.a AS d +
310- | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3, aqo_test1 AS t4 +
311- | | WHERE t1.a = t2.b AND t2.a = t3.b AND t3.a = t4.b;
312- (21 rows)
258+ min | sum | query_text
259+ ---------+-----+----------------------------------------------------------------------------------------
260+ {1} | 10 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test1 AS t1, aqo_test0 AS t2 +
261+ | | WHERE t1.a < 1 AND t2.b < 1 AND t2.c < 1 AND t2.d < 1 AND t1.a = t2.a;
262+ {1,1,1} | 4 | EXPLAIN SELECT * FROM aqo_test0 +
263+ | | WHERE a < 3 AND b < 3 AND c < 3 AND d < 3;
264+ {1} | 0 | SELECT count(*) FROM tmp1;
265+ {1} | 14 | EXPlAIN SELECT t1.a, t2.b, t3.c +
266+ | | FROM aqo_test1 AS t1, aqo_test0 AS t2, aqo_test0 AS t3 +
267+ | | WHERE t1.a < 1 AND t3.b < 1 AND t2.c < 1 AND t3.d < 0 AND t1.a = t2.a AND t1.b = t3.b;
268+ {1} | 8 | EXPLAIN SELECT t1.a, t2.b FROM aqo_test0 AS t1, aqo_test0 AS t2 +
269+ | | WHERE t1.a < 1 AND t1.b < 1 AND t2.c < 1 AND t2.d < 1;
270+ {1} | 3 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c +
271+ | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3 +
272+ | | WHERE t1.a = t2.b AND t2.a = t3.b;
273+ {1} | 6 | EXPLAIN SELECT t1.a AS a, t2.a AS b, t3.a AS c, t4.a AS d +
274+ | | FROM aqo_test1 AS t1, aqo_test1 AS t2, aqo_test1 AS t3, aqo_test1 AS t4 +
275+ | | WHERE t1.a = t2.b AND t2.a = t3.b AND t3.a = t4.b;
276+ (7 rows)
313277
314278DROP TABLE tmp1;
315279SET aqo.mode = 'controlled';
@@ -568,7 +532,7 @@ SELECT count(*) FROM
568532 1
569533(1 row)
570534
571- SELECT query_text FROM aqo_query_texts WHERE query_hash <> 0; -- Check query
535+ SELECT query_text FROM aqo_query_texts WHERE queryid <> 0; -- Check query
572536 query_text
573537----------------------------------------------------------------------------
574538 explain analyze +
@@ -736,10 +700,17 @@ SELECT count(*) FROM (SELECT fspace_hash FROM aqo_data GROUP BY (fspace_hash)) A
736700 9
737701(1 row)
738702
703+ DROP FUNCTION check_estimated_rows;
739704RESET aqo.join_threshold;
740705DROP INDEX aqo_test0_idx_a;
741706DROP TABLE aqo_test0;
742707DROP INDEX aqo_test1_idx_a;
743708DROP TABLE aqo_test1;
709+ -- XXX: extension dropping doesn't clear file storage. Do it manually.
710+ SELECT aqo_reset();
711+ aqo_reset
712+ -----------
713+ 18
714+ (1 row)
715+
744716DROP EXTENSION aqo;
745- DROP FUNCTION check_estimated_rows;
0 commit comments