[aur-dev] [PATCH 1/2] popupdate: Avoid NULL entries in the popularity field
The popularity field is declared as "NOT NULL" in the database schema. Fix the popularity update query such that it uses a popularity of 0.0 instead of NULL for packages with no votes. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org> --- scripts/popupdate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/popupdate.py b/scripts/popupdate.py index 2aa8a54..f3ba513 100755 --- a/scripts/popupdate.py +++ b/scripts/popupdate.py @@ -22,7 +22,7 @@ cur.execute("UPDATE PackageBases SET NumVotes = (SELECT COUNT(*) FROM " + "PackageVotes WHERE PackageVotes.PackageBaseID = PackageBases.ID)") cur.execute("UPDATE PackageBases SET Popularity = (" + - "SELECT SUM(POWER(0.98, (UNIX_TIMESTAMP() - VoteTS) / 86400)) " + + "SELECT COALESCE(SUM(POWER(0.98, (UNIX_TIMESTAMP() - VoteTS) / 86400)), 0.0) " + "FROM PackageVotes WHERE PackageVotes.PackageBaseID = " + "PackageBases.ID AND NOT VoteTS IS NULL)") -- 2.7.2
participants (1)
-
Lukas Fleischer