-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
GH-21815: [JS] Add support for Duration type #37341
Conversation
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very thorough, looks great. Approving with a few minor comments.
@trxcllnt thanks for the very quick review! Hm, these arrow/js/src/builder/duration.ts Line 31 in c08adf0
And if we shortened this like you proposed, the typing would get wider, wouldn't it? Because then What do you think about this? |
Hm, looking into this made me find a copy-paste bug I made. |
@FrNecas good point, I forgot they were used in other places. I'm not sure if TS would accept the wider types without testing. Even if it does, that seems like the sort of rule-bending that TS likes to break across releases, so what you have now is fine with me. |
@FrNecas Can you also update the integration skips here so that we make sure JS interops with other implementations? arrow/dev/archery/archery/integration/datagen.py Lines 1685 to 1691 in b9453a2
|
The integration CI job has failed for disk space issues, I have restarted it in the hope that it'll pass this time. |
Looks like the |
Ok, the integration tests failed with the JS handling of intervals... |
Hm, ok, in that case let's mark intervals as unsupported and skip that test again for now and maybe create a separate issue to look into this |
|
Could someone please try to re-run the one failing job? There doesn't seem to be anything actionable (looks like a timeout) and I think I saw this one fail already but then it passed later when it was re-run. |
@github-actions crossbow submit js |
Revision: 96e94e2 Submitted crossbow builds: ursacomputing/crossbow @ actions-a1d46eeed2 |
Hello, is there anything else that I need to do in order for this PR to get merged? It's been some time since it was approved so I am wondering if it didn't slip through the cracks. |
5fe50ca
to
c273962
Compare
After merging your PR, Conbench analyzed the 6 benchmarking runs that have been run so far on merge-commit befcc90. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. It also includes information about possible false positives for unstable benchmarks that are known to sometimes produce them. |
### Rationale for this change The `Duration` type is currently not supported and trying to deserialize a Table containing the type (e.g. using `tableFromIPC`) fails with `Unrecognized type` error. This PR aims to fix that. ### What changes are included in this PR? - definition of the `Duration` data type - updates to the visitor classes so that things like parsing work correctly - test coverage for the type - documentation update ### Are these changes tested? Yes, I extended the data generator with the new type so that the type is tested by the existing tests. ### Are there any user-facing changes? Yes, I've updated the documentation status page. I also noticed that it was outdated for JavaScript, i.e. there is already support for `Decimal` type so I updated this as well. Closes: apache#21815 Closes: apache#35439 * Closes: apache#21815 Lead-authored-by: František Necas <[email protected]> Co-authored-by: ptaylor <[email protected]> Signed-off-by: Dominik Moritz <[email protected]>
### Rationale for this change The `Duration` type is currently not supported and trying to deserialize a Table containing the type (e.g. using `tableFromIPC`) fails with `Unrecognized type` error. This PR aims to fix that. ### What changes are included in this PR? - definition of the `Duration` data type - updates to the visitor classes so that things like parsing work correctly - test coverage for the type - documentation update ### Are these changes tested? Yes, I extended the data generator with the new type so that the type is tested by the existing tests. ### Are there any user-facing changes? Yes, I've updated the documentation status page. I also noticed that it was outdated for JavaScript, i.e. there is already support for `Decimal` type so I updated this as well. Closes: apache#21815 Closes: apache#35439 * Closes: apache#21815 Lead-authored-by: František Necas <[email protected]> Co-authored-by: ptaylor <[email protected]> Signed-off-by: Dominik Moritz <[email protected]>
### Rationale for this change The `Duration` type is currently not supported and trying to deserialize a Table containing the type (e.g. using `tableFromIPC`) fails with `Unrecognized type` error. This PR aims to fix that. ### What changes are included in this PR? - definition of the `Duration` data type - updates to the visitor classes so that things like parsing work correctly - test coverage for the type - documentation update ### Are these changes tested? Yes, I extended the data generator with the new type so that the type is tested by the existing tests. ### Are there any user-facing changes? Yes, I've updated the documentation status page. I also noticed that it was outdated for JavaScript, i.e. there is already support for `Decimal` type so I updated this as well. Closes: apache#21815 Closes: apache#35439 * Closes: apache#21815 Lead-authored-by: František Necas <[email protected]> Co-authored-by: ptaylor <[email protected]> Signed-off-by: Dominik Moritz <[email protected]>
### Rationale for this change The `Duration` type is currently not supported and trying to deserialize a Table containing the type (e.g. using `tableFromIPC`) fails with `Unrecognized type` error. This PR aims to fix that. ### What changes are included in this PR? - definition of the `Duration` data type - updates to the visitor classes so that things like parsing work correctly - test coverage for the type - documentation update ### Are these changes tested? Yes, I extended the data generator with the new type so that the type is tested by the existing tests. ### Are there any user-facing changes? Yes, I've updated the documentation status page. I also noticed that it was outdated for JavaScript, i.e. there is already support for `Decimal` type so I updated this as well. Closes: apache#21815 Closes: apache#35439 * Closes: apache#21815 Lead-authored-by: František Necas <[email protected]> Co-authored-by: ptaylor <[email protected]> Signed-off-by: Dominik Moritz <[email protected]>
Rationale for this change
The
Duration
type is currently not supported and trying to deserialize a Table containing the type (e.g. usingtableFromIPC
) fails withUnrecognized type
error. This PR aims to fix that.What changes are included in this PR?
Duration
data typeAre these changes tested?
Yes, I extended the data generator with the new type so that the type is tested by the existing tests.
Are there any user-facing changes?
Yes, I've updated the documentation status page. I also noticed that it was outdated for JavaScript, i.e. there is already support for
Decimal
type so I updated this as well.Closes: #21815
Closes: #35439