mirror of
https://github.com/postgres/postgres.git
synced 2025-05-25 00:04:05 -04:00
Revert thinko introduced into prefix_selectivity() by my recent patch:
make_greater_string needs the < procedure not the >= one. Spotted by Peter.
This commit is contained in:
parent
23057f51f5
commit
164899db1c
@ -15,7 +15,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $PostgreSQL: pgsql/src/backend/utils/adt/selfuncs.c,v 1.245 2008/03/09 00:32:09 tgl Exp $
|
* $PostgreSQL: pgsql/src/backend/utils/adt/selfuncs.c,v 1.246 2008/03/17 17:13:54 tgl Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -4531,17 +4531,17 @@ prefix_selectivity(VariableStatData *vardata,
|
|||||||
* "x < greaterstr".
|
* "x < greaterstr".
|
||||||
*-------
|
*-------
|
||||||
*/
|
*/
|
||||||
greaterstrcon = make_greater_string(prefixcon, &opproc);
|
|
||||||
if (greaterstrcon)
|
|
||||||
{
|
|
||||||
Selectivity topsel;
|
|
||||||
|
|
||||||
cmpopr = get_opfamily_member(opfamily, vartype, vartype,
|
cmpopr = get_opfamily_member(opfamily, vartype, vartype,
|
||||||
BTLessStrategyNumber);
|
BTLessStrategyNumber);
|
||||||
if (cmpopr == InvalidOid)
|
if (cmpopr == InvalidOid)
|
||||||
elog(ERROR, "no < operator for opfamily %u", opfamily);
|
elog(ERROR, "no < operator for opfamily %u", opfamily);
|
||||||
fmgr_info(get_opcode(cmpopr), &opproc);
|
fmgr_info(get_opcode(cmpopr), &opproc);
|
||||||
|
|
||||||
|
greaterstrcon = make_greater_string(prefixcon, &opproc);
|
||||||
|
if (greaterstrcon)
|
||||||
|
{
|
||||||
|
Selectivity topsel;
|
||||||
|
|
||||||
topsel = ineq_histogram_selectivity(vardata, &opproc, false,
|
topsel = ineq_histogram_selectivity(vardata, &opproc, false,
|
||||||
greaterstrcon->constvalue,
|
greaterstrcon->constvalue,
|
||||||
greaterstrcon->consttype);
|
greaterstrcon->consttype);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user