← Back to team overview

maria-developers team mailing list archive

Re: 0310b44: MDEV-10418 Assertion `m_extra_cache' failed in ha_partition::late_extra_cache(uint)

 

Hi, Alexey!

I see :)
Thanks!

On Feb 21, Alexey Botchkov wrote:
> > This seems fairly obvious, that it should.
> > But why MySQL doesn't have this bug (despite not resetting
> > m_extra_prepare_for_update)?
> 
> The difference is in the ha_partition::late_extra_cache() function
> MySQL:
>    if (m_extra_prepare_for_update)
>    {
>      (void) file->extra(HA_EXTRA_PREPARE_FOR_UPDATE);
>    }
> 
> Maria:
>    if (m_extra_prepare_for_update)
>    {
>      DBUG_ASSERT(m_extra_cache);
>      (void) file->extra(HA_EXTRA_PREPARE_FOR_UPDATE);
>    }
> 
> And that DBUG_ASSERT() actually does the crash.
> 
> MySQL just blindly does the file->extra(HA_EXTRA_PREPARE_FOR_UPDATE)
> even for that 'SELECT * FROM t2;' query.
> 
> Best regards.
> HF
> 
Regards,
Sergei
Chief Architect MariaDB
and security@xxxxxxxxxxx


References