[MDEV-29535] Cleanup error handling in ha_federatedx Created: 2022-09-14  Updated: 2022-09-14

Status: In Review
Project: MariaDB Server
Component/s: Storage Engine - Federated
Affects Version/s: 10.11
Fix Version/s: 10.11

Type: Bug Priority: Major
Reporter: Oleg Smirnov Assignee: Sergei Petrunia
Resolution: Unresolved Votes: 1
Labels: None


 Description   

1. Class ha_federatedx_derived_handler overrides virtual function derived_handler::print_error() with an empty implementation which causes problems with error handling. Errors are being simply ignored and occur during later processing.

void ha_federatedx_derived_handler::print_error(int, unsigned long)
{
}

2. Members of federatedx_handler_base are accessed in the end_scan_() function without checking for having been initialized. This can cause server crash if init_scan_() has not completed successfully.

int federatedx_handler_base::end_scan_()
{
  DBUG_ENTER("ha_federatedx_derived_handler::end_scan");
  (*iop)->free_result(stored_result);
  free_share(txn, share);
  DBUG_RETURN(0);
}


Generated at Thu Feb 08 10:09:21 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.