1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-30 19:23:07 +03:00

MCOL-5352 Properly handle PP restart for DML/DDL operations.

This commit is contained in:
Denis Khalikov
2024-02-01 13:27:01 +00:00
committed by Leonid Fedorov
parent d3896efb0f
commit 7f14dae5c7
31 changed files with 726 additions and 401 deletions

View File

@ -47,17 +47,13 @@ class CommandPackageProcessor : public DMLPackageProcessor
CommandPackageProcessor(BRM::DBRM* aDbrm, uint32_t sid) : DMLPackageProcessor(aDbrm, sid)
{
}
/** @brief process an CommandDMLPackage
*
* @param cpackage the CommandDMLPackage to process
*/
EXPORT DMLResult processPackage(dmlpackage::CalpontDMLPackage& cpackage);
protected:
private:
void viewTableLock(const dmlpackage::CalpontDMLPackage& cpackage, DMLResult& result);
void clearTableLock(uint64_t uniqueId, const dmlpackage::CalpontDMLPackage& cpackage, DMLResult& result);
void establishTableLockToClear(uint64_t tableLockID, BRM::TableLockInfo& lockInfo);
DMLResult processPackageInternal(dmlpackage::CalpontDMLPackage& cpackage) override;
// Tracks active cleartablelock commands by storing set of table lock IDs
static std::set<uint64_t> fActiveClearTableLockCmds;