1. 15 Aug, 2014 1 commit
  2. 16 Aug, 2014 1 commit
    • Olivier Bertrand's avatar
      - Modifies the way indexed UPDATE/DELETE are sorted in order to execute · 3a69c854
      Olivier Bertrand authored
        them sorted by file position. Firstly a new value is stored in indexes
        to know if they are sorted, preventing to do the sorting when it is not
        needed. Secondly, almost all in now done in connect instead of being
        done by the different file access method classes. This pepares the future
        use of temporary files for all table types and also fix the bug that was
        occuring when partially using a multi-column index because of false MRR
        like call of position followed by unsorted rnd_pos no more using indexing.
      modified:
        storage/connect/connect.cc
        storage/connect/filamap.cpp
        storage/connect/filamap.h
        storage/connect/filamdbf.cpp
        storage/connect/filamdbf.h
        storage/connect/filamfix.cpp
        storage/connect/filamfix.h
        storage/connect/filamtxt.cpp
        storage/connect/filamtxt.h
        storage/connect/filamvct.cpp
        storage/connect/filamvct.h
        storage/connect/tabdos.cpp
        storage/connect/tabdos.h
        storage/connect/tabfix.h
        storage/connect/tabfmt.cpp
        storage/connect/tabfmt.h
        storage/connect/xindex.cpp
        storage/connect/xindex.h
        storage/connect/xtable.h
      3a69c854
  3. 08 Aug, 2014 2 commits
  4. 07 Aug, 2014 2 commits
    • Olivier Bertrand's avatar
      - Commiting merge files · f835588c
      Olivier Bertrand authored
      f835588c
    • Olivier Bertrand's avatar
      This is a major update that fixes most of the issues and bugs that · 0219ac1e
      Olivier Bertrand authored
      have been created by the last addition of new CONNECT features.
      The version previous to this one is a preliminary test version and
      should not be distributed.
      
      - Handle indexed UPDATE/DELETE. Previously this was just tested and
        an error message send when it could not be done. Now CONNECT can
        do it in all the cases. It is done by a MRR like tchnique by making
        a list of all update or delete to do, sort them, then execute them.
      modified:
        storage/connect/array.cpp
        storage/connect/array.h
        storage/connect/filamap.cpp
        storage/connect/filamap.h
        storage/connect/filamdbf.cpp
        storage/connect/filamfix.cpp
        storage/connect/filamfix.h
        storage/connect/filamtxt.cpp
        storage/connect/filamtxt.h
        storage/connect/filamvct.cpp
        storage/connect/filamvct.h
        storage/connect/filamzip.cpp
        storage/connect/filamzip.h
        storage/connect/global.h
        storage/connect/ha_connect.cc
        storage/connect/ha_connect.h
      
      - Differenciate Cardinality that returns a true or estimated table size
        and GetMaxSize that return a value equal or greater than the table
        row number. This fixes the errors of non matching opt files.
      modified:
        storage/connect/connect.cc
        storage/connect/tabdos.cpp
        storage/connect/tabdos.h
        storage/connect/tabfix.cpp
        storage/connect/table.cpp
        storage/connect/tabmac.h
        storage/connect/tabmysql.cpp
        storage/connect/tabmysql.h
        storage/connect/tabodbc.cpp
        storage/connect/tabodbc.h
        storage/connect/tabpivot.h
        storage/connect/tabtbl.cpp
        storage/connect/tabtbl.h
        storage/connect/tabutil.cpp
        storage/connect/tabutil.h
        storage/connect/tabwmi.h
        storage/connect/xtable.h
      
      - Fix some errors and issues when making index and opt files.
        Erase opt and index files for void tables.
        Fix wrong calculation of Block and Last in MakeBlockValues.
        Invalidate indexes before making opt file.
        Fully handle blocked variable tables. Make opt file for blocked
        variable tables even when they have no optimised colums.
      modified:
        storage/connect/tabdos.cpp
        storage/connect/xindex.h
      
      - Fix some errors making index
        Return an error when the allocation is too small (should not
        really occur now that GetMaxSize is sure)
        Don't use XXROW index for DBF tables because of soft deleted lines.
      modified:
        storage/connect/xindex.cpp
      
      - Typo
      modified:
        storage/connect/macutil.cpp
        storage/connect/tabdos.h
        storage/connect/tabsys.cpp
        storage/connect/tabsys.h
      0219ac1e
  5. 05 Aug, 2014 1 commit
  6. 04 Aug, 2014 2 commits
  7. 31 Jul, 2014 7 commits
  8. 30 Jul, 2014 4 commits
  9. 27 Jul, 2014 1 commit
  10. 26 Jul, 2014 1 commit
  11. 25 Jul, 2014 3 commits
    • Sergey Vojtovich's avatar
      MDEV-6489 - rpl.rpl_insert, rpl.rpl_insert_delayed and · 35c78a1f
      Sergey Vojtovich authored
                  main.mysqlslap fail on PPC64
      
      There seem to be a bug on Power8 which doesn't guarantee
      a signal to be delivered to waiting thread if broadcast
      is called outside of mutex.
      
      For now workaround it by calling broadcast while mutex is
      still held.
      35c78a1f
    • Olivier Bertrand's avatar
      - Fix an error pointed out by Valgrind due to uninitialised Correlated · 4d0587c3
      Olivier Bertrand authored
        variable. This variable is not to be used by CONNECT.
      modified:
        storage/connect/array.cpp
        storage/connect/array.h
      4d0587c3
    • Jan Lindström's avatar
      Merge InnoDB fixes from 5.5 revisions 4229, 4230, 4233, 4237 and 4238 i.e. · a3acd725
      Jan Lindström authored
      4229: MDEV-5670: Assertion failure in file buf0lru.c line 2355
            Add more status information if repeatable.
      
      4230: MDEV-5673: Crash while parallel dropping multiple tables under heavy load
            Improve long semaphore wait output to include all semaphore waits
            and try to find out if there is a sequence of waiters.
      
      4233: Fix compiler errors on product build.
      
      4237: Fix too agressive long semaphore wait output and add guard against introducing
            compression failures on insert buffer.
      
      4238: Fix test failure caused by simulated compression failure on
            IBUF_DUMMY table.
      a3acd725
  12. 24 Jul, 2014 2 commits
    • Sergey Vojtovich's avatar
      MDEV-6483 - Deadlock around rw_lock_debug_mutex on PPC64 · 6192f0bf
      Sergey Vojtovich authored
      This problem affects only debug builds on PPC64.
      
      There are at least two race conditions around
      rw_lock_debug_mutex_enter and rw_lock_debug_mutex_exit:
      
      - rw_lock_debug_waiters was loaded/stored without setting
        appropriate locks/memory barriers.
      - there is a gap between calls to os_event_reset() and
        os_event_wait() and in such case we're supposed to pass
        return value of the former to the latter.
      
      Fixed by replacing self-cooked spinlocks with system mutexes.
      These days system mutexes offer much better performance. OTOH
      performance is not that critical for debug builds.
      6192f0bf
    • Olivier Bertrand's avatar
      - Try to fix some test failure · de3ee460
      Olivier Bertrand authored
      modified:
        storage/connect/mysql-test/connect/t/part_table.test
      de3ee460
  13. 23 Jul, 2014 1 commit
    • Sergey Vojtovich's avatar
      MDEV-6473 - main.statistics fails on PPC64 · d466ed90
      Sergey Vojtovich authored
      mysql.column_stats wasn't stored/restored properly on big-endian
      with histogram_type=DOUBLE_PREC_HB.
      
      Store histogram values using int2store()/uint2korr().
      
      Note that this patch invalidates previously calculated histogram
      values on big-endian.
      d466ed90
  14. 22 Jul, 2014 9 commits
  15. 21 Jul, 2014 2 commits
  16. 20 Jul, 2014 1 commit
    • Olivier Bertrand's avatar
      - FIX errors and some gcc warnings · 26e4b69f
      Olivier Bertrand authored
      modified:
        storage/connect/array.cpp
        storage/connect/array.h
        storage/connect/blkfil.cpp
        storage/connect/blkfil.h
        storage/connect/filter.cpp
        storage/connect/filter.h
        storage/connect/ha_connect.cc
        storage/connect/tabdos.cpp
        
      - FIX problems of DIR table on LINUX:
        The order of the result is not the same than the one on Windows
        An error occurs when no file match the pattern
        Also the row numbers may also be different (not fixed yet)
      modified:
        storage/connect/mysql-test/connect/r/part_file.result
        storage/connect/mysql-test/connect/r/part_table.result
        storage/connect/mysql-test/connect/t/part_file.test
      26e4b69f