-
Notifications
You must be signed in to change notification settings - Fork 30
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
Trait bounds for persistence #1229
Conversation
This should allow me to make my storage format faster! Currently it does more deserialization than would be ideal. I have not looked at this yet. |
@gz Even before I start reading the changes, I can tell how much work this was from the commit message. You had to coordinate with multiple other maintainers and crates, and deal with (presumably) so many compiler trait errors. Thank you so much! |
Just to make sure: ultimately, we will not be using a forked version of rkyv, right? (I assume that's just an intermediate step.) |
Thanks for the kind words <3.. Yea this patch was a bit of a nightmare for sure, glad it's now pretty much ready
yes we should be able to get all patches in rkyv .. except for maybe the one that adds Clone to ArchivedString and ArchivedVec but if we need to I feel we can work around that |
That's probably for the best, if needed, because otherwise we can't update |
so here are the necessary changes for the compiler for my PR: these operators are affected: group/lag.rs changed to
then in operator/index.rs
operators/sample.rs:
|
Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
Also generate dbsp tuples using the macro. Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
Signed-off-by: Mihai Budiu <mbudiu@feldera.com>
will merge this so it is out of my sight |
Hurray! 🎉 |
DBData now has an additional constraint where we make sure the archived variant of something that implements DBData also satisfies this constraint:
<T as ArchivedDBData>::Repr: Ord + PartialOrd<T>
Ideally we would also have Clone for the Archived types, but I'm not sure it will get merged into rkyv so currently I removed the Clone bound again until this is resolved:
Some other things this changes:
Is this a user-visible change (yes/no): no