• kaa@polly.local's avatar
    Fix for bug #27643 "query failed : 1114 (The table '' is full) · d435b3ed
    kaa@polly.local authored
    Problem:
    
    HASH indexes on VARCHAR columns with binary collations did not ignore trailing spaces from strings before comparisons. This could result in duplicate records being successfully inserted into a MEMORY table with unique key constraints.
    
    As a direct consequence of the above, internal MEMORY tables used for GROUP BY calculation in testcases for bug #27643 contained duplicate rows which resulted in duplicate key errors when converting those temporary tables to MyISAM. Additionally, that error was incorrectly converted to the 'table is full' error.
    
    Solution:
    
    - ignore trailing spaces in VARCHAR fields with binary collations when calculating hashes.
    - return a proper error from create_myisam_from_heap() when conversion fails.
    d435b3ed
heap_hash.test 8.79 KB