diff --git a/src/observer/table/ob_table_context.cpp b/src/observer/table/ob_table_context.cpp index 440ada0a9..6df6c1115 100644 --- a/src/observer/table/ob_table_context.cpp +++ b/src/observer/table/ob_table_context.cpp @@ -479,8 +479,11 @@ int ObTableCtx::convert_lob(ObIAllocator &allocator, ObObj &obj) int ret = OB_SUCCESS; ObString full_data; - if (obj.has_lob_header()) { + if (obj.is_persist_lob()) { + // do nothing + } else if (obj.has_lob_header()) { ret = OB_ERR_UNEXPECTED; + LOG_USER_ERROR(OB_ERR_UNEXPECTED, "lob object should have lob header"); LOG_WARN("object should not have lob header", K(ret), K(obj)); } else if (OB_FAIL(ObTextStringResult::ob_convert_obj_temporay_lob(obj, allocator))) { // add lob header LOG_WARN("fail to add lob header to obj", K(ret), K(obj));