greenplumn CSerializableQuery 源码

2022-08-18 浏览 (667)

greenplumn CSerializableQuery 代码

文件路径:/src/backend/gporca/libgpopt/include/gpopt/minidump/CSerializableQuery.h

/---------------------------------------------------------------------------
/	Greenplum Database
/	Copyright (C) 2011 EMC Corp.
/
/	@filename:
/		CSerializableQuery.h
/
/	@doc:
/		Serializable query object used to dump the query when an exception is raised;
/---------------------------------------------------------------------------
#ifndef GPOS_CSerializableQuery_H
#define GPOS_CSerializableQuery_H

#include "gpos/base.h"
#include "gpos/error/CSerializable.h"
#include "gpos/string/CWStringDynamic.h"

#include "naucrates/dxl/operators/CDXLNode.h"

using namespace gpos;
using namespace gpdxl;

namespace gpopt
{
/---------------------------------------------------------------------------
/	@class:
/		CSerializableQuery
/
/	@doc:
/		Serializable query object
/
/---------------------------------------------------------------------------
class CSerializableQuery : public CSerializable
{
private:
	CMemoryPool *m_mp;

	/ query DXL node;
	const CDXLNode *m_query_dxl_root;

	/ query output
	const CDXLNodeArray *m_query_output;

	/ CTE DXL nodes
	const CDXLNodeArray *m_cte_producers;


public:
	CSerializableQuery(const CSerializableQuery &) = delete;

	/ ctor
	CSerializableQuery(CMemoryPool *mp, const CDXLNode *query,
					   const CDXLNodeArray *query_output_dxlnode_array,
					   const CDXLNodeArray *cte_producers);

	/ dtor
	~CSerializableQuery() override;

	/ serialize object to passed stream
	void Serialize(COstream &oos) override;

};	/ class CSerializableQuery
}  / namespace gpopt

#endif	/ !GPOS_CSerializableQuery_H

/ EOF

相关信息

greenplumn 源码目录

相关文章

greenplumn CDXLMinidump 源码

greenplumn CMetadataAccessorFactory 源码

greenplumn CMiniDumperDXL 源码

greenplumn CMinidumperUtils 源码

greenplumn CSerializableMDAccessor 源码

greenplumn CSerializableOptimizerConfig 源码

greenplumn CSerializablePlan 源码

greenplumn CSerializableStackTrace 源码

^