1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

New Interview with Digitalpoint

Discussion in 'Off Topic' started by The Sandman, Mar 4, 2015.

  1. The Sandman

    The Sandman Well-Known Member

    We just posted our Interview with Shawn Hogan (Digitalpoint) Part 3 - After the Apocalpyse!
    rafass, mcatze and Amaury like this.
  2. Digital Doctor

    Digital Doctor Well-Known Member

    digitalpoint uber alles.

    Except he can't keep his site up.

    EDIT: Up and running again.
  3. digitalpoint

    digitalpoint Well-Known Member

    You caught it for the split second before automatic failover to a different DB server kicked in. Basically have been wrestling with any ALTER TABLE statement more or less seizing up the SQL node it was performed on. Huge bug in MySQL Cluster 7.4... Finally decided I'm not waiting for them to fix it anymore and going to downgrade back to MySQL Cluster 7.3.

    Our end is "self-healing", but yeah... needed to upgrade a couple WordPress blogs to 4.2.1, and the upgrade includes ALTER TABLE, which basically wrecks whatever SQL node it was performed on for a couple minutes due to this bug:


    You know... because 30+ minutes to ALTER a tiny table is super normal. haha wtf... not sure how MySQL Cluster 7.4 made it past testing. Dumbest **** ever.

    mysql> show processlist;
    | Id       | User        | Host                | db              | Command | Time | State                                     | Info                                                                                          |
    |        1 | system user |                     |                 | Daemon  |    0 | Waiting for event from ndbcluster         | NULL                                                                                          |
    | 12406625 | root        | | shawnhogan      | Query   |  925 | Waiting for ndbcluster global schema lock | ALTER TABLE wp_commentmeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci        |
    | 12406727 | root        | localhost           | NULL            | Query   |    0 | init                                      | show processlist                                                                              |
    | 12410584 | root        | | shawnhogan      | Query   |  918 | Waiting for ndbcluster global schema lock | ALTER TABLE wp_term_relationships CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci |
    | 12413356 | root        | | digitalpointads | Query   | 1950 | Waiting for ndbcluster global schema lock | ALTER TABLE wp_links CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci              |
    | 12414026 | root        | | 13411_111       | Query   | 1951 | rename result table                       | ALTER TABLE wp_comments CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci           |
    | 12450784 | root        | | xenforo         | Sleep   |    0 |                                           | NULL                                                                                          |
    | 12450785 | root        | | xenforo         | Sleep   |    0 |                                           | NULL                                                                                          |
    8 rows in set (0.00 sec)
    Digital Doctor and SneakyDave like this.
  4. digitalpoint

    digitalpoint Well-Known Member

    On a side note, I really, really, really like how you can do major version upgrades (or in this case downgrades) of the database server without users knowing anything is going on (see id=11)... just started restarting the data nodes with the older version that doesn't barf all over ALTER TABLE. :)

    ndb_mgm> show
    Cluster Configuration
    [ndbd(NDB)]    8 node(s)
    id=11    @  (mysql-5.6.24 ndb-7.3.9, starting, Nodegroup: 0)
    id=12    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 1, *)
    id=13    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 2)
    id=14    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 3)
    id=15    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 0)
    id=16    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 1)
    id=17    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 2)
    id=18    @  (mysql-5.6.24 ndb-7.4.6, Nodegroup: 3)
    [ndb_mgmd(MGM)]    2 node(s)
    id=1    @  (mysql-5.6.24 ndb-7.3.9)
    id=2    @  (mysql-5.6.24 ndb-7.3.9)
    [mysqld(API)]    33 node(s)
    id=21    @  (mysql-5.6.24 ndb-7.3.9)
    id=22    @  (mysql-5.6.24 ndb-7.3.9)
    id=23    @  (mysql-5.6.24 ndb-7.3.9)
    id=24    @  (mysql-5.6.24 ndb-7.3.9)
    id=25    @  (mysql-5.6.24 ndb-7.3.9)
    id=26    @  (mysql-5.6.24 ndb-7.3.9)
    id=27    @  (mysql-5.6.24 ndb-7.3.9)
    id=28    @  (mysql-5.6.24 ndb-7.3.9)
    id=31    @  (mysql-5.6.24 ndb-7.3.9)
    id=32    @  (mysql-5.6.24 ndb-7.3.9)
    id=33    @  (mysql-5.6.24 ndb-7.3.9)
    id=34    @  (mysql-5.6.24 ndb-7.3.9)
    id=35    @  (mysql-5.6.24 ndb-7.3.9)
    id=36    @  (mysql-5.6.24 ndb-7.3.9)
    id=37    @  (mysql-5.6.24 ndb-7.3.9)
    id=38    @  (mysql-5.6.24 ndb-7.3.9)
    id=41    @  (mysql-5.6.24 ndb-7.3.9)
    id=42    @  (mysql-5.6.24 ndb-7.3.9)
    id=43    @  (mysql-5.6.24 ndb-7.3.9)
    id=44    @  (mysql-5.6.24 ndb-7.3.9)
    id=45    @  (mysql-5.6.24 ndb-7.3.9)
    id=46    @  (mysql-5.6.24 ndb-7.3.9)
    id=47    @  (mysql-5.6.24 ndb-7.3.9)
    id=48    @  (mysql-5.6.24 ndb-7.3.9)
    id=51    @  (mysql-5.6.24 ndb-7.3.9)
    id=52    @  (mysql-5.6.24 ndb-7.3.9)
    id=53    @  (mysql-5.6.24 ndb-7.3.9)
    id=54    @  (mysql-5.6.24 ndb-7.3.9)
    id=55    @  (mysql-5.6.24 ndb-7.3.9)
    id=56    @  (mysql-5.6.24 ndb-7.3.9)
    id=57    @  (mysql-5.6.24 ndb-7.3.9)
    id=58    @  (mysql-5.6.24 ndb-7.3.9)
    id=59 (not connected, accepting connect from any host)
  5. SneakyDave

    SneakyDave Well-Known Member

    You mean with clustering, right? Or do you mean with an individual MySQL instance?

    Haven't tried clustering yet. Seems like it'd be a lot of things that can break.

    Are you doing a file system backup of your database files, or use logging, or a third party service?
  6. digitalpoint

    digitalpoint Well-Known Member

    MySQL Cluster is a completely different beast... it's really not MySQL at all... it's basically designed to scale linearly and have no single point of failure. (last time I benchmarked my cluster, it was able to push through about 35,000,000 queries per second... the bottleneck being the 54Gbit Infiniband networking.

    For backups, MySQL Cluster has a system where you can do hot backups (doesn't require any table locking so it doesn't affect users). I do a full backup nightly.

    A general overview of MySQL Cluster here:

    Daniel Hood and SneakyDave like this.
  7. AdamD

    AdamD Well-Known Member

    Is it self aware too? lol.
  8. digitalpoint

    digitalpoint Well-Known Member

    In a manner of speaking, yes. ;)
    AdamD likes this.
  9. AdamD

    AdamD Well-Known Member

    I'm starting to suspect you are an AI, like Skynet :p
    Amaury likes this.

Share This Page