aboutsummaryrefslogtreecommitdiff
path: root/src/resolve.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2014-10-25 13:42:16 +0000
committerdrh <drh@noemail.net>2014-10-25 13:42:16 +0000
commitd05ab6aacf08a1fd7af581cae4b28390ecd5c44c (patch)
treea0d6853758bf5745ff18c58bd46a650c12c0cf1c /src/resolve.c
parent051575cbf4c47fc472f53146e30d6ddddc9054b3 (diff)
downloadsqlite-d05ab6aacf08a1fd7af581cae4b28390ecd5c44c.tar.gz
sqlite-d05ab6aacf08a1fd7af581cae4b28390ecd5c44c.zip
Increase the resolution of the second parameter to the likelihood() SQL
function (the probability value) so that it can handle probabilities as small as 0.00000001. Formerly, it ran out of precision at 0.001. FossilOrigin-Name: 0f08924fe0c52a85a103f67bee9809e0f8f884b0
Diffstat (limited to 'src/resolve.c')
-rw-r--r--src/resolve.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/resolve.c b/src/resolve.c
index e507ccb81..8fb580b3a 100644
--- a/src/resolve.c
+++ b/src/resolve.c
@@ -584,7 +584,7 @@ static int exprProbability(Expr *p){
sqlite3AtoF(p->u.zToken, &r, sqlite3Strlen30(p->u.zToken), SQLITE_UTF8);
assert( r>=0.0 );
if( r>1.0 ) return -1;
- return (int)(r*1000.0);
+ return (int)(r*134217728.0);
}
/*
@@ -716,7 +716,7 @@ static int resolveExprStep(Walker *pWalker, Expr *pExpr){
** EVIDENCE-OF: R-53436-40973 The likely(X) function is equivalent to
** likelihood(X,0.9375). */
/* TUNING: unlikely() probability is 0.0625. likely() is 0.9375 */
- pExpr->iTable = pDef->zName[0]=='u' ? 62 : 938;
+ pExpr->iTable = pDef->zName[0]=='u' ? 8388608 : 125829120;
}
}
#ifndef SQLITE_OMIT_AUTHORIZATION