diff --git a/cpp/velox/cudf/CudfPlanValidator.cc b/cpp/velox/cudf/CudfPlanValidator.cc index a7efb3108e4f..b2d6e82c22b1 100644 --- a/cpp/velox/cudf/CudfPlanValidator.cc +++ b/cpp/velox/cudf/CudfPlanValidator.cc @@ -20,9 +20,10 @@ #include "compute/ResultIterator.h" #include "compute/VeloxBackend.h" #include "compute/VeloxPlanConverter.h" +#include "config/GlutenConfig.h" #include "velox/core/PlanNode.h" -#include "velox/exec/Task.h" #include "velox/exec/TableScan.h" +#include "velox/exec/Task.h" #include "velox/experimental/cudf/exec/NvtxHelper.h" #include "velox/experimental/cudf/exec/ToCudf.h" @@ -36,15 +37,15 @@ bool isCudfOperator(const exec::Operator* op) { return dynamic_cast(op) != nullptr; } -} +} // namespace bool CudfPlanValidator::validate(const ::substrait::Plan& substraitPlan) { auto veloxMemoryPool = gluten::defaultLeafVeloxMemoryPool(); std::vector<::substrait::ReadRel_LocalFiles> localFiles; std::unordered_map configValues; std::vector> inputs; - std::shared_ptr veloxCfg = - std::make_shared(std::unordered_map()); + std::shared_ptr veloxCfg = std::make_shared( + std::unordered_map{{kCudfEnabled, "true"}}); VeloxPlanConverter veloxPlanConverter( inputs, veloxMemoryPool.get(), veloxCfg.get(), std::nullopt, std::nullopt, true); auto planNode = veloxPlanConverter.toVeloxPlan(substraitPlan, localFiles); diff --git a/gluten-substrait/src/main/scala/org/apache/gluten/config/GlutenConfig.scala b/gluten-substrait/src/main/scala/org/apache/gluten/config/GlutenConfig.scala index aa1897332830..6aee03ca49d9 100644 --- a/gluten-substrait/src/main/scala/org/apache/gluten/config/GlutenConfig.scala +++ b/gluten-substrait/src/main/scala/org/apache/gluten/config/GlutenConfig.scala @@ -461,6 +461,7 @@ object GlutenConfig extends ConfigRegistry { GlutenCoreConfig.COLUMNAR_TASK_OFFHEAP_SIZE_IN_BYTES.key, COLUMNAR_MAX_BATCH_SIZE.key, SHUFFLE_WRITER_BUFFER_SIZE.key, + COLUMNAR_CUDF_ENABLED.key, SQLConf.LEGACY_SIZE_OF_NULL.key, SQLConf.LEGACY_STATISTICAL_AGGREGATE.key, SQLConf.JSON_GENERATOR_IGNORE_NULL_FIELDS.key,