greenplumn CDXLSpoolInfo 代码
文件路径:/src/backend/gporca/libnaucrates/include/naucrates/dxl/operators/CDXLSpoolInfo.h
/---------------------------------------------------------------------------
/ Greenplum Database
/ Copyright (C) 2011 Greenplum, Inc.
/
/ @filename:
/ CDXLSpoolInfo.h
/
/ @doc:
/ Class for representing spooling info in shared scan nodes, and nodes that
/ allow sharing (currently Materialize and Sort).
/---------------------------------------------------------------------------
#ifndef GPDXL_CDXLSpoolInfo_H
#define GPDXL_CDXLSpoolInfo_H
#include "gpos/base.h"
#include "gpos/string/CWStringConst.h"
#include "naucrates/dxl/gpdb_types.h"
namespace gpdxl
{
/ fwd decl
class CXMLSerializer;
enum Edxlspooltype
{
EdxlspoolNone,
EdxlspoolMaterialize,
EdxlspoolSort,
EdxlspoolSentinel
};
/---------------------------------------------------------------------------
/ @class:
/ CDXLSpoolInfo
/
/ @doc:
/ Class for representing spooling info in shared scan nodes, and nodes that
/ allow sharing (currently Materialize and Sort).
/
/---------------------------------------------------------------------------
class CDXLSpoolInfo
{
private:
/ id of the spooling operator
ULONG m_spool_id;
/ type of the underlying spool
Edxlspooltype m_spool_type;
/ is the spool shared across multiple slices
BOOL m_is_multi_slice_shared;
/ slice executing the underlying sort or materialize
INT m_executor_slice_id;
/ spool type name
const CWStringConst *GetSpoolTypeName() const;
public:
CDXLSpoolInfo(CDXLSpoolInfo &) = delete;
/ ctor/dtor
CDXLSpoolInfo(ULONG ulSpoolId, Edxlspooltype edxlspstype, BOOL fMultiSlice,
INT iExecutorSlice);
/ accessors
/ spool id
ULONG GetSpoolId() const;
/ spool type (sort or materialize)
Edxlspooltype GetSpoolType() const;
/ is spool shared across multiple slices
BOOL IsMultiSlice() const;
/ id of slice executing the underlying operation
INT GetExecutorSliceId() const;
/ serialize operator in DXL format
void SerializeToDXL(CXMLSerializer *) const;
};
} / namespace gpdxl
#endif / !GPDXL_CDXLSpoolInfo_H
/ EOF
相关信息
相关文章
greenplumn CDXLCtasStorageOptions 源码