greenplumn IMDProvider 代码
文件路径:/src/backend/gporca/libnaucrates/src/md/IMDProvider.cpp
/---------------------------------------------------------------------------
/ Greenplum Database
/ Copyright (C) 2012 EMC Corp.
/
/ @filename:
/ IMDProvider.cpp
/
/ @doc:
/ Abstract class for retrieving metadata from an external location
/---------------------------------------------------------------------------
#include "naucrates/md/IMDProvider.h"
#include "naucrates/md/CMDIdGPDB.h"
using namespace gpmd;
/---------------------------------------------------------------------------
/ @function:
/ IMDProvider::GetGPDBTypeMdid
/
/ @doc:
/ Return the mdid for the requested type
/
/---------------------------------------------------------------------------
IMDId *
IMDProvider::GetGPDBTypeMdid(CMemoryPool *mp,
CSystemId
#ifdef GPOS_DEBUG
sysid
#endif / GPOS_DEBUG
,
IMDType::ETypeInfo type_info)
{
GPOS_ASSERT(IMDId::EmdidGPDB == sysid.MdidType());
GPOS_ASSERT(IMDType::EtiGeneric > type_info);
switch (type_info)
{
case IMDType::EtiInt2:
return GPOS_NEW(mp) CMDIdGPDB(GPDB_INT2);
case IMDType::EtiInt4:
return GPOS_NEW(mp) CMDIdGPDB(GPDB_INT4);
case IMDType::EtiInt8:
return GPOS_NEW(mp) CMDIdGPDB(GPDB_INT8);
case IMDType::EtiBool:
return GPOS_NEW(mp) CMDIdGPDB(GPDB_BOOL);
case IMDType::EtiOid:
return GPOS_NEW(mp) CMDIdGPDB(GPDB_OID);
default:
return nullptr;
}
}
/ EOF
相关信息
相关文章
greenplumn CDXLStatsDerivedColumn 源码
greenplumn CDXLStatsDerivedRelation 源码
greenplumn CMDAggregateGPDB 源码
greenplumn CMDArrayCoerceCastGPDB 源码