• Alexander Nozdrin's avatar
    Backport of · fe5bcb47
    Alexander Nozdrin authored
      - revid:sp1r-svoj@mysql.com/june.mysql.com-20080324111246-00461
      - revid:sp1r-svoj@mysql.com/june.mysql.com-20080414125521-40866
    
      BUG#35274 - merge table doesn't need any base tables, gives
                  error 124 when key accessed
    
      SELECT queries that use index against a merge table with empty
      underlying tables list may return with error "Got error 124 from
      storage engine".
    
      The problem was that wrong error being returned.
    
    mysql-test/r/merge.result:
      Backport of
        - revid:sp1r-svoj@mysql.com/june.mysql.com-20080324111246-00461
        - revid:sp1r-svoj@mysql.com/june.mysql.com-20080414125521-40866
      
        A test case for BUG#35274.
      
        Modified a test case according to fix for BUG#35274. Key based
        reads are now allowed for merge tables with no underlying tables
        defined.
    mysql-test/t/merge.test:
      Backport of
        - revid:sp1r-svoj@mysql.com/june.mysql.com-20080324111246-00461
        - revid:sp1r-svoj@mysql.com/june.mysql.com-20080414125521-40866
      
        A test case for BUG#35274.
      
        Modified a test case according to fix for BUG#35274. Key based
        reads are now allowed for merge tables with no underlying tables
        defined.
    storage/myisammrg/myrg_queue.c:
      Backport of
        - revid:sp1r-svoj@mysql.com/june.mysql.com-20080324111246-00461
        - revid:sp1r-svoj@mysql.com/june.mysql.com-20080414125521-40866
      
        Return "end of file" error instead of "wrong index" error when
        we got a merge table with empty underlying tables list.
      
        In 5.1 we cannot rely on info->open_tables value when checking
        if a merge table has no underlying tables defined.
        Use info->tables instead.
    fe5bcb47
merge.test 65.1 KB