- Notifications
You must be signed in to change notification settings - Fork5
Commit9c85256
committed
Fix comparison of similarity to threshold in GIST trigram searches.
There was some very strange code here, dating to commitb525bf7, thatpurported to work around an ancient gcc bug by forcing a float4 comparisonto be done as int instead. Commit5871b88 broke that when it changedone side of the comparison to "double" but left the comparison code alone.Commitf576b17 doubled down on the weirdness by introducing a "volatile"marker, which had nothing to do with the actual problem.Guess that the gcc bug, even if it's still present in the wild, wastriggered by comparison of float4's and can be avoided if we store theresult of cnt_sml() into a double before comparing to the double "nlimit".This will at least work correctly on non-broken compilers, and it's waymore readable.Per bug #14202 from Greg Navis. Add a regression test based on hisexample.Report: <20160620115321.5792.10766@wrigleys.postgresql.org>1 parent47981a4 commit9c85256
File tree
3 files changed
+76
-9
lines changed- contrib/pg_trgm
- expected
- sql
3 files changed
+76
-9
lines changedLines changed: 53 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
3838 | 3838 |
| |
3839 | 3839 |
| |
3840 | 3840 |
| |
| 3841 | + | |
| 3842 | + | |
| 3843 | + | |
| 3844 | + | |
| 3845 | + | |
| 3846 | + | |
| 3847 | + | |
| 3848 | + | |
| 3849 | + | |
| 3850 | + | |
| 3851 | + | |
| 3852 | + | |
| 3853 | + | |
| 3854 | + | |
| 3855 | + | |
| 3856 | + | |
| 3857 | + | |
| 3858 | + | |
| 3859 | + | |
| 3860 | + | |
| 3861 | + | |
| 3862 | + | |
| 3863 | + | |
| 3864 | + | |
| 3865 | + | |
| 3866 | + | |
| 3867 | + | |
| 3868 | + | |
| 3869 | + | |
| 3870 | + | |
| 3871 | + | |
| 3872 | + | |
| 3873 | + | |
| 3874 | + | |
| 3875 | + | |
| 3876 | + | |
| 3877 | + | |
| 3878 | + | |
| 3879 | + | |
| 3880 | + | |
| 3881 | + | |
| 3882 | + | |
| 3883 | + | |
| 3884 | + | |
| 3885 | + | |
| 3886 | + | |
| 3887 | + | |
| 3888 | + | |
| 3889 | + | |
| 3890 | + | |
| 3891 | + | |
| 3892 | + | |
| 3893 | + |
Lines changed: 21 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
113 | 113 |
| |
114 | 114 |
| |
115 | 115 |
| |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + |
Lines changed: 2 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
296 | 296 |
| |
297 | 297 |
| |
298 | 298 |
| |
| 299 | + | |
299 | 300 |
| |
300 |
| - | |
301 |
| - | |
302 |
| - | |
303 |
| - | |
304 |
| - | |
305 |
| - | |
306 |
| - | |
307 |
| - | |
308 |
| - | |
| 301 | + | |
309 | 302 |
| |
310 | 303 |
| |
311 | 304 |
| |
|
0 commit comments
Comments
(0)