[FEAT MERGE] Lob SQL refactoring (Mem-LobLocator, expressions and dbms_lob adaptions)

Co-authored-by: chaser-ch <chaser.ch@antgroup.com>
This commit is contained in:
obdev
2023-01-28 20:40:15 +08:00
committed by ob-robot
parent 4bb1033505
commit 3d4f554258
350 changed files with 19091 additions and 3918 deletions

View File

@ -33,6 +33,7 @@ class ObPhysicalPlanCtx;
int datum_accuracy_check(const ObExpr &expr,
const uint64_t cast_mode,
ObEvalCtx &ctx,
bool has_lob_header,
const common::ObDatum &in_datum,
ObDatum &res_datum,
int &warning);
@ -44,6 +45,7 @@ int datum_accuracy_check(const ObExpr &expr,
const uint64_t cast_mode,
ObEvalCtx &ctx,
const common::ObAccuracy &acc,
bool has_lob_header,
const common::ObDatum &in_datum,
ObDatum &res_datum,
int &warning);
@ -69,11 +71,13 @@ int ob_datum_to_ob_time_with_date(const common::ObDatum &datum,
common::ObTime& ob_time,
const int64_t cur_ts_value,
const bool is_dayofmonth,
const ObDateSqlMode date_sql_mode);
const ObDateSqlMode date_sql_mode,
const bool has_lob_header);
int ob_datum_to_ob_time_without_date(const common::ObDatum &datum,
const common::ObObjType type,
const common::ObTimeZoneInfo *tz_info,
common::ObTime &ob_time);
common::ObTime &ob_time,
const bool has_lob_header);
// 进行datetime到string的转换,除了ob_datum_cast.cpp需要使用,有的表达式也需要将结果
// 从datetime转为string, 例如ObExprTimeStampAdd
int common_datetime_string(const common::ObObjType in_type,
@ -94,7 +98,8 @@ public:
static int hextoraw_string(const ObExpr &expr,
const common::ObString &in_str,
ObEvalCtx &ctx,
ObDatum &res_datum);
ObDatum &res_datum,
bool &has_set_res);
static int hextoraw(const ObExpr &expr, const common::ObDatum &in,
const common::ObObjType &in_type,
const common::ObCollationType &in_cs_type,
@ -106,7 +111,8 @@ static int uint_to_raw(const common::number::ObNumber &uint_num, const ObExpr &e
static int unhex(const ObExpr &expr,
const common::ObString &in_str,
ObEvalCtx &ctx,
ObDatum &res_datum);
ObDatum &res_datum,
bool &has_set_res);
static int rawtohex(const ObExpr &expr,
const common::ObString &in_str,
ObEvalCtx &ctx,