You've already forked mariadb-columnstore-engine
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:
committed by
Leonid Fedorov
parent
e43472aedc
commit
c17f24b90f
@ -93,7 +93,8 @@ class DDLPackageProcessor
|
||||
NETWORK_ERROR,
|
||||
PARTITION_WARNING,
|
||||
WARN_NO_PARTITION,
|
||||
DROP_TABLE_NOT_IN_CATALOG_ERROR
|
||||
DROP_TABLE_NOT_IN_CATALOG_ERROR,
|
||||
PP_LOST_CONNECTION
|
||||
};
|
||||
|
||||
enum DebugLevel /** @brief Debug level type enumeration */
|
||||
@ -247,6 +248,18 @@ class DDLPackageProcessor
|
||||
// std::cout << "in DDLPackageProcessor constructor " << this << std::endl;
|
||||
}
|
||||
|
||||
/** @brief Function wrapper for `processPackageInternal`.
|
||||
*/
|
||||
DDLResult processPackage(ddlpackage::SqlStatement* sqlStmt);
|
||||
|
||||
/** @brief Check that give exception is related to PP lost connection.
|
||||
*/
|
||||
bool checkPPLostConnection(std::string error);
|
||||
|
||||
/** @brief Internal implementation for `process` package command.
|
||||
*/
|
||||
virtual DDLResult processPackageInternal(ddlpackage::SqlStatement* sqlStmt);
|
||||
|
||||
/** @brief destructor
|
||||
*/
|
||||
EXPORT virtual ~DDLPackageProcessor();
|
||||
@ -373,6 +386,8 @@ class DDLPackageProcessor
|
||||
*/
|
||||
EXPORT void fetchLogFile(TableLogInfo& tableLogInfos, uint64_t uniqueId);
|
||||
|
||||
// virtual EXPORT DDLResult processPackage(ddlpackage::TruncTableStatement& truncTableStmt);
|
||||
|
||||
BRM::TxnID fTxnid;
|
||||
|
||||
protected:
|
||||
@ -835,6 +850,8 @@ class DDLPackageProcessor
|
||||
void cleanString(std::string& s);
|
||||
// std::string fDDLLogFileName;
|
||||
DebugLevel fDebugLevel; // internal use debug level
|
||||
|
||||
const std::string PPLostConnectionErrorCode = "MCS-2045";
|
||||
};
|
||||
/** @brief helper template function to do safe from string to type conversions
|
||||
*
|
||||
@ -849,4 +866,3 @@ bool from_string(T& t, const std::string& s, std::ios_base& (*f)(std::ios_base&)
|
||||
} // namespace ddlpackageprocessor
|
||||
|
||||
#undef EXPORT
|
||||
|
||||
|
Reference in New Issue
Block a user