[Commits] 4d6b16f: Fixed the bug mdev-12838.

Sergey Petrunia sergey at mariadb.com
Wed Jun 7 17:49:35 EEST 2017


Hello Igor,

On Wed, May 31, 2017 at 10:45:07AM -0700, IgorBabaev wrote:
> revision-id: 4d6b16f10f9991821c128c382d32eb85248b3926 (mariadb-5.5.56-14-g4d6b16f)
> parent(s): b8405c853fa30002d164d5fe2b4f8ea8979c09b8
> author: Igor Babaev
> committer: Igor Babaev
> timestamp: 2017-05-31 10:45:07 -0700
> message:
> 
> Fixed the bug mdev-12838.
> 
...
> +bool JOIN_TAB::keyuse_is_valid_for_access_in_chosen_plan(JOIN *join,
> +                                                         KEYUSE *keyuse)
> +{
> +  if (!access_from_tables_is_allowed(keyuse->used_tables, 
> +                                     join->sjm_lookup_tables))
> +    return false;
> +  if (join->sjm_scan_tables & table->map)
> +    return true;
> +  table_map keyuse_sjm_scan_tables= keyuse->used_tables &
> +                                    join->sjm_scan_tables;
> +  if (!keyuse_sjm_scan_tables)
> +    return true;
> +  uint sjm_tab_nr= 0;
> +  while (!(keyuse_sjm_scan_tables & 1 << sjm_tab_nr))

The above "1" is a 32-bit number, while it should have the same bit length as
table_map (that is, 64). Please use "table_map(1)".


BR
 Sergei
-- 
Sergei Petrunia, Software Developer
MariaDB Corporation | Skype: sergefp | Blog: http://s.petrunia.net/blog




More information about the commits mailing list