)]}'
{"devstack/plugin.sh":[{"author":{"_account_id":21414,"name":"Yujun Zhang","email":"zhang.yujunz@zte.com.cn","username":"yujunz"},"change_message_id":"7de42d414c3b45aa6a2b099cff846949dcb71623","unresolved":false,"context_lines":[{"line_number":300,"context_line":"}"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"function write_systemd_dependency {"},{"line_number":303,"context_line":"  local service_after\u003d$1"},{"line_number":304,"context_line":"  local service_before\u003d$2"},{"line_number":305,"context_line":"  local systemd_service_after\u003d\"devstack@$service_after.service\""},{"line_number":306,"context_line":"  local systemd_service_before\u003d\"devstack@$service_before.service\""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f2577a7_b04bc085","line":304,"range":{"start_line":303,"start_character":0,"end_line":304,"end_character":25},"updated":"2017-09-10 14:06:54.000000000","message":"What does `after` and `before` stand for here?\n\nIf these two are mutual dependency, maybe we could name them service_a and service_b.","commit_id":"4ca77799b4e33d2008914f7f5428ba5d79657cf0"},{"author":{"_account_id":21414,"name":"Yujun Zhang","email":"zhang.yujunz@zte.com.cn","username":"yujunz"},"change_message_id":"c30dcb8e1833f7fd7c7a5f04edefd0d579b836a0","unresolved":false,"context_lines":[{"line_number":300,"context_line":"}"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"function write_systemd_dependency {"},{"line_number":303,"context_line":"  local service_after\u003d$1"},{"line_number":304,"context_line":"  local service_before\u003d$2"},{"line_number":305,"context_line":"  local systemd_service_after\u003d\"devstack@$service_after.service\""},{"line_number":306,"context_line":"  local systemd_service_before\u003d\"devstack@$service_before.service\""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f2577a7_53738181","line":304,"range":{"start_line":303,"start_character":0,"end_line":304,"end_character":25},"in_reply_to":"5f2577a7_70131868","updated":"2017-09-11 03:08:14.000000000","message":"Got it :-)\n\nI was confused by the commit message \"depend on each other\" and the arguments order in `write_systemd_dependency`, i.e. `service_after` appears before `service_before`","commit_id":"4ca77799b4e33d2008914f7f5428ba5d79657cf0"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"d4126a1309cfa5025bb4ebe96a4cafd9238fe7e9","unresolved":false,"context_lines":[{"line_number":300,"context_line":"}"},{"line_number":301,"context_line":""},{"line_number":302,"context_line":"function write_systemd_dependency {"},{"line_number":303,"context_line":"  local service_after\u003d$1"},{"line_number":304,"context_line":"  local service_before\u003d$2"},{"line_number":305,"context_line":"  local systemd_service_after\u003d\"devstack@$service_after.service\""},{"line_number":306,"context_line":"  local systemd_service_before\u003d\"devstack@$service_before.service\""},{"line_number":307,"context_line":""}],"source_content_type":"text/x-sh","patch_set":4,"id":"5f2577a7_70131868","line":304,"range":{"start_line":303,"start_character":0,"end_line":304,"end_character":25},"in_reply_to":"5f2577a7_b04bc085","updated":"2017-09-10 14:18:40.000000000","message":"service_before should be started before service_after\nservice_after should be started after service_before\nin our case vitrage-graph must start after vitrage-collector\n\non every restart of vitrage-graph you first need to restart vitrage collector","commit_id":"4ca77799b4e33d2008914f7f5428ba5d79657cf0"}]}
