Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements to Vectors using improved iteration and toArray patterns #3570

Merged
merged 41 commits into from
Mar 21, 2023

Conversation

rcaudy
Copy link
Member

@rcaudy rcaudy commented Mar 19, 2023

Includes a major overhaul of our functional interfaces, new primitive iterator and closeable iterators, and many other cleanups. Deletes deprecated BooleanVector code.

Closes #3206
Closes #3207

…ure, and trim down io.deephaven.util.FunctionalInterfaces. Clean up usages of removed interfaces by using standard java.lang or java.util.function alternatives, or by introducing a new, more local interface where appropriate.
…rfaces in io.deephaven.util.function, with slightly-improved documentation
… better match the equivalents in java.util.function, promote them to top-level, and move the whole heap to a new engine-primitive module
… block of code (shouldTrackPrevious) in CharacterSparseArraySource to a more appropriate location so it would not be duplicated by region duplication
…gBufferTest, and commit the code as-replicated
…functions {Byte, Char, Short}ToIntFunction and FloatToDoubleFunction, which enable adaptation to the built-int PrimitiveIterator specializations, and consequently to IntStream and DoubleStream as appropriate. Extend this stream support to the new iterator interfaces, and use the new iterator interfaces for the ColumnIterators as appropriate.
…able, standardized code formatting and naming conventions, etc.
…tion for all vector methods, rather than serial-get. Eliminate Prev*VectorColumnWrappers.
…rsions. Fixed a bunch of inspections and warnings in chunk code. Addressed unnecessarily-restrictive chunk attributes in sort kernels, and did some code cleanup there. Fixed a few bad downcasts.
… for methods that are in TableDefaults but should instead be in QueryTable and TableAdapter
…ations. Add serial implementations, and switch between the options in vectors based on a size threshold.
@rcaudy rcaudy added the ReleaseNotesNeeded Release notes are needed label Mar 19, 2023
@rcaudy
Copy link
Member Author

rcaudy commented Mar 20, 2023

Nightlies look good

chipkent
chipkent previously approved these changes Mar 20, 2023
@rcaudy rcaudy enabled auto-merge (squash) March 21, 2023 16:43
@rcaudy rcaudy merged commit 1d24619 into deephaven:main Mar 21, 2023
@rcaudy rcaudy deleted the rwc-vectors branch March 21, 2023 17:05
@github-actions github-actions bot locked and limited conversation to collaborators Mar 21, 2023
@deephaven-internal
Copy link
Contributor

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
core Core development tasks DocumentationNeeded query engine ReleaseNotesNeeded Release notes are needed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Vector should Implement a stream() method Vector toArray calls should use Chunks
5 participants