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