greenplumn CDistributionSpecUniversal 源码
greenplumn CDistributionSpecUniversal 代码
文件路径:/src/backend/gporca/libgpopt/include/gpopt/base/CDistributionSpecUniversal.h
//---------------------------------------------------------------------------
// Greenplum Database
// Copyright (C) 2012 EMC Corp.
//
// @filename:
// CDistributionSpecUniversal.h
//
// @doc:
// Description of a general distribution which reports availability everywhere;
// Can be used only as a derived property;
//---------------------------------------------------------------------------
#ifndef GPOPT_CDistributionSpecUniversal_H
#define GPOPT_CDistributionSpecUniversal_H
#include "gpos/base.h"
#include "gpopt/base/CDistributionSpec.h"
#include "gpopt/base/CDistributionSpecHashed.h"
namespace gpopt
{
using namespace gpos;
//---------------------------------------------------------------------------
// @class:
// CDistributionSpecUniversal
//
// @doc:
// Class for representing general distribution specification which
// reports availability everywhere.
//
//---------------------------------------------------------------------------
class CDistributionSpecUniversal : public CDistributionSpec
{
private:
public:
CDistributionSpecUniversal(const CDistributionSpecUniversal &) = delete;
//ctor
CDistributionSpecUniversal();
// accessor
EDistributionType Edt() const override;
// does current distribution satisfy the given one
BOOL FSatisfies(const CDistributionSpec *pds) const override;
// return true if distribution spec can be required
BOOL FRequirable() const override;
// does this distribution match the given one
BOOL Matches(const CDistributionSpec *pds) const override;
// append enforcers to dynamic array for the given plan properties
void AppendEnforcers(CMemoryPool *, //mp,
CExpressionHandle &, // exprhdl
CReqdPropPlan *, //prpp,
CExpressionArray *, // pdrgpexpr,
CExpression * // pexpr
) override;
// print
IOstream &OsPrint(IOstream &os) const override;
// return distribution partitioning type
EDistributionPartitioningType Edpt() const override;
// conversion function
static CDistributionSpecUniversal *PdsConvert(CDistributionSpec *pds);
}; // class CDistributionSpecUniversal
} // namespace gpopt
#endif // !GPOPT_CDistributionSpecUniversal_H
// EOF
相关信息
相关文章
greenplumn CColConstraintsArrayMapper 源码
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦