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

[Feat][Java] Recording gap between C++ and Java library #272

Open
Thespica opened this issue Nov 4, 2023 · 4 comments
Open

[Feat][Java] Recording gap between C++ and Java library #272

Thespica opened this issue Nov 4, 2023 · 4 comments
Labels
enhancement New feature or request

Comments

@Thespica
Copy link
Contributor

Thespica commented Nov 4, 2023

Is your feature request related to a problem? Please describe.
Now, our Java library rely on C++ library. But with iteration of C++ library, there are some gap between those two library.

Recording these gap will help Java developers to fit these changes.

Recording tamplate

# Essentially describing the main change of the feature in C++

More detals.

---

- Is compatible with Java SDK now: yes/no
- The earliest released(or to be released) C++ library's version with this feature: v x.x.x
- Related PR: 
- [ ] Mark as implemented
@Thespica Thespica added the enhancement New feature or request label Nov 4, 2023
@Thespica
Copy link
Contributor Author

Thespica commented Nov 4, 2023

Support filter push down

See PR.


@Thespica
Copy link
Contributor Author

Thespica commented Nov 4, 2023

Use inherit to implement EdgesCollection

To fit this change:

  • Remove 4 supper classes of EdgesCollection;
  • Remove create function in EdgesCollection;
  • Write a new factory function in util/GrapharStaticFunctions.java to create EdgesCollection, which maps ConstructEdgesCollection in C++;
  • Add annotations for EdgesCollection:
    • For class: @FFIGen @FFITypeAlias @CXXHead
    • For return objects: @CXXReference or @CXXValue
  • Modify related usage in test.

@Thespica
Copy link
Contributor Author

Thespica commented Nov 11, 2023

Add internal id column to vertex payload file

Remove one function and modify usage in test


@Thespica
Copy link
Contributor Author

Refactor the C++ SDK with forward declaration and shared ptr

The main point that may affect Java SDK is using std::shard_ptr to manage info classes, thus the usage and parameters about info classes should have corresponding changes.

Additionally, it also relates to problems concerning memory management #285 , so we should design more for Java SDK about memory management.


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant