greenplumn CStatsPredUnsupported 源码
greenplumn CStatsPredUnsupported 代码
文件路径:/src/backend/gporca/libnaucrates/include/naucrates/statistics/CStatsPredUnsupported.h
//---------------------------------------------------------------------------
// Greenplum Database
// Copyright (C) 2014 VMware, Inc. or its affiliates.
//
// @filename:
// CStatsPredUnsupported.h
//
// @doc:
// Class representing unsupported statistics filter
//---------------------------------------------------------------------------
#ifndef GPNAUCRATES_CStatsPredUnsupported_H
#define GPNAUCRATES_CStatsPredUnsupported_H
#include "gpos/base.h"
#include "gpos/common/CDouble.h"
#include "naucrates/statistics/CStatsPred.h"
namespace gpnaucrates
{
using namespace gpos;
//---------------------------------------------------------------------------
// @class:
// CStatsPredUnsupported
//
// @doc:
// Class representing unsupported statistics filter
//---------------------------------------------------------------------------
class CStatsPredUnsupported : public CStatsPred
{
private:
// predicate comparison type
CStatsPred::EStatsCmpType m_stats_cmp_type;
// scale factor of the predicate
CDouble m_default_scale_factor;
// initialize the scale factor of the predicate
static CDouble InitScaleFactor();
public:
CStatsPredUnsupported(const CStatsPredUnsupported &) = delete;
// ctors
CStatsPredUnsupported(ULONG colid,
CStatsPred::EStatsCmpType stats_pred_type);
CStatsPredUnsupported(ULONG colid,
CStatsPred::EStatsCmpType stats_pred_type,
CDouble default_scale_factor);
// filter type id
CStatsPred::EStatsPredType
GetPredStatsType() const override
{
return CStatsPred::EsptUnsupported;
}
// comparison types for stats computation
virtual CStatsPred::EStatsCmpType
GetStatsCmpType() const
{
return m_stats_cmp_type;
}
CDouble
ScaleFactor() const
{
return m_default_scale_factor;
}
// conversion function
static CStatsPredUnsupported *
ConvertPredStats(CStatsPred *pred_stats)
{
GPOS_ASSERT(nullptr != pred_stats);
GPOS_ASSERT(CStatsPred::EsptUnsupported ==
pred_stats->GetPredStatsType());
return dynamic_cast<CStatsPredUnsupported *>(pred_stats);
}
}; // class CStatsPredUnsupported
} // namespace gpnaucrates
#endif // !GPNAUCRATES_CStatsPredUnsupported_H
// EOF
相关信息
相关文章
greenplumn CFilterStatsProcessor 源码
greenplumn CGroupByStatsProcessor 源码
greenplumn CInnerJoinStatsProcessor 源码
greenplumn CJoinStatsProcessor 源码
greenplumn CLeftAntiSemiJoinStatsProcessor 源码
greenplumn CLeftOuterJoinStatsProcessor 源码
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦