Skip to content

GH-38798: [Integration] Enable C Data Interface integration testing on Rust#38799

Merged
pitrou merged 2 commits intoapache:mainfrom
pitrou:rust-cdata-integration
Nov 21, 2023
Merged

GH-38798: [Integration] Enable C Data Interface integration testing on Rust#38799
pitrou merged 2 commits intoapache:mainfrom
pitrou:rust-cdata-integration

Conversation

@pitrou
Copy link
Member

@pitrou pitrou commented Nov 20, 2023

Rationale for this change

Arrow Rust has added entrypoints for C Data Interface integration testing, so this can now be enabled on our side:
apache/arrow-rs#5080

Are these changes tested?

Yes.

Are there any user-facing changes?

No.

@github-actions
Copy link

⚠️ GitHub issue #38798 has been automatically assigned in GitHub to PR creator.

@github-actions github-actions bot added the awaiting review Awaiting review label Nov 20, 2023
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want to add your name or an issue ID to this or is it fine to keep it as is in these scripts?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can open an issue, though this depends on Rust exposing appropriate primitives:
apache/arrow-rs#5080 (comment)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I filed #38822

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cand self.ffi.string(..) fail and if that happens is it safe to pass rs_error to arrow_rs_free_error in the finally block?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's unrelated. rs_error is valid regardless of whether self.ffi.string fails or not (I suppose it can raise MemoryError if it fails allocating the Python bytestring, though that's highly unlikely).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@github-actions github-actions bot added awaiting committer review Awaiting committer review and removed awaiting review Awaiting review labels Nov 20, 2023
@pitrou pitrou force-pushed the rust-cdata-integration branch from dde5927 to f0ce845 Compare November 21, 2023 11:09
@pitrou
Copy link
Member Author

pitrou commented Nov 21, 2023

Thanks for the review @felipecrv ! I'm going to merge now.

@pitrou pitrou merged commit 9a36c42 into apache:main Nov 21, 2023
@pitrou pitrou removed the awaiting committer review Awaiting committer review label Nov 21, 2023
@pitrou pitrou deleted the rust-cdata-integration branch November 21, 2023 13:17
@pitrou
Copy link
Member Author

pitrou commented Nov 21, 2023

@tustvold Hopefully this will work fine on the arrow-rs repo.

@conbench-apache-arrow
Copy link

After merging your PR, Conbench analyzed the 6 benchmarking runs that have been run so far on merge-commit 9a36c42.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details. It also includes information about 1 possible false positive for unstable benchmarks that are known to sometimes produce them.

@tustvold
Copy link
Contributor

@pitrou
Copy link
Member Author

pitrou commented Nov 22, 2023

@tustvold Sorry. Since you're not using the docker setup, you have to set ARROW_RUST_EXE_PATH explicitly. See

ARROW_RUST_EXE_PATH: /build/rust/debug

@tustvold
Copy link
Contributor

Thank you that seems to have done the trick 👍

dgreiss pushed a commit to dgreiss/arrow that referenced this pull request Feb 19, 2024
…ting on Rust (apache#38799)

### Rationale for this change

Arrow Rust has added entrypoints for C Data Interface integration testing, so this can now be enabled on our side:
apache/arrow-rs#5080

### Are these changes tested?

Yes.

### Are there any user-facing changes?

No.
* Closes: apache#38798

Authored-by: Antoine Pitrou <[email protected]>
Signed-off-by: Antoine Pitrou <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Integration] Enable C Data Interface integration testing on Rust

3 participants