Commit Graph

2484 Commits

Author SHA1 Message Date
Georges-Antoine Assi
9fe4eca302 Merge pull request #2303 from rommapp/db-query-micro-optimize
DB query micro optimizations
2025-08-22 11:38:53 -05:00
Georges-Antoine Assi
898f960c96 noload rom metadata on collection 2025-08-22 09:15:03 -04:00
zurdi
7f96a44190 Add validation for empty username/password in registration 2025-08-22 13:35:58 +02:00
Georges-Antoine Assi
896d8001ec fix migration 2025-08-22 00:02:59 -04:00
Georges-Antoine Assi
b26abdf9a0 noload some related tables 2025-08-21 23:59:24 -04:00
Georges-Antoine Assi
344702415f joinedload roms on collection 2025-08-21 23:23:38 -04:00
Georges-Antoine Assi
1d5cd64fb8 move is_verified to db 2025-08-21 22:58:22 -04:00
Georges-Antoine Assi
8ed107336f only print queries once 2025-08-21 22:34:07 -04:00
Georges-Antoine Assi
82f527b3ad Remove check for non extension 2025-08-20 20:48:30 -04:00
Georges-Antoine Assi
474459c9d5 move group_id coalesce into partition_by 2025-08-20 18:52:55 -04:00
Georges-Antoine Assi
0daf63dfec fix migration for postgres 2025-08-20 16:33:05 -04:00
Georges-Antoine Assi
f32dc3171d ignore type issue 2025-08-20 13:50:12 -04:00
Georges-Antoine Assi
e73b6cc190 add option to skip char index 2025-08-20 13:27:26 -04:00
Georges-Antoine Assi
1c0c93bb3d select only some columns for performance 2025-08-20 11:20:02 -04:00
Georges-Antoine Assi
0cc9789a12 fix get_scalar_roms 2025-08-19 23:40:23 -04:00
Georges-Antoine Assi
464ce6a23d only group roms in certain views 2025-08-19 22:27:49 -04:00
Georges-Antoine Assi
7850cf059f fix loading collections 2025-08-19 21:49:52 -04:00
Georges-Antoine Assi
048f8ba248 move fs_size_bytes back to db 2025-08-19 19:38:56 -04:00
Georges-Antoine Assi
cde0c0681f changes from review 2025-08-19 17:07:05 -04:00
Georges-Antoine Assi
5a5abe4e62 changes from self review 2025-08-19 16:27:46 -04:00
Georges-Antoine Assi
7370f83b8f load sibling_roms for individual roms 2025-08-19 16:08:03 -04:00
Georges-Antoine Assi
0dadf8681e fix updating smart collections 2025-08-19 15:53:03 -04:00
Georges-Antoine Assi
25983fad3a comment cleanup 2025-08-19 14:46:56 -04:00
Georges-Antoine Assi
078b140ddb simplify group_id 2025-08-19 12:50:25 -04:00
Georges-Antoine Assi
13ac6104ce Raise lazy joins so all complex joins are explicit 2025-08-19 10:02:11 -04:00
Georges-Antoine Assi
4657ca305a [ROMM-2274] Use platform_id in group_by_meta_id 2025-08-18 19:51:37 -04:00
Georges-Antoine Assi
d253d44192 [ROMM-2275] Catch readonly config file in migration 2025-08-18 16:51:20 -04:00
Georges-Antoine Assi
593f5c921d catch playmatch connect error 2025-08-18 09:08:41 -04:00
Georges-Antoine Assi
5f4943c97b find_best_match handles split name search 2025-08-17 22:39:00 -04:00
Georges-Antoine Assi
363657d139 cleanup 2025-08-17 21:08:56 -04:00
Georges-Antoine Assi
d41a920c37 normalize split tiles for ssfr 2025-08-17 20:29:44 -04:00
Georges-Antoine Assi
f0574577c9 Prefer lower IDs when matching games with same title 2025-08-17 19:53:29 -04:00
Georges-Antoine Assi
a8dc3d3e8d Await .file_exists() when storing badges 2025-08-17 17:43:19 -04:00
Georges-Antoine Assi
159e2fac13 run trunk chck 2025-08-17 16:51:37 -04:00
Georges-Antoine Assi
5faa010e96 Only update specific values on models during scan 2025-08-17 16:42:27 -04:00
Georges-Antoine Assi
c742e8ff9d dont remove articles normalize name 2025-08-15 22:48:57 -04:00
Georges-Antoine Assi
e0d1d1cf23 run sgdb in parallel 2025-08-15 22:30:13 -04:00
Georges-Antoine Assi
7c3764802f add sgdb as a cover option 2025-08-15 22:14:48 -04:00
Georges-Antoine Assi
54adb653af Normalize result names for better merging in search 2025-08-15 21:57:18 -04:00
Georges-Antoine Assi
a1519a4b05 Make default ROMM_AUTH_SECRET_KEY consistent between workers 2025-08-15 12:46:46 -04:00
Georges-Antoine Assi
f3bace0a7d bit of metadata cleanup 2025-08-15 09:50:29 -04:00
Georges-Antoine Assi
40c628aa1a simplify multi check 2025-08-15 09:49:35 -04:00
Georges-Antoine Assi
488dcc28d8 fix tests 2025-08-15 09:47:16 -04:00
Georges-Antoine Assi
4cf3641fa3 Use column properties to calculate fs_size_bytes 2025-08-14 23:14:41 -04:00
Georges-Antoine Assi
dea606ad80 Merge pull request #2261 from rommapp/hash-largest-file
Always hash the largest file in compressed multi file roms
2025-08-13 13:21:59 -05:00
Georges-Antoine Assi
4936ea5121 changes from code review 2025-08-13 14:11:33 -04:00
Georges-Antoine Assi
8fb4769776 changes from code review 2025-08-13 14:03:45 -04:00
Georges-Antoine Assi
81a04e4ab4 Always hash the largest file in compressed multi file roms 2025-08-13 13:43:07 -04:00
Michael Manganiello
80291f4be1 misc: Move cache initialization to startup script
Guarantee that cache is initialized during startup, and only once,
instead of every time a `MetadataHandler` object is instantiated.

Also, improve logic to determine `fixtures` paths.
2025-08-13 12:26:15 -03:00
Michael Manganiello
63f84b78d5 misc: Create startup script to run initial tasks before main application
For steps that need to run before the web application starts, such as
scheduling tasks, this new `startup.py` script is introduced.

This fixes a recently introduced issue where task scheduling was not
being triggered, because of it being included in the
`if __name__ == "__main__":` block, which is not executed when
the application is run by Gunicorn in production environments.

We do not include this logic as part of FastAPI's lifespan
implementation, as running multiple workers with Gunicorn would
cause this logic to be executed multiple times.
2025-08-12 23:14:26 -03:00