From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Qi Huang <huangqiyx(at)hotmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Optimizer Path Candidates difference in 9.1.3 and 9.2 beta1 |
Date: | 2012-06-27 04:07:45 |
Message-ID: | 20614.1340770065@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Qi Huang <huangqiyx(at)hotmail(dot)com> writes:
> Hi, hackers I modified the code in add_path() a bit so that all the query path candidates inside pathlist will not be removed and all new path will be added into the pathlist, thus all path candidates are kept in pathlist. I then tested a four-relation query. In 9.1.3, I can see thousands of candidates in the final RelOptInfo, and some of them are even busy trees. But in 9.2 beta1 which I forked from github, there are no such busy trees and only about 50 join path in total, which should match the requirement of System R algo. Is there any modification regarding the system R algo in the new release? And something wrong in algo in 9.1.3? Thanks
[ shrug... ] When you're not showing us exactly what you did, it's hard
to answer that for sure. But there is some prefiltering logic in
joinpath.c that you might have to lobotomize too if you want to keep
known-inferior join paths.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Qi Huang | 2012-06-27 04:56:49 | Re: Optimizer Path Candidates difference in 9.1.3 and 9.2 beta1 |
Previous Message | Tom Lane | 2012-06-27 04:00:49 | Re: Posix Shared Mem patch |