Use fuzzy path cost tiebreaking rule in our oldest supported branches.
Tom Lane <tgl@sss.pgh.pa.us>
Use fuzzy path cost tiebreaking rule in our oldest supported branches. We've been doing it that way since 9.2, cf commit 33e99153e93b9acc, but some recently-added regression test cases are making a few buildfarm members fail (ie choose the "wrong" plan) in 9.0 and 9.1 due to platform-specific roundoff differences in cost calculations. To fix, back-port the patch that made add_path treat cost difference ratios of less than 1e-10 as equal.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/optimizer/util/pathnode.c | modified | +29 −21 |