• Davi Arnaut's avatar
    Bug#45377: ARCHIVE tables aren't discoverable after OPTIMIZE · 6318c653
    Davi Arnaut authored
    The problem was that the optimize method of the ARCHIVE storage
    engine was not preserving the FRM embedded in the ARZ file when
    rewriting the ARZ file for optimization. The ARCHIVE engine stores
    the FRM in the ARZ file so it can be transferred from machine to
    machine without also copying the FRM -- the engine restores the
    embedded FRM during discovery.
    
    The solution is to copy over the FRM when rewriting the ARZ file.
    In addition, some initial error checking is performed to ensure
    garbage is not copied over.
    
    
    mysql-test/t/archive.test:
      Add test case for Bug#45377.
    storage/archive/azio.c:
      Add error checking to ensure that the I/O operations are
      successful.
    storage/archive/ha_archive.cc:
      Copy over the embedded FRM.
    6318c653
azio.c 24.8 KB