greenplumn CDXLProperties 代码
文件路径:/src/backend/gporca/libnaucrates/include/naucrates/dxl/operators/CDXLProperties.h
/---------------------------------------------------------------------------
/ Greenplum Database
/ Copyright (C) 2012 EMC Corp.
/
/ @filename:
/ CDXLProperties.h
/
/ @doc:
/ Representation of properties of a DXL operator node such as stats
/---------------------------------------------------------------------------
#ifndef GPDXL_CDXLProperties_H
#define GPDXL_CDXLProperties_H
#include "gpos/base.h"
#include "naucrates/md/CDXLStatsDerivedRelation.h"
namespace gpdxl
{
using namespace gpos;
using namespace gpmd;
enum Edxlproperty
{
EdxlpropertyLogical,
EdxlpropertyPhysical,
EdxlpropertySentinel
};
/---------------------------------------------------------------------------
/ @class:
/ CDXLProperties
/
/ @doc:
/ Container for the properties of an operator node, such as stats
/
/---------------------------------------------------------------------------
class CDXLProperties : public CRefCount
{
private:
/ derived statistics
CDXLStatsDerivedRelation *m_dxl_stats_derived_relation{nullptr};
protected:
/ serialize statistics in DXL format
void SerializeStatsToDXL(CXMLSerializer *xml_serializer) const;
public:
CDXLProperties(const CDXLProperties &) = delete;
/ ctor
explicit CDXLProperties();
/dtor
~CDXLProperties() override;
/ setter
virtual void SetStats(CDXLStatsDerivedRelation *dxl_stats_derived_relation);
/ statistical information
virtual const CDXLStatsDerivedRelation *GetDxlStatsDrvdRelation() const;
virtual Edxlproperty
GetDXLPropertyType() const
{
return EdxlpropertyLogical;
}
/ serialize properties in DXL format
virtual void SerializePropertiesToDXL(CXMLSerializer *xml_serializer) const;
};
} / namespace gpdxl
#endif / !GPDXL_CDXLProperties_H
/ EOF
相关信息
相关文章
greenplumn CDXLCtasStorageOptions 源码