Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Jun 30, 2022
  2. Jun 29, 2022
  3. Jun 28, 2022
  4. Jun 27, 2022
    • Ryan Laurie's avatar
      handle null categories in picker (#23577) · dc66b76a
      Ryan Laurie authored
      dc66b76a
    • Ariya Hidayat's avatar
      304398ce
    • Case Nelson's avatar
      Add ddl persistence support for mysql (#23443) · 76fb3484
      Case Nelson authored
      * Add ddl persistence support for mysql
      
      Since mysql does not have the concept of a (non-select) statement timeout,
      it is necessary to use core.async to monitor the create table as select
      statement manually. While mariadb does support a general statement
      timeout, this will work for both vendors. There are some race conditions
      here but in the context of persistence, this is ok. Mainly, the timeout
      could hit right as the create table finishes. If that happens, the
      statement will not be killed (because it was closed when finished), the
      table will be created, but the function will throw a timeout exception.
      In the context of persistence, this is ok since persisted-info will
      remain inactive and the next refresh will drop the table and try again.
      
      The other aspect to consider is that mysql doesn't rollback ddl changes.
      So we have to manually keep track of what was done when testing the db
      and undo the steps on failure. This isn't perfect, as the undo itself
      could throw an exception, thus leaving the schema or test table in place,
      that should only happen if a role has a create table but not a delete
      table grant. In any event, if a our schema or test table sticks around,
      they could be removed manually by a dba, or ignored without harm.
      
      * Handle integrating mysql, and make sure exceptions are logged
      
      * Add tests for execute-with-timeout
      
      * Fix linters
      
      * Switch to async/thread because reflection hints are lost by a/go and it's better not to do io in go-blocks
      
      * Fix test
      76fb3484
    • Nick Fitzpatrick's avatar
      Dashboard edit title inline (#23565) · ae2b0106
      Nick Fitzpatrick authored
      ae2b0106
Loading