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

Fix serialization of empty enumerations #4472

Merged
merged 2 commits into from
Nov 1, 2023

Conversation

davisp
Copy link
Contributor

@davisp davisp commented Oct 31, 2023

This was an obvious oversight in the original PR. I managed to cover enumeration extension serialization but forgot to include serialization of empty arrays.


TYPE: BUG
DESC: Fix serialization of empty enumerations

Found while debugging the array schema serialization bug. Returning
`TILEDB_ERR` here prevents the exception wrapper from reporting the
exception that was encountered. The fix is obviously to just rethrow the
exception instead.
Copy link

This pull request has been linked to Shortcut Story #36299: Fix serialization of empty enumerations.

@davisp davisp requested review from johnkerl and KiterLuc October 31, 2023 18:26
@davisp davisp force-pushed the pd/sc-36299/fix-empty-enumeration-serialization branch 2 times, most recently from 6ea641b to bc615c3 Compare October 31, 2023 19:17
This is an obvious oversight from me when adding tests in the original
PR. I managed to test array schema evolution for extending enumerations
but never thought to add basic schema serialization tests with empty
enmerations.
@davisp davisp force-pushed the pd/sc-36299/fix-empty-enumeration-serialization branch from bc615c3 to 7973a65 Compare October 31, 2023 20:58
@johnkerl
Copy link
Contributor

In addition to the unit-test coverage on this PR: validated in sandbox checkout as discussed in team Slack.

@davisp
Copy link
Contributor Author

davisp commented Oct 31, 2023

Along with @johnkerl's testing, I've also opened #4474 to finally get the Enumeration REST CI tests merged which include a test for empty enumerations and enumeration extension.

@anastasop
Copy link

Tested this branch with REST server and works

@@ -3595,7 +3595,7 @@ int32_t tiledb_deserialize_array_schema(
} catch (...) {
delete *array_schema;
*array_schema = nullptr;
return TILEDB_ERR;
throw;
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this change intended? Should we use tapi::CAPIStatusException?

@KiterLuc KiterLuc merged commit 9163edf into dev Nov 1, 2023
54 checks passed
@KiterLuc KiterLuc deleted the pd/sc-36299/fix-empty-enumeration-serialization branch November 1, 2023 15:04
github-actions bot pushed a commit that referenced this pull request Nov 1, 2023
This was an obvious oversight in the original PR. I managed to cover
enumeration extension serialization but forgot to include serialization
of empty arrays.

---
TYPE: BUG
DESC: Fix serialization of empty enumerations

(cherry picked from commit 9163edf)
KiterLuc pushed a commit that referenced this pull request Nov 1, 2023
This was an obvious oversight in the original PR. I managed to cover
enumeration extension serialization but forgot to include serialization
of empty arrays.

---
TYPE: BUG
DESC: Fix serialization of empty enumerations

(cherry picked from commit 9163edf)
KiterLuc pushed a commit that referenced this pull request Nov 1, 2023
This was an obvious oversight in the original PR. I managed to cover
enumeration extension serialization but forgot to include serialization
of empty arrays.

---
TYPE: BUG
DESC: Fix serialization of empty enumerations
KiterLuc pushed a commit that referenced this pull request Nov 1, 2023
Backport 9163edf from #4472.

---
TYPE: NO_HISTORY

Co-authored-by: Paul J. Davis <[email protected]>
KiterLuc added a commit that referenced this pull request Nov 1, 2023
Backport 9163edf from #4472.

---
TYPE: NO_HISTORY

Co-authored-by: Paul J. Davis <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants