-
-
Notifications
You must be signed in to change notification settings - Fork 450
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
Improved inline projections and event capture #1584
Comments
Merged #996 into this issue. There's a couple things here today (<v4):
ProposalFor the sake of the async daemon or its replacement, let's use Tombstone event records in the event table to mark events that failed. If there are any active inline projectionsThe
The existing append event function will change to do an update to capture the event body instead of an insert. If If there are no inline projectionsThis is a little tricker. I think we use a new append function that's smarter. Let's say that all events can be appended in one function call that's smart enough to deal with multiple streams as necessary. This new function will first write out matching tombstone records for all the events being captured, then commits in the function. Then it proceeds to update those new records with the real event bodies, but that update will only succeed if the rest of the session's unit of work succeeds. This will require us to move the event appending to the very first operation in the unit of work. |
@jeremydmiller I think that we should allow a bit more flexible logic for snapshoting to give user option to eg. snapshot on:
|
@oskardudycz You've brought that up before, and it sound fine to me. I don't think that's part of this issue though. You might wanna start a new one to track that. I think you'd do that w/ some kind of background process. |
I'm not sure if that should be a background process. I think that this can be implemented in the regular one. Maybe I'm not making my thoughts clear enough... |
If only we had a zoom meeting tomorrow to talk in person.... |
This is an existing issue that's tripped up folks in the past. I think the way this has to be done is to reserve the event version numbers per stream before the events themselves are appended and the document updates are captured
The text was updated successfully, but these errors were encountered: