Skip to content

GH-35243: [C#] Implement MapType#37885

Merged
lidavidm merged 28 commits intoapache:mainfrom
CurtHagenlocher:Map
Oct 5, 2023
Merged

GH-35243: [C#] Implement MapType#37885
lidavidm merged 28 commits intoapache:mainfrom
CurtHagenlocher:Map

Conversation

@CurtHagenlocher
Copy link
Copy Markdown
Contributor

@CurtHagenlocher CurtHagenlocher commented Sep 26, 2023

What changes are included in this PR?

This change includes the original work by @Platob from #35263, updated with the latest changes in the main branch. Additionally, it includes support in the C API for the Map type and fills a few gaps in functionality from the original change (for instance, ArrowArrayConcentrator support). Finally, it fixes a bug in the ArrowArrayConcentrator.Concatenate which prevented it from working correctly for structs. (This bug was discovered in the course of creating a test for concatenating maps.)

Are these changes tested?

Yes.

Are there any user-facing changes?

Maps are now supported in the C# implementation.

Closes #35243

Copy link
Copy Markdown
Contributor

@davidhcoe davidhcoe left a comment

Choose a reason for hiding this comment

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

a few nits on comments but looks good

@github-actions github-actions bot added awaiting change review Awaiting change review and removed awaiting changes Awaiting changes labels Oct 2, 2023
@davidhcoe
Copy link
Copy Markdown
Contributor

@lidavidm - are you able to help at all?

@lidavidm
Copy link
Copy Markdown
Member

lidavidm commented Oct 4, 2023

Thanks for the ping - I'll look at this tomorrow!

Copy link
Copy Markdown
Member

@lidavidm lidavidm left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

I restarted the integration pipeline so let's make sure things pass there.

@github-actions github-actions bot added awaiting merge Awaiting merge and removed awaiting change review Awaiting change review labels Oct 5, 2023
@lidavidm
Copy link
Copy Markdown
Member

lidavidm commented Oct 5, 2023

Hmm, there appears to be something wrong with the pipeline

Building wheels for collected packages: pythonnet
  Building wheel for pythonnet (setup.py): started
  Building wheel for pythonnet (setup.py): finished with status 'error'
  error: subprocess-exited-with-error
  
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [59 lines of output]
      /tmp/pip-install-m_41mbf1/pythonnet_3828907f28a2453cac8f6ff2d84ed995/setup.py:468: SyntaxWarning: invalid escape sequence '\*'
        "MSBuild\**\Bin\MSBuild.exe",
      /tmp/pip-install-m_41mbf1/pythonnet_3828907f28a2453cac8f6ff2d84ed995/setup.py:533: SyntaxWarning: invalid escape sequence '\*'
        "MSBuild\**\Bin\MSBuild.exe",
      running bdist_wheel
      running build
      running build_ext
      /bin/sh: 1: mono: not found

@lidavidm
Copy link
Copy Markdown
Member

lidavidm commented Oct 5, 2023

Ah, weird, it tried to install 2.5.2 instead of 3.0.2.

@CurtHagenlocher can you rebase/merge one last time? It appears we recently had to pin Python to keep pythonnet working

@CurtHagenlocher
Copy link
Copy Markdown
Contributor Author

CurtHagenlocher commented Oct 5, 2023

Looks like another infrastructure problem

################# FAILURES #################
FAILED TEST: recursive_nested Rust producing,  Rust consuming
<class 'RuntimeError'>: Command failed: /arrow/rust/target/debug/flight-test-integration-client --host localhost --port=46587 --path /tmp/arrow-integration-o7e_thtg/generated_recursive_nested.json
With output:
--------------
Error: tonic::transport::Error(Transport, hyper::Error(Connect, ConnectError("tcp connect error", Os { code: 99, kind: AddrNotAvailable, message: "Cannot assign requested address" })))

@lidavidm
Copy link
Copy Markdown
Member

lidavidm commented Oct 5, 2023

Well, the C# tests pass so I think let's merge this.

@lidavidm lidavidm merged commit 4b795ec into apache:main Oct 5, 2023
@lidavidm lidavidm removed the awaiting merge Awaiting merge label Oct 5, 2023
@conbench-apache-arrow
Copy link
Copy Markdown

After merging your PR, Conbench analyzed the 5 benchmarking runs that have been run so far on merge-commit 4b795ec.

There was 1 benchmark result indicating a performance regression:

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

@CurtHagenlocher CurtHagenlocher deleted the Map branch October 16, 2023 16:28
@CurtHagenlocher CurtHagenlocher mentioned this pull request Sep 5, 2023
9 tasks
loicalleyne pushed a commit to loicalleyne/arrow that referenced this pull request Nov 13, 2023
### What changes are included in this PR?

This change includes the original work by `@ Platob` from apache#35263, updated with the latest changes in the main branch. Additionally, it includes support in the C API for the Map type and fills a few gaps in functionality from the original change (for instance, ArrowArrayConcentrator support). Finally, it fixes a bug in the ArrowArrayConcentrator.Concatenate which prevented it from working correctly for structs. (This bug was discovered in the course of creating a test for concatenating maps.)

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Maps are now supported in the C# implementation.

Closes apache#35243 
* Closes: apache#35243

Lead-authored-by: Platob <nfillot.pro@gmail.com>
Co-authored-by: Curt Hagenlocher <curt@hagenlocher.org>
Signed-off-by: David Li <li.davidm96@gmail.com>
abandy added a commit to abandy/arrow that referenced this pull request Dec 5, 2023
dgreiss pushed a commit to dgreiss/arrow that referenced this pull request Feb 19, 2024
### What changes are included in this PR?

This change includes the original work by `@ Platob` from apache#35263, updated with the latest changes in the main branch. Additionally, it includes support in the C API for the Map type and fills a few gaps in functionality from the original change (for instance, ArrowArrayConcentrator support). Finally, it fixes a bug in the ArrowArrayConcentrator.Concatenate which prevented it from working correctly for structs. (This bug was discovered in the course of creating a test for concatenating maps.)

### Are these changes tested?

Yes.

### Are there any user-facing changes?

Maps are now supported in the C# implementation.

Closes apache#35243 
* Closes: apache#35243

Lead-authored-by: Platob <nfillot.pro@gmail.com>
Co-authored-by: Curt Hagenlocher <curt@hagenlocher.org>
Signed-off-by: David Li <li.davidm96@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[C#] Implement MapType

5 participants