mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-05-30 00:27:08 +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:
parent
09276ff885
commit
d9de4cfde0
@ -2803,6 +2803,13 @@ int ha_calpont_impl_rnd_init(TABLE* table)
|
|||||||
if (thd->infinidb_vtable.vtable_state == THD::INFINIDB_DISABLE_VTABLE)
|
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);
|
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++)
|
for (unsigned int j = 0; j < oidlist.size(); j++)
|
||||||
{
|
{
|
||||||
CalpontSystemCatalog::ColType ctype = csc->colType(oidlist[j].objnum);
|
CalpontSystemCatalog::ColType ctype = csc->colType(oidlist[j].objnum);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user