Skip to content

[BUG] Submodule-sync Build failure in row_conversion.cu: thrust::make_constant_iterator removed in CCCL 3.4.0 #4429

@pxLi

Description

@pxLi

Describe the bug
Build: spark-rapids-jni_submodule-sync-dev/6161

The CUDA build of row_conversion.cu failed after the cudf submodule was updated to commit b3abb56163, which brought in CCCL 3.4.0. In this version, thrust::make_constant_iterator is deprecated/removed from the thrust namespace. The row_conversion.cu file uses thrust::make_constant_iterator<uint64_t>() which no longer compiles and must be replaced with cuda::make_constant_iterator. There is also an ambiguous conversion error with rmm::cuda_stream_view at the same call site.

Error logs:

/home/.../src/main/cpp/src/row_conversion.cu(2029): error: namespace "thrust" has no member "make_constant_iterator"
      auto row_size_iter = thrust::make_constant_iterator<uint64_t>(
                                   ^

/home/.../src/main/cpp/src/row_conversion.cu(2029): error: type name is not allowed
      auto row_size_iter = thrust::make_constant_iterator<uint64_t>(
                                                          ^

/home/.../src/main/cpp/src/row_conversion.cu(2032): error: more than one conversion function from "rmm::cuda_stream_view" to "<error-type>" applies
      auto batch_info = detail::build_batches(num_rows, row_size_iter, fixed_width_only, stream, mr);
                                                                                         ^
3 errors detected in the compilation of ".../row_conversion.cu".

Environment details

  • CCCL version: 3.4.0 (from updated cudf submodule b3abb56163)
  • CUDA compiler: NVIDIA 12.9.86
  • File: src/main/cpp/src/row_conversion.cu
  • thrust::make_constant_iterator must be replaced with cuda::make_constant_iterator

Metadata

Metadata

Assignees

No one assigned

    Labels

    ? - Needs Triagebot_watchSlack bot watched issue for LLM analyzerbugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions