Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-6531

MySQL Bug #72809 - InnoDB Linux native aio setup missing barrier after setup

    XMLWordPrintable

    Details

      Description

      The following patch is suggested by Stewart Smith:

      memory barrier at end of setting up innodb aio
       
      we need a memory barrier here as otherwise when IO threads start they
      can get a stale view of the data structure.
       
      It turns out that POWER8 is fast enough with large enough caches that
      this can actually be a problem.
       
      You can reproduce this by attempting to do a lot of writes shortly after
      server startup - you'll hit a really odd assert.
       
      Index: mysql-5.6.17/storage/innobase/os/os0file.cc
      ===================================================================
      --- mysql-5.6.17.orig/storage/innobase/os/os0file.cc
      +++ mysql-5.6.17/storage/innobase/os/os0file.cc
      @@ -3782,7 +3782,7 @@ skip_native_aio:
                      slot->ret = 0;
       #endif /* WIN_ASYNC_IO */
              }
      -
      +       __sync_synchronize();
              return(array);
       }

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              axel Axel Schwenke
              Reporter:
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Git Integration