Hey, I still love GMS - thanks for your work on it.
I naively started to use FULL JOIN to join a bunch of large tables recently. 5000 rows, FULL JOIN to 15000 rows, FULL JOIN again to 700 rows, FULL JOIN again to 200 rows.
This was painfully slow. (I eventually realised I could rewrite this by adding an additional CTE at the start, and then using LEFT JOINs instead).
I feel like I was given enough rope to hang myself with here. As:
- MySQL typically doesn't actually support FULL JOIN, and
EDIT: Postgres is 100x faster, even with no indices on the tables
GMS doesn't use Indexes during querying
My feeling was that an efficient FULL JOIN would use Indexes (but maybe I'm wrong)
I think I'd suggest removing FULL JOIN from GMS, so that:
It's more consistent with MySQL, and
You remove this performance footgun, while indices are still not supported.
Do you think you could speed this up?
Hey, I still love GMS - thanks for your work on it.
I naively started to use FULL JOIN to join a bunch of large tables recently. 5000 rows, FULL JOIN to 15000 rows, FULL JOIN again to 700 rows, FULL JOIN again to 200 rows.
This was painfully slow. (I eventually realised I could rewrite this by adding an additional CTE at the start, and then using LEFT JOINs instead).
I feel like I was given enough rope to hang myself with here. As:
EDIT: Postgres is 100x faster, even with no indices on the tables
GMS doesn't use Indexes during queryingMy feeling was that an efficient FULL JOIN would use Indexes (but maybe I'm wrong)I think I'd suggest removingFULL JOINfrom GMS, so that:It's more consistent with MySQL, andYou remove this performance footgun, while indices are still not supported.Do you think you could speed this up?