Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make use of INSERT ... RETURNING #923

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from
Draft

Make use of INSERT ... RETURNING #923

wants to merge 1 commit into from

Conversation

shish
Copy link
Owner

@shish shish commented Jun 25, 2023

This is cleaner... but mysql ;(

  • Postgres / sqlite / mariadb have supported it for long enough to reach debian stable
  • mysql, no support even in latest??

@shish shish changed the base branch from master to main December 27, 2023 10:19
@discomrade
Copy link
Contributor

discomrade commented Feb 23, 2024

Is MySQL worth supporting? I haven't been able to find any advantage it has over MariaDB, except for proprietary customers trying to avoid a copyleft license (not a concern here). It's at the point where most common server Linux distributions just install mariadb when told to install mysql.

@shish
Copy link
Owner Author

shish commented Feb 23, 2024

That is tempting...

The main reason to support it is that Shimmie was originally intended to be "the imageboard which anyone can install anywhere" (because ~20 years ago I was in high school and couldn't make Danbooru run on my $1/month shared LAMP web host). Today's entry-level webhosts (dreamhost, hostgator, etc) still seem to be offering the original mysql 😭

Buuuuuut... the entry-level webhosts do appear to have finally started offering vaguely-recent versions of PHP, which include SQLite, and IMO SQLite is a better choice for small-medium sites anyway, so I guess the question is how many users will I be screwing over if mysql support gets dropped now?

Looking at self-reported installs since we started collecting database version numbers in mid 2020:

     26    "mariadb"
     22    "mysql"
     16    "pgsql"
     23    "sqlite"
      1    "mariadb 10.1"
      6    "mariadb 10.3"
      4    "mariadb 10.4"
     10    "mariadb 10.5"
      3    "mariadb 10.6"
      1    "mariadb 10.8"
      1    "mariadb 11.2"
      8    "mysql 5.7"
     14    "mysql 8.0"
      1    "pgsql 10"
      3    "pgsql 11"
      2    "pgsql 12"
      5    "pgsql 13"
      4    "pgsql 14"
      1    "pgsql 16"
      2    "sqlite 3.26"
      2    "sqlite 3.27"
      1    "sqlite 3.28"
      1    "sqlite 3.30"
      2    "sqlite 3.31"
      1    "sqlite 3.33"
      5    "sqlite 3.34"
      4    "sqlite 3.36"
      1    "sqlite 3.37"
      1    "sqlite 3.39"
      3    "sqlite 3.40"

But then only looking at 2022 onwards:

     11    "mariadb"
      3    "mysql"
     10    "pgsql"
     15    "sqlite"
      1    "mariadb 10.4"
      5    "mariadb 10.5"
      3    "mariadb 10.6"
      1    "mariadb 10.8"
      1    "mariadb 11.2"
      2    "mysql 5.7"
      1    "mysql 8.0"
      1    "pgsql 11"
      5    "pgsql 13"
      3    "pgsql 14"
      1    "pgsql 16"
      1    "sqlite 3.27"
      1    "sqlite 3.31"
      5    "sqlite 3.34"
      3    "sqlite 3.36"
      1    "sqlite 3.37"
      1    "sqlite 3.39"
      3    "sqlite 3.40"

So of the three people who have checked-in recently and are using mysql, two are already using an explicitly-not-supported version 🤔

Caveat that all the data collection is strictly opt-in, and most people who send a report do so one time straight after installation and never again, so I have no idea how representative it is (I don't even know where this sudden burst of bug reports and pull requests has come from after a few years of near-zero activity 😅 )

@discomrade
Copy link
Contributor

I wasn't thinking from a shared hosting perspective, you have a good point about staying accessible to hoster-provided LAMP offerings. Admins don't have much choice there.

so I guess the question is how many users will I be screwing over if mysql support gets dropped now?

I wonder if adding a message to the next release/s asking for feedback on phasing out MySQL support will be insightful.

Are there any other improvements that could be made if MySQL support were dropped, or is it just this minor change? Because as much as I like code simplification and closing issues, it wouldn't be worth it just for this if it ruins any active boorus.

I don't even know where this sudden burst of bug reports and pull requests has come from after a few years of near-zero activity 😅

For me personally, I've recently decided to migrate a booru.org site over to self-hosting, so I've been working on a few Gelbooru 0.1 features to make the change smoother. It wasn't due to any specific change with booru.org so I don't know where other contributors are coming from, but that's the great thing about an accessible tool that anyone can host - people can join and contribute when least expected :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants