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

[JavaScript] Specification implementation progress #1330

Open
bytemain opened this issue Jan 11, 2024 · 2 comments
Open

[JavaScript] Specification implementation progress #1330

bytemain opened this issue Jan 11, 2024 · 2 comments
Labels
enhancement New feature or request

Comments

@bytemain
Copy link
Contributor

Now we have a new java spec:
https://github.com/apache/incubator-fury/blob/main/docs/protocols/java_object_graph.md

and there have been some changes compared to the previous version.

Changes:

  • Array/Map

Has not implemented:

  • Schema Evolution
@bytemain bytemain added the enhancement New feature or request label Jan 11, 2024
@bytemain
Copy link
Contributor Author

Enum has been done in #1321

theweipeng added a commit that referenced this issue Jan 16, 2024
Now we have introduced a new binary layout for Collection, which is
utilized by both Array and Set. The Collection is defined in the
[SPEC](https://github.com/apache/incubator-fury/blob/3da32797beb25fd39b06c42f8c8b9e67eec5184d/docs/protocols/java_object_graph_spec.md#unsigned-int).
This PR implements the Collection in JavaScript.

1. Array and Set will extend CollectionSerializerGenerator to generate
code.
2. The Xlang Collection is not stable yet; it may undergo changes in the
future, particularly regarding polymorphism, although the changes are
expected to be minimal.
3. We have refined the reference checks, which were previously
disorganized.
4. The refactor of collection types has resulted in performance
improvements. In our sample benchmark, we observed an increase in
performance of nearly 20%.

#1330
@theweipeng
Copy link
Member

Array has been done in #1337 .

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

2 participants