-
Notifications
You must be signed in to change notification settings - Fork 0
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
handle gran changes #2
base: master
Are you sure you want to change the base?
Conversation
A group of events will be sent to propogateEvents which is method in Beam class. A Beam is a structure that exposes Interval and has other task information. Changes to trait Beam done to include getInterval method.
|
case e: Throwable => | ||
// Log Throwables to avoid invisible errors caused by https://github.com/twitter/util/issues/100. | ||
log.error(e, "Failed to sync with zookeeper: %s", identifier) | ||
throw e |
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.
You are logging and throwing. Should pick one. Given that this is happening in an initializer, throwing is likely going to mean that the whole process dies, which might be good?
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.
looks like twitter/util#100 has been fixed, makes sense to let the process die
In general, this lgtm. I can't speak about idiomatic Scala because I'm not that familiar with what idiomatic scala is, but it should be ok to take to the community (maybe after we settle on what to do with the loop part?) |
so the loop part is resolved, right ? |
Second take on handling tranquility restarts with segment granularity changes.
Now the beams expose method to get the interval which can be used instead of segment start time to decide which beam an event belongs to. Also a reverse sorted list of active beams is maintained which can be used to lookup the beams when events are grouped by beams. It is reverse sorted as most of the times we expect to get the most latest beam.