From 33a32d228733739d65d15e500dd0a3fe2d627360 Mon Sep 17 00:00:00 2001 From: Shish Date: Thu, 28 Nov 2019 09:24:49 +0000 Subject: [PATCH] faster ip search in postgres --- ext/log_db/main.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ext/log_db/main.php b/ext/log_db/main.php index a9c35eaf..a8d5644a 100644 --- a/ext/log_db/main.php +++ b/ext/log_db/main.php @@ -63,7 +63,8 @@ class LogDatabase extends Extension if (!empty($_GET["user"])) { if ($database->get_driver_name() == DatabaseDriver::PGSQL) { if (preg_match("#\d+\.\d+\.\d+\.\d+(/\d+)?#", $_GET["user"])) { - $wheres[] = $database->scoreql_to_sql("(SCORE_STRNORM(username) = SCORE_STRNORM(:user1) OR SCORE_STRNORM(text(address)) = SCORE_STRNORM(:user2))"); + # for some reason postgres won't use an index on lower(text(address)), but will text(address)? + $wheres[] = $database->scoreql_to_sql("(SCORE_STRNORM(username) = SCORE_STRNORM(:user1) OR text(address) = :user2)"); $args["user1"] = $_GET["user"]; $args["user2"] = $_GET["user"] . "/32"; } else {