I know you hear a lot of negatives about qa_refactor work...
Here are the positives:
Backward compatible API (anything otherwise would be a bug)
Many Jira issues addressed.
Numerous data races fixed.
Safe construction of all objects with final fields
FindBugs analysis performed.
Generics where
Results:
+1 Peter Firmstone (PMC)
+1 Bishnu Prasad Gautam
+1 Luis Matta
Abstain:
Greg Trasuk
I would have liked to see more participation from PMC members, since
this is a vote on a procedural matter and as there have been no
objections after 72 hours, under Apache voting rules it passes.
Notes:
ServiceDiscoveryManager
NotifyEventTask
If the task list contains any RegisterListenerTasks
or LookupTasks associated with this task's lookup service
(ProxyReg), and if those tasks were queued prior to this
task (have lower sequence numbers), then run those tasks
before
Rather than discuss specific instances where I've made changes to ensure
an object reference doesn't escape during construction, I figure it
would be more constructive to discuss final fields themselves.
Some of the arguments against using Startable were based on timing when
references to