greenplumn CDXLMinidump 代码
文件路径:/src/backend/gporca/libgpopt/include/gpopt/minidump/CDXLMinidump.h
/---------------------------------------------------------------------------
/ Greenplum Database
/ Copyright (C) 2012 EMC Corp.
/
/ @filename:
/ CDXLMinidump.h
/
/ @doc:
/ DXL-based minidump structure
/---------------------------------------------------------------------------
#ifndef GPOPT_CDXLMinidump_H
#define GPOPT_CDXLMinidump_H
#include "gpos/base.h"
#include "naucrates/dxl/CDXLUtils.h"
/ fwd decl
namespace gpos
{
class CBitSet;
}
namespace gpdxl
{
class CDXLNode;
}
using namespace gpos;
using namespace gpdxl;
namespace gpopt
{
/---------------------------------------------------------------------------
/ @class:
/ CDXLMinidump
/
/ @doc:
/ DXL-based minidump
/
/---------------------------------------------------------------------------
class CDXLMinidump
{
private:
/ traceflags
CBitSet *m_pbs;
/ optimizer configuration
COptimizerConfig *m_optimizer_config;
/ DXL query tree
CDXLNode *m_query_dxl_root;
/ Array of DXL nodes that represent the query output
CDXLNodeArray *m_query_output;
/ Array of DXL nodes that represent the CTE producers
CDXLNodeArray *m_cte_producers;
/ DXL plan
CDXLNode *m_plan_dxl_root;
/ metadata objects
IMDCacheObjectArray *m_mdid_cached_obj_array;
/ source system ids
CSystemIdArray *m_system_id_array;
/ plan Id
ULLONG m_plan_id;
/ plan space size
ULLONG m_plan_space_size;
public:
CDXLMinidump(const CDXLMinidump &) = delete;
/ ctor
CDXLMinidump(CBitSet *pbs, COptimizerConfig *optimizer_config,
CDXLNode *query, CDXLNodeArray *query_output_dxlnode_array,
CDXLNodeArray *cte_producers, CDXLNode *pdxlnPlan,
IMDCacheObjectArray *mdcache_obj_array,
CSystemIdArray *pdrgpsysid, ULLONG plan_id,
ULLONG plan_space_size);
/ dtor
~CDXLMinidump();
/ traceflags
const CBitSet *Pbs() const;
/ optimizer configuration
COptimizerConfig *
GetOptimizerConfig() const
{
return m_optimizer_config;
}
/ query object
const CDXLNode *GetQueryDXLRoot() const;
/ query output columns
const CDXLNodeArray *PdrgpdxlnQueryOutput() const;
/ CTE list
const CDXLNodeArray *GetCTEProducerDXLArray() const;
/ plan
const CDXLNode *PdxlnPlan() const;
/ metadata objects
const IMDCacheObjectArray *GetMdIdCachedObjArray() const;
/ source system ids
const CSystemIdArray *GetSysidPtrArray() const;
/ return plan id
ULLONG GetPlanId() const;
/ return plan space size
ULLONG GetPlanSpaceSize() const;
}; / class CDXLMinidump
} / namespace gpopt
#endif / !GPOPT_CDXLMinidump_H
/ EOF
相关信息
相关文章
greenplumn CMetadataAccessorFactory 源码
greenplumn CMinidumperUtils 源码
greenplumn CSerializableMDAccessor 源码
greenplumn CSerializableOptimizerConfig 源码
greenplumn CSerializablePlan 源码