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

Add storage support for Date, Time and DateTime to InMemory table #3673

Merged

Conversation

radeusgd
Copy link
Member

@radeusgd radeusgd commented Aug 29, 2022

Pull Request Description

Implements https://www.pivotaltracker.com/story/show/183080911

Important Notes

Checklist

Please include the following checklist in your PR:

  • The documentation has been updated if necessary.
  • All code conforms to the
    Scala,
    Java,
    and
    Rust
    style guides.
  • All code has been tested:
    • Unit tests have been written where possible.
    • If GUI codebase was changed: Enso GUI was tested when built using BOTH
      ./run ide build and ./run ide watch.

@radeusgd radeusgd self-assigned this Aug 29, 2022
@radeusgd radeusgd force-pushed the wip/radeusgd/in-memory-table-datetime-storage-183080911 branch from d1fcc89 to 9b542d6 Compare August 29, 2022 12:09
@radeusgd radeusgd marked this pull request as ready for review August 29, 2022 16:19
@radeusgd radeusgd force-pushed the wip/radeusgd/in-memory-table-datetime-storage-183080911 branch from ba7fba2 to 59c8652 Compare August 30, 2022 17:17
@radeusgd radeusgd changed the base branch from develop to wip/mk/parse-types August 30, 2022 17:18
Base automatically changed from wip/mk/parse-types to develop August 30, 2022 22:54
@radeusgd radeusgd force-pushed the wip/radeusgd/in-memory-table-datetime-storage-183080911 branch from 59c8652 to a37f2f5 Compare August 31, 2022 07:47
Copy link
Member

@jdunkerley jdunkerley left a comment

Choose a reason for hiding this comment

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

Few minor things but looks good

distribution/lib/Standard/Test/0.0.0-dev/src/Main.enso Outdated Show resolved Hide resolved
test/Table_Tests/src/Aggregate_Spec.enso Outdated Show resolved Hide resolved
import org.enso.table.data.column.storage.StringStorage;

/** A column builder appending all the values passed to it in an unchanged form. */
public class StringStorageBuilder extends StorageBuilder {

private Object[] data;
private String[] data;
Copy link
Member

Choose a reason for hiding this comment

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

Is us doing this better than just using an ArrayList<T> feels like we are doing this for little gain once especially we have the new polyglot arrays

Copy link
Member Author

Choose a reason for hiding this comment

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

Hmm, well, to some extent. I'd argue that our implementation is still more specialized. It avoids copying (whereas ArrayList<T>::toArray would copy IIRC. And it has the retype logic which we would still need to add.

So I'd be for keeping it as-is, although you are right that there is quite a lot of similarity.

@radeusgd radeusgd force-pushed the wip/radeusgd/in-memory-table-datetime-storage-183080911 branch from a37f2f5 to 6923e4c Compare August 31, 2022 21:25
@radeusgd radeusgd added CI: Ready to merge This PR is eligible for automatic merge and removed CI: Ready to merge This PR is eligible for automatic merge labels Aug 31, 2022
@radeusgd radeusgd added the CI: Ready to merge This PR is eligible for automatic merge label Aug 31, 2022
@mergify mergify bot merged commit 65140f4 into develop Aug 31, 2022
@mergify mergify bot deleted the wip/radeusgd/in-memory-table-datetime-storage-183080911 branch August 31, 2022 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI: Ready to merge This PR is eligible for automatic merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants