Skip to content

[C++] Require simdjson 4.3.0 for fractured_json APIs #51140

Description

@tadeja

Describe the bug, including details regarding any error messages, version, and platform.

Commit c8240bd introduced use of simdjson::fractured_json_options and simdjson::fractured_json_string (commit 06e3b9a later moved that).

These APIs are available starting with simdjson 4.3.0,
but ARROW_SIMDJSON_REQUIRED_VERSION is still set to 4.0.0

set(ARROW_SIMDJSON_REQUIRED_VERSION "4.0.0")

CMake may accept system simdjson 4.2.3 install and fail:

[2/800] Building CXX object src/arrow/CMake.../arrow_util.dir/util/simdjson_internal.cc.FAILED: [code=1] src/arrow/CMakeFiles/arrow_util.dir/util/simdjson_internal.cc.o ... In file included from ...cpp/src/arrow/util/simdjson_internal.cc:18:...cpp/src/arrow/util/simdjson_internal.h:94:23: error: no type named 'fractured_json_options' in namespace 'simdjson' 94 | const simdjson::fractured_json_options& options = {}) const; | ~~~~~~~~~~^...cpp/src/arrow/util/simdjson_internal.cc:353:21: error: no type named 'fractured_json_options' in namespace 'simdjson' 353 | const simdjson::fractured_json_options& options) const { | ~~~~~~~~~~^...cpp/src/arrow/util/simdjson_internal.cc:355:20: error: no member named 'fractured_json_string' in namespace 'simdjson' 355 | return simdjson::fractured_json_string(json, options); | ~~~~~~~~~~^3 errors generated.[3/800] Building CXX object src/arrow/CMake...ation.dir/integration/json_integration.cc.FAILED: [code=1] src/arrow/CMakeFiles/arrow_integration.dir/integration/json_integration.cc.o ...

This was reproduced on macOS with system simdjson 4.2.3.
Builds using bundled simdjson 4.6.4 or Conda simdjson 4.6.4 are not affected

ARROW_SIMDJSON_BUILD_VERSION=v4.6.4

Component(s)

C++

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions