greenplumn CSerializableQuery 源码

  • 2022-08-18
  • 浏览 (548)

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 源码

0  赞