{"push_id":2890388142,"size":7,"distinct_size":3,"ref":"refs/heads/ZOOKEEPER-1177","head":"c9962c94490656ed698bcfd6c1fe396cb63b5ffd","before":"f212cfdf0c6658ca5cc0156d4be1fa5780583d52","commits":[{"sha":"71630081262f4b05e6a86beb7c0c10924e2f04d3","author":{"name":"Brian Nixon","email":"394d21de210704ce90ac62d12a14821c268637af@fb.com"},"message":"ZOOKEEPER-3137: add a utility to truncate logs to a zxid\n\nAuthor: Brian Nixon <nixon@fb.com>\n\nReviewers: Michael Han <hanm@apache.org>, Andor Molnár <andor@apache.org>\n\nCloses #615 from enixon/add-chop","distinct":false,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/71630081262f4b05e6a86beb7c0c10924e2f04d3"},{"sha":"b58791016424e662c816e2253de96f3771f5d301","author":{"name":"Fangmin Lyu","email":"4d09c68340da76ef9c2409b6158a0244140a5a3c@fb.com"},"message":"ZOOKEEPER-3144: Fix potential ephemeral nodes inconsistent due to global session inconsistent with fuzzy snapshot\n\nThere is a race condition between update the lastProcessedZxid and the actual session change in DataTree, which could cause global session inconsistent, which then could cause ephemeral inconsistent.\n\nFor more details, please check the description in JIRA ZOOKEEPER-3144.\n\nAuthor: Fangmin Lyu <allenlyu@fb.com>\n\nReviewers: Michael Han <hanm@apache.org>\n\nCloses #621 from lvfangmin/ZOOKEEPER-3144","distinct":false,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/b58791016424e662c816e2253de96f3771f5d301"},{"sha":"657e2e832ee31738d70d54a046d4254f3ed8267a","author":{"name":"Brian Nixon","email":"394d21de210704ce90ac62d12a14821c268637af@fb.com"},"message":"ZOOKEEPER-3142: Extend SnapshotFormatter to dump data in json format\n\nAuthor: Brian Nixon <nixon@fb.com>\n\nReviewers: Michael Han <hanm@apache.org>\n\nCloses #619 from enixon/extend-sf","distinct":false,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/657e2e832ee31738d70d54a046d4254f3ed8267a"},{"sha":"f4cbb689ad7bb03ca6da0d5de3ecb344165f379a","author":{"name":"Joseph Blomstedt","email":"ee6c08dd42c3f5e3de2ee15c1e4eb6973bc3c0d5@fb.com"},"message":"ZOOKEEPER-3098: Add additional server metrics\n\nThis patch adds several new server-side metrics as well as makes it easier to add new metrics in the future. This patch also includes a handful of other minor metrics-related changes.\n\nHere's a high-level summary of the changes.\n\n1. This patch extends the request latency tracked in `ServerStats` to\n   track `read` and `update` latency separately. Updates are any request\n   that must be voted on and can change data, reads are all requests that\n   can be handled locally and don't change data.\n\n2. This patch adds the `ServerMetrics` logic and the related `AvgMinMaxCounter`\n   and `SimpleCounter` classes. This code is designed to make it incredibly easy to\n   add new metrics. To add a new metric you just add one line to `ServerMetrics` and\n   then directly reference that new metric anywhere in the code base. The `ServerMetrics`\n   logic handles creating the metric, properly adding the metric to the JSON output of\n   the `/monitor` admin command, and properly resetting the metric when necessary.\n\n   The motivation behind `ServerMetrics` is to make things easy enough that it encourages\n   new metrics to be added liberally. Lack of in-depth metrics/visibility is a long-standing\n   ZooKeeper weakness. At Facebook, most of our internal changes build on `ServerMetrics` and\n   we have nearly 100 internal metrics at this time -- all of which we'll be upstreaming\n   in the coming months as we publish more internal patches.\n\n3. This patch adds 20 new metrics, 14 which are handled by `ServerMetrics`.\n\n4. This patch replaces some uses of `synchronized` in `ServerStats` with atomic operations.\n\nHere's a list of new metrics added in this patch:\n\n- `uptime`: time that a peer has been in a stable leading/following/observing state\n- `leader_uptime`: uptime for peer in leading state\n- `global_sessions`: count of global sessions\n- `local_sessions`: count of local sessions\n- `quorum_size`: configured ensemble size\n- `synced_observers`: similar to existing `synced_followers` but for observers\n- `fsynctime`: time to fsync transaction log (avg/min/max)\n- `snapshottime`: time to write a snapshot (avg/min/max)\n- `dbinittime`: time to reload database -- read snapshot + apply transactions (avg/min/max)\n- `readlatency`: read request latency (avg/min/max)\n- `updatelatency`: update request latency (avg/min/max)\n- `propagation_latency`: end-to-end latency for updates, from proposal on leader to committed-to-datatree on a given host (avg/min/max)\n- `follower_sync_time`: time for follower to sync with leader (avg/min/max)\n- `election_time`: time between entering and leaving election (avg/min/max)\n- `looking_count`: number of transitions into looking state\n- `diff_count`: number of diff syncs performed\n- `snap_count`: number of snap syncs performed\n- `commit_count`: number of commits performed on leader\n- `connection_request_count`: number of incoming client connection requests\n- `bytes_received_count`: similar to existing `packets_received` but tracks bytes\n\nAuthor: Joseph Blomstedt <jdb@fb.com>\n\nReviewers: Allan Lyu <fangmin@apache.org>, Andor Molnár <andor@apache.org>, Enrico Olivelli <eolivelli@gmail.com>, Michael Han <hanm@apache.org>\n\nCloses #580 from jtuple/ZOOKEEPER-3098","distinct":false,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/f4cbb689ad7bb03ca6da0d5de3ecb344165f379a"},{"sha":"16f9a1e4b595c2ba3cad3b59a3c76c873b7a871d","author":{"name":"Fangmin Lyu","email":"4d09c68340da76ef9c2409b6158a0244140a5a3c@fb.com"},"message":"add the memory optimized watch manager for concentrate watches","distinct":true,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/16f9a1e4b595c2ba3cad3b59a3c76c873b7a871d"},{"sha":"f9cc11f4c64df8fa53190581bb3df05763729f03","author":{"name":"Fangmin Lyu","email":"4d09c68340da76ef9c2409b6158a0244140a5a3c@fb.com"},"message":"add jmh benchmark for watch manager\n\nadd watch memory usage","distinct":true,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/f9cc11f4c64df8fa53190581bb3df05763729f03"},{"sha":"c9962c94490656ed698bcfd6c1fe396cb63b5ffd","author":{"name":"Fangmin Lyu","email":"4d09c68340da76ef9c2409b6158a0244140a5a3c@fb.com"},"message":"add doc, add findbugs exclusion, and move bench project position","distinct":true,"url":"https://api.github.com/repos/lvfangmin/zookeeper/commits/c9962c94490656ed698bcfd6c1fe396cb63b5ffd"}]}
{"actor":{"display_login":"lvfangmin"}}