1. 14 Jan, 2011 5 commits
    • Sergei Golubchik's avatar
      Added support for NO_RECORD record format (don't store any row data) for Aria. · 60c791d9
      Sergei Golubchik authored
      This makes the keys smaller (no row pointer) and gives us proper errors if we
      use the table wrongly.
      
      sql/sql_select.cc:
        Use NO_RECORD for tables that doesn't need row data.
      storage/maria/Makefile.am:
        Added ma_norec.c
      storage/maria/ma_check.c:
        Added support for NO_RECORD record format (don't store any row data)
      storage/maria/ma_norec.c:
        Added support for NO_RECORD record format
      storage/maria/ma_open.c:
        Added support for NO_RECORD record format
      storage/maria/ma_search.c:
        Added support for 0 size row pointers (used with NO_RECORD)
      storage/maria/ma_test1.c:
        Added testing of NO_RECORD record format.
      storage/maria/maria_chk.c:
        Added support for NO_RECORD
      storage/maria/maria_def.h:
        Added support for NO_RECORD
      storage/maria/unittest/ma_test_all-t:
        Added testing of NO_RECORD record format
      60c791d9
    • Sergei Golubchik's avatar
      use normal unique (HA_NOSAME) keys for expression cache · 3880896c
      Sergei Golubchik authored
      temptables, not "uniques", that are hash-based keys.
      
      sql/sql_expression_cache.cc:
        Don't set uniques (we don't want or need an unique
        constraint on this table)
      3880896c
    • Sergei Golubchik's avatar
      Added to Aria better hash for packed numeric data for unique handling. · ef6e25b2
      Sergei Golubchik authored
      This was needed as the old code caused us to have LOTS of duplicate
      hash values when used by optimizer.
      
      include/m_ctype.h:
        Made my_hash_sort_bin() exernal
      storage/maria/ma_unique.c:
        Better hash for packed numeric data for unique handling.
        This was needed as the old code caused us to have LOTS
        of duplicate hash values when used by optimizer.
      ef6e25b2
    • Sergei Golubchik's avatar
    • Sergei Golubchik's avatar
      Removed some old comments. · 9f8a5370
      Sergei Golubchik authored
      mysys/my_handler.c:
        Fixed typo
      9f8a5370
  2. 17 Jan, 2011 2 commits
  3. 16 Jan, 2011 1 commit
  4. 15 Jan, 2011 4 commits
    • Igor Babaev's avatar
      Merge · 28b86c18
      Igor Babaev authored
      28b86c18
    • Igor Babaev's avatar
      Fixed LP bug #698882. · 6aeae1dd
      Igor Babaev authored
      Made sure that the optimal fields are used by TABLE_REF objects
      when building index access keys to joined tables.
      Fixed a bug in the template function that sorts the elements of
      a list using the bubble sort algorithm. The bug caused poor
      performance of the function. Also added an optimization that
      skips comparison with the most heavy elements that has been 
      already properly placed in the list.
      Made the comparison of the fields belonging to the same Item_equal
      more granular: fields belonging to the same table are also ordered
      according to some rules.
      6aeae1dd
    • Igor Babaev's avatar
      Merge · 0cef7431
      Igor Babaev authored
      0cef7431
    • Igor Babaev's avatar
      Ported the fix for LP bug #702310 / bug #59493. · 5407e665
      Igor Babaev authored
      An assertion failure was triggered for a 6-way join query that used two
      join buffers.
      The failure happened because every call of JOIN_CACHE::join_matching_records
      saved and restored status of all tables that were accessed before the table
      join_tab. It must do it only for those of them that follow the last table 
      using a join buffer.
      5407e665
  5. 14 Jan, 2011 8 commits
  6. 13 Jan, 2011 4 commits
  7. 12 Jan, 2011 1 commit
    • Sergey Petrunya's avatar
      BUG#665669: Result differences on query re-execution · d64cf60f
      Sergey Petrunya authored
      - Cause: handler::in_range_check_pushed_down was not reset when a 
        command would call handler->idx_cond_push() without later calling
        handler->index_end().
      - Fix: reset the variable in handler->reset(), too (like we do with other
        Index Condition Pushdown members).
      d64cf60f
  8. 05 Jan, 2011 1 commit
    • Igor Babaev's avatar
      Fixed LP bug #697557. · 8291d34a
      Igor Babaev authored
      When stored in a key buffer any varchar field has a length prefix
      that always takes 2 bytes.
      8291d34a
  9. 30 Dec, 2010 1 commit
  10. 29 Dec, 2010 2 commits
  11. 28 Dec, 2010 3 commits
  12. 27 Dec, 2010 3 commits
    • Igor Babaev's avatar
      Post-merge fixes. · bf466a27
      Igor Babaev authored
      bf466a27
    • Igor Babaev's avatar
      Merge · 15fca76f
      Igor Babaev authored
      15fca76f
    • Igor Babaev's avatar
      Fixed LP bug #694443. · d3fd9a16
      Igor Babaev authored
      One of the hash functions employed by the BNLH join algorithm
      calculates the the value of hash index for key value utilizing
      every byte of the key buffer. To make this calculation valid
      one has to ensure that for any key value unused bytes of the 
      buffer are filled with with a certain filler. We choose 0 as
      a filler for these bytes.
      
      Added an optional boolean parameter with_zerofill to the function
      key_copy. If the value of the parameter is TRUE all unused bytes
      of the key buffer is filled with 0. 
      d3fd9a16
  13. 26 Dec, 2010 1 commit
  14. 25 Dec, 2010 2 commits
  15. 24 Dec, 2010 2 commits
    • Igor Babaev's avatar
      Fixed LP bug#694092. · ef292642
      Igor Babaev authored
      In some cases the function make_cond_for_index() was mistaken
      when detecting index only pushdown conditions for a table: 
      a pushdown condition that was not index only could be marked
      as such.
      It happened because the procedure erroneously used the markers
      for index only conditions that remained from the calls of
      this function that extracted the index conditions for other 
      tables.
      Fixed by erasing index only markers as soon as they are need
      anymore.
      ef292642
    • Igor Babaev's avatar
      Merge: mwl#24+mwl#21 5.1->5.2 · e99e7fb1
      Igor Babaev authored
      e99e7fb1