From b7475a5bd0607200afae508729c53b95c2b40c6c Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Sun, 31 Oct 2021 04:11:42 -0700 Subject: [PATCH] fix(rpc): fix performance of suggest[-pkgbase] We were selecting the entire record; we should just select the Name column as done in this commit. Signed-off-by: Kevin Morris --- aurweb/rpc.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/aurweb/rpc.py b/aurweb/rpc.py index 56f75391..ca838050 100644 --- a/aurweb/rpc.py +++ b/aurweb/rpc.py @@ -213,7 +213,9 @@ class RPC: return [] arg = args[0] - packages = db.query(models.Package).join(models.PackageBase).filter( + packages = db.query(models.Package.Name).join( + models.PackageBase + ).filter( and_(models.PackageBase.PackagerUID.isnot(None), models.Package.Name.like(f"%{arg}%")) ).order_by(models.Package.Name.asc()).limit(20) @@ -223,11 +225,11 @@ class RPC: if not args: return [] - records = db.query(models.PackageBase).filter( + packages = db.query(models.PackageBase.Name).filter( and_(models.PackageBase.PackagerUID.isnot(None), models.PackageBase.Name.like(f"%{args[0]}%")) ).order_by(models.PackageBase.Name.asc()).limit(20) - return [record.Name for record in records] + return [pkg.Name for pkg in packages] def handle(self, by: str = defaults.RPC_SEARCH_BY, args: List[str] = []): """ Request entrypoint. A router should pass v, type and args