-
Notifications
You must be signed in to change notification settings - Fork 155
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
WIP: 64bit nanosecond jmapids #5177
base: master
Are you sure you want to change the base?
WIP: 64bit nanosecond jmapids #5177
Conversation
be60440
to
5599d95
Compare
63fc02b
to
4fb40bd
Compare
5d8190f
to
2e5b103
Compare
33bef57
to
deb2012
Compare
deb2012
to
8141e3d
Compare
This isn't complete yet but could probably use a sanity check. Reviewing commit-by-commit would probably be the easiest. |
@ksmurchison since this is a WIP review, could you please let me know the main file or functional areas you would like me to sanity check? |
You should probably look at conversations.c and jmap_mail.c |
Thanks, will do. |
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.
I gave conversations.c and jmap_mail.c a read. It looks to implement the requirements, I just have a question about refcounts as well as some thoughts about function names.
694df67
to
b57c6b2
Compare
9a09cd0
to
ba893ee
Compare
c66f32a
to
b671245
Compare
store the encoded nanosecond value as a J(MAPID) key that maps to the GUID of an email
use a "virtual" annotation to pass this value via replication
- use the internaldate of an existing message with same UID - pick internaldate.nsec in a deterministic manner - make sure internaldate doesn't conflict with an existing JMAPID - set the timestamps on the message data file to internaldate - update G record and add J record in conv.db
triggered by conv.db version NOTE: this still needs a test to make sure v1 still works
b671245
to
368b4da
Compare
TODO: