GH-35460: Introduce simdjson and migrate ObjectParser#50469
Conversation
|
|
|
@kou As we discussed, I've started working on the RapidJSON → simdjson migration and will try to split it into small, reviewable PRs. This PR is the first step, introducing the dependency and migrating I'm currently investigating the remaining CI failures. The implementation builds locally, the JSON test suite passes, and several CI workflows also pass. The remaining failures all seem to fail during CMake configure because I've narrowed it down to the dependency integration ( |
34ac15f to
a02cc13
Compare
17a428d to
5ee7a89
Compare
5ee7a89 to
b2cabab
Compare
|
Hi @kou, I've updated the bundled simdjson to v4.6.4, added the required system packages for the SYSTEM dependency path, and added
I investigated the MSVC failure by looking into the vcpkg integration ( Do you have any suggestions on where I should look next for these remaining Windows-specific issues? |
|
|
Rationale for this change
This PR is the first in a series of PRs for GH-35460 to migrate Arrow's JSON implementation from RapidJSON to simdjson.
As the foundation for the migration, this PR introduces simdjson into Arrow's build system, updates the bundled simdjson version to v4.6.4, and migrates the self-contained
arrow::json::internal::ObjectParser.What changes are included in this PR?
This PR:
simdjsonas a third-party dependency.simdjson.simdjsoninto the Arrow JSON library.arrow::json::internal::ObjectParserfrom RapidJSON to the simdjson DOM API.This establishes the build infrastructure needed for the remaining JSON migration, which will be completed incrementally in follow-up PRs.
Are these changes tested?
Yes.
ObjectParser.Related #35460