• BoofStroke
    link
    fedilink
    English
    3610 months ago

    Yet it’s the sysadmin who gets blamed, not the developer. “How can you tune the database so this doesn’t happen?”

    • @[email protected]
      link
      fedilink
      2310 months ago

      I am telling you this because hopefully it will make you feel a little better. Our head of it blames devs for slow queries.

      • @lightnegative
        link
        310 months ago

        Devs who don’t understand how SQL or relational databases work write absolute abortions of queries.

        9 times out of 10 - yes it is absolutely the devs. I say that as the dev who gets tasked with analysing why these shitty queries from our low budget outsourced labour are so slow

        • @[email protected]
          link
          fedilink
          410 months ago

          So you are saying you are the expert in unshitifying queries? What is the most common thing that needs to be unshitified?

          • @lightnegative
            link
            410 months ago

            Err, no? At what point did I claim to be an expert?

            It doesn’t take a genius to realise that serving 100-record chunks of a billion record dataset using limit 100 offset 582760200 is never gonna perform well

            Or that converting indexed time columns to strings and doing string comparisons on them makes every query perform an entire table scan, which is obvious if you actually take the time to look at the query plan (spoiler: they don’t)

            “Why can’t the system handle more than 2 queries per second? This database sucks”

            • @[email protected]
              link
              fedilink
              310 months ago

              I didn’t mean it so serious. I just tried to express that you seem to have experience with it and I am wondering what you have to deal with. I am sorry if it came across negatively.

    • stewie410
      link
      fedilink
      810 months ago

      I’m the sysadmin (and transitioning to DevOps) at work, but the DBs are 100% in control of our two devs (one of which being the head of IT).

      Apparently we’re going to hire a third Dev, who will moonlight as our DBA – oh, and for 30K/yr.

      I’m sure this will go well.

    • @bassomitron
      link
      English
      510 months ago

      At my job, it’s almost always the dev team that is called first for bad DB performance (not always, because sometimes it is the server that’s borked).

    • @Evotech
      link
      510 months ago

      Infinitely this, biggest pet peeve

    • @RustyNova
      link
      2810 months ago

      Poor guy got sigkill-ed, but MySQL keeps going with the request

    • @[email protected]
      link
      fedilink
      English
      1010 months ago

      Very big table, complex operations, much waiting, so yeah.

      In this comic, bodily decomposition occurs at a “feels like” pace:-).

  • @[email protected]
    link
    fedilink
    2310 months ago

    Allergic to Indices? If your database is slow just add more Indices until you have one on every column of every table! :-)

  • FreshLight
    link
    fedilink
    1110 months ago

    The guy after him:

    “Hmm since I don’t feel like looking in the documentation for every possible key of this attribute, I’ll just throw a distinct. And while I’m at it, let’s do this for every attribute that I don’t know the keys of”

  • @[email protected]
    link
    fedilink
    1010 months ago

    Is this a MySQL specific problem? I have witnessed a few dead queries on Sybase / Oracle / etc

    • @breadsmasher
      link
      English
      10
      edit-2
      10 months ago

      I don’t think its mysql specifically, but for some reason the worst systems I have used, all have mysql/mariadb as a database.

      It seems shitty applications gravitate to mysql, use it poorly, then bring a bad name to mysql.

      But given all my years of experience with it, MSSQL > Posgresql > Mysql > Oracle

      • @[email protected]
        link
        fedilink
        4
        edit-2
        10 months ago

        I feel like the popularity of the LAMP stack (or WAMP if you were just starting out your interest in software and hadn’t yet moved to Linux) in the 00s and early 10s is to blame here. MySQL ended up being the default choice for people who didn’t know much about databases.

        Now that I know more than I did at the age of 14 when I first started learning programming… I’ll be honest, I’m still likely to choose MySQL just because it’s familiar. But at least I know what indices are now, and I try to avoid dependent subqueries :)

        To be fair, I feel like I should use Postgresql more, I just haven’t actually ever worked on anything that needed the cool data types it has extensions for.

      • Semi-Hemi-Demigod
        link
        fedilink
        210 months ago

        Databases need tuning for your workload, and most people just think it’s a big box where you can dump anything you want and it will work. And then when it chokes on a terrible query they blame the DBA.

        This makes DBAs very cranky.

      • @vapeloki
        link
        210 months ago

        I was a DBA for over 10 years. Postgresql is superior to mssql in most ways. Especially replication.

        But that does not mean that mssql is bad. MySQL is, oracle is.

    • @marcos
      link
      310 months ago

      Usually DBMSs have some small capacity to handle requests in parallel so everything slows down, but work is still getting done.

  • @Bye
    link
    910 months ago

    How come people use sql instead of just using text files? I just use text files for everything

    • @lightnegative
      link
      7
      edit-2
      10 months ago

      What are text files if not binary blobs on disk?

      What is SQL if not a query layer over a bunch of binary blobs on disk?

  • Anna
    link
    fedilink
    910 months ago

    This is fake the pid of the younger guy is smaller than that of grandpa

    • palordrolap
      link
      fedilink
      2
      edit-2
      10 months ago

      Could be an instance of BSD where (so I hear) PIDs are assigned randomly from the unused numbers, or else the system has massive process churn going on elsewhere and the old timer is from a previous cycle of consecutive PIDs.

      Some systems still have /proc/sys/kernel/pid_max set to something around 32768, so wrapping back to 0 can happen fairly often.

      Given all the PIDs in the comic seem pretty low, it might even be as low as 1024 wherever this is.

      (Yes, I know I’m taking this way too seriously.)

  • @NOT_RICK
    link
    English
    310 months ago

    Using subqueries instead of CTEs, scrubs!

  • @[email protected]
    link
    fedilink
    2
    edit-2
    10 months ago

    Why do they wait in line for one guy? It’s just a select and there should be multiple employees at the counter, or not?