Re: [HACKERS] join ordering via Simulated Annealing

2009-12-28 Thread Jan Urbański
Andres Freund wrote: On Wednesday 23 December 2009 02:23:55 Jan Urbański wrote: Lastly, I'm lacking good testcases If you want to see some queries which are rather hard to plan with random search you can look at http://archives.postgresql.org/message-

Re: [HACKERS] join ordering via Simulated Annealing

2009-12-26 Thread Andres Freund
On Wednesday 23 December 2009 02:23:55 Jan Urbański wrote: Hi, I've been playing with using a Simulated Annealing-type algorithm for determinig join ordering for relations. Very cool. Lastly, I'm lacking good testcases or even a testing approach: I'm generating silly queries and looking at

Re: [HACKERS] join ordering via Simulated Annealing

2009-12-23 Thread Adriano Lange
Em 22-12-2009 22:23, Jan Urbański escreveu: o) the initial state is not really a random plan, it's usualy a left-deep tree (and is very inefficient) and this might skew results. Maybe a QuickPick + SA. http://www.springerlink.com/content/garn64gt61ju5xfa/

[HACKERS] join ordering via Simulated Annealing

2009-12-22 Thread Jan Urbański
Hi, I've been playing with using a Simulated Annealing-type algorithm for determinig join ordering for relations. To get into context see http://archives.postgresql.org/pgsql-hackers/2009-05/msg00098.php (there's also a TODO in the wiki). There's a nice paper on that in

Re: [HACKERS] join ordering via Simulated Annealing

2009-12-22 Thread bin wang
I will follow it. Thank you. 2009/12/23 Jan Urba��ski wulc...@wulczer.org Hi, I've been playing with using a Simulated Annealing-type algorithm for determinig join ordering for relations. To get into context see http://archives.postgresql.org/pgsql-hackers/2009-05/msg00098.php (there's

Re: [HACKERS] join ordering via Simulated Annealing

2009-12-22 Thread Tom Lane
=?UTF-8?B?SmFuIFVyYmHFhHNraQ==?= wulc...@wulczer.org writes: I've been playing with using a Simulated Annealing-type algorithm for determinig join ordering for relations. Cool. The code I have now creates the initial plan by doing something similar to what gimme_tree does in GEQO, but