Ok, update on the SQLite situation. Likely not a Xojo bug but a change in SQLite behavior.
I use a view to union 4 tables together, as they represent multiple subclasses. So the view represents the parent class and allows me to query any of the subclassed objects without knowing precisely what they are.
By switching the view from UNION to UNION ALL, nearly all of the performance came back. Got it to 30 seconds, compared to 25 in 2023r4. I think there’s still things that could be tweaked, but it’s already far better than 793 seconds.
So I think it’s safe to say the SQLite situation is user error. Still have the threads being slow on Windows issue, but at least one problem is solved.