1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-05-27 01:57:30 +03:00

MCOL-279 Debuging 279 revealed a weakness in processing when front end ond backend were out of sync. It could cause a mysqld crash. Added error code to check and report, rather than crash.

This commit is contained in:
David Hall 2016-09-01 12:46:22 -05:00
parent 09276ff885
commit d9de4cfde0

View File

@ -2803,6 +2803,13 @@ int ha_calpont_impl_rnd_init(TABLE* table)
if (thd->infinidb_vtable.vtable_state == THD::INFINIDB_DISABLE_VTABLE)
{
CalpontSystemCatalog::RIDList oidlist = csc->columnRIDs(make_table(table->s->db.str, table->s->table_name.str), true);
if (oidlist.size() != num_attr)
{
string emsg = "Size mismatch probably caused by front end out of sync";
setError(thd, ER_INTERNAL_ERROR, emsg);
CalpontSystemCatalog::removeCalpontSystemCatalog(sessionID);
goto internal_error;
}
for (unsigned int j = 0; j < oidlist.size(); j++)
{
CalpontSystemCatalog::ColType ctype = csc->colType(oidlist[j].objnum);