Store 10 significant digits of the popularity score

Even if we only display two digits after the decimal point, storing more
digits internally allows us to order the search results more accurately.

Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
Lukas Fleischer 2015-06-15 12:29:24 +02:00
parent 74c7cf70ff
commit 2284cb3e4a
3 changed files with 3 additions and 3 deletions

View file

@ -70,7 +70,7 @@ CREATE TABLE PackageBases (
ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
Name VARCHAR(255) NOT NULL,
NumVotes INTEGER UNSIGNED NOT NULL DEFAULT 0,
Popularity DECIMAL(6,2) UNSIGNED NOT NULL DEFAULT 0,
Popularity DECIMAL(10,6) UNSIGNED NOT NULL DEFAULT 0,
OutOfDateTS BIGINT UNSIGNED NULL DEFAULT NULL,
SubmittedTS BIGINT UNSIGNED NOT NULL,
ModifiedTS BIGINT UNSIGNED NOT NULL,

View file

@ -35,7 +35,7 @@ CREATE TABLE PackageComaintainers (
----
ALTER TABLE PackageBases
ADD COLUMN Popularity DECIMAL(6,2) UNSIGNED NOT NULL DEFAULT 0;
ADD COLUMN Popularity DECIMAL(10,6) UNSIGNED NOT NULL DEFAULT 0;
----
6. Drop the category ID foreign key from the PackageBases table:

View file

@ -54,7 +54,7 @@ if (!$result): ?>
<td><a href="<?= htmlspecialchars(get_pkg_uri($row["Name"]), ENT_QUOTES); ?>"><?= htmlspecialchars($row["Name"]) ?></a></td>
<td<?php if ($row["OutOfDateTS"]): ?> class="flagged"<?php endif; ?>><?= htmlspecialchars($row["Version"]) ?></td>
<td><?= $row["NumVotes"] ?></td>
<td><?= $row["Popularity"] ?></td>
<td><?= number_format($row["Popularity"], 2) ?></td>
<?php if ($SID): ?>
<td>
<?php if (isset($row["Voted"])): ?>