You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-07 03:22:57 +03:00
MCOL-5352 Properly handle PP restart for DML/DDL operations.
This commit is contained in:
committed by
Leonid Fedorov
parent
d3896efb0f
commit
7f14dae5c7
@@ -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 */
|
||||
@@ -283,6 +284,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();
|
||||
@@ -409,6 +422,8 @@ class DDLPackageProcessor
|
||||
*/
|
||||
EXPORT void fetchLogFile(TableLogInfo& tableLogInfos, uint64_t uniqueId);
|
||||
|
||||
// virtual EXPORT DDLResult processPackage(ddlpackage::TruncTableStatement& truncTableStmt);
|
||||
|
||||
BRM::TxnID fTxnid;
|
||||
|
||||
protected:
|
||||
@@ -871,6 +886,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
|
||||
*
|
||||
@@ -885,4 +902,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