1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-02 17:46:37 +03:00

Fully resolve potentially ambiguous symbols by removing using namespace statements from headers which have a cascading effect. This causes potential behavior changes when switching to c++11 since symbols can be exported from std and boost while both have been imported into the global namespace.

This commit is contained in:
David Mott
2019-04-26 08:21:47 -05:00
parent 1813add162
commit 4b9d046c6e
131 changed files with 600 additions and 630 deletions

View File

@ -1929,7 +1929,7 @@ void RowAggregation::doUDAF(const Row& rowIn, int64_t colIn, int64_t colOut,
// The vector of parameters to be sent to the UDAF
mcsv1sdk::ColumnDatum valsIn[paramCount];
uint32_t dataFlags[paramCount];
ConstantColumn* cc;
execplan::ConstantColumn* cc;
bool bIsNull = false;
execplan::CalpontSystemCatalog::ColDataType colDataType;
@ -1945,10 +1945,10 @@ void RowAggregation::doUDAF(const Row& rowIn, int64_t colIn, int64_t colOut,
if (fFunctionCols[funcColsIdx]->fpConstCol)
{
cc = dynamic_cast<ConstantColumn*>(fFunctionCols[funcColsIdx]->fpConstCol.get());
cc = dynamic_cast<execplan::ConstantColumn*>(fFunctionCols[funcColsIdx]->fpConstCol.get());
}
if ((cc && cc->type() == ConstantColumn::NULLDATA)
if ((cc && cc->type() == execplan::ConstantColumn::NULLDATA)
|| (!cc && isNull(&fRowGroupIn, rowIn, colIn) == true))
{
if (fRGContext.getRunFlag(mcsv1sdk::UDAF_IGNORE_NULLS))
@ -3706,7 +3706,7 @@ void RowAggregationUM::doNotNullConstantAggregate(const ConstantAggData& aggData
// Create a datum item for sending to UDAF
mcsv1sdk::ColumnDatum& datum = valsIn[0];
datum.dataType = (CalpontSystemCatalog::ColDataType)colDataType;
datum.dataType = (execplan::CalpontSystemCatalog::ColDataType)colDataType;
switch (colDataType)
{

View File

@ -207,7 +207,7 @@ struct RowAggFunctionCol
// The first will be a RowUDAFFunctionCol. Subsequent ones will be RowAggFunctionCol
// with fAggFunction == ROWAGG_MULTI_PARM. Order is important.
// If this parameter is constant, that value is here.
SRCP fpConstCol;
execplan::SRCP fpConstCol;
};
@ -272,7 +272,7 @@ inline void RowAggFunctionCol::deserialize(messageqcpp::ByteStream& bs)
if (t)
{
fpConstCol.reset(new ConstantColumn);
fpConstCol.reset(new execplan::ConstantColumn);
fpConstCol.get()->unserialize(bs);
}
}

View File

@ -59,7 +59,6 @@
#include "../winport/winport.h"
// Workaround for my_global.h #define of isnan(X) causing a std::std namespace
using namespace std;
namespace rowgroup
{
@ -1028,7 +1027,7 @@ inline void Row::setFloatField(float val, uint32_t colIndex)
//N.B. There is a bug in boost::any or in gcc where, if you store a nan, you will get back a nan,
// but not necessarily the same bits that you put in. This only seems to be for float (double seems
// to work).
if (isnan(val))
if (std::isnan(val))
setUintField<4>(joblist::FLOATNULL, colIndex);
else
*((float*) &data[offsets[colIndex]]) = val;