)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b24c8f74c2e9aab0cccc1c2d662b5d870981ffe1","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"conf: Deprecate the \u0027discover_hosts_in_cells_interval\u0027 option"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Better alternatives exist. Time to kill this."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Ic65a28878fb214a806789a7bbeee1a228bf735b5"},{"line_number":12,"context_line":"Signed-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f79a3b5_4ce03198","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":26},"updated":"2018-10-10 14:42:49.000000000","message":"Like what?","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0d6763c03d3de098b3f327a1ff57e135b6075930","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"conf: Deprecate the \u0027discover_hosts_in_cells_interval\u0027 option"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Better alternatives exist. Time to kill this."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Ic65a28878fb214a806789a7bbeee1a228bf735b5"},{"line_number":12,"context_line":"Signed-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f79a3b5_d96b9eed","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":26},"in_reply_to":"3f79a3b5_4ce03198","updated":"2018-10-10 16:02:40.000000000","message":"Using you deployment tooling to do this, optionally with the ``--by-service`` flag if using Ironic. I didn\u0027t want to reproduce the same text in the option.deprecated_reason, release note and commit message but I can","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"}],"nova/conf/scheduler.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b24c8f74c2e9aab0cccc1c2d662b5d870981ffe1","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        deprecated_for_removal\u003dTrue,"},{"line_number":103,"context_line":"        deprecated_since\u003d\u002719.0.0\u0027,"},{"line_number":104,"context_line":"        deprecated_reason\u003d\"\"\""},{"line_number":105,"context_line":"This interval was basically a hack for ironic deployments that didn\u0027t have"},{"line_number":106,"context_line":"discoverable nodes until after ironic resources were enrolled and exposed."},{"line_number":107,"context_line":"However, its use exposed some nasty races for HA deployments. As a result, this"},{"line_number":108,"context_line":"has been replaced by the ``--by-service`` flag for ``nova-manage"},{"line_number":109,"context_line":"discover_hosts``. For more information, refer to `bug #1755602"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_4c8ef1d1","line":106,"range":{"start_line":105,"start_character":0,"end_line":106,"end_character":74},"updated":"2018-10-10 14:42:49.000000000","message":"I wouldn\u0027t say this is only useful for ironic deployments. Anyone that is adding compute nodes at any time might want to be running this, although granted the better thing for them would be discovering hosts in their deploy scripts when deploying new computes.","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0d6763c03d3de098b3f327a1ff57e135b6075930","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        deprecated_for_removal\u003dTrue,"},{"line_number":103,"context_line":"        deprecated_since\u003d\u002719.0.0\u0027,"},{"line_number":104,"context_line":"        deprecated_reason\u003d\"\"\""},{"line_number":105,"context_line":"This interval was basically a hack for ironic deployments that didn\u0027t have"},{"line_number":106,"context_line":"discoverable nodes until after ironic resources were enrolled and exposed."},{"line_number":107,"context_line":"However, its use exposed some nasty races for HA deployments. As a result, this"},{"line_number":108,"context_line":"has been replaced by the ``--by-service`` flag for ``nova-manage"},{"line_number":109,"context_line":"discover_hosts``. For more information, refer to `bug #1755602"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_b9b3429a","line":106,"range":{"start_line":105,"start_character":0,"end_line":106,"end_character":74},"in_reply_to":"3f79a3b5_4c8ef1d1","updated":"2018-10-10 16:02:40.000000000","message":"Seems there\u0027s a disconnect here - these are mostly Dan\u0027s (paraphrased) words, not mine. I wanted to configure this for multi-node deployments in DevStack but was stopped in my tracks [1][2].\n\n[1] https://review.openstack.org/#/c/608703/\n[2] https://bugs.launchpad.net/nova/+bug/1755602","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bcb0878aa9289d296dade47dc4fdf8d5bfa1dfb2","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        deprecated_for_removal\u003dTrue,"},{"line_number":103,"context_line":"        deprecated_since\u003d\u002719.0.0\u0027,"},{"line_number":104,"context_line":"        deprecated_reason\u003d\"\"\""},{"line_number":105,"context_line":"This interval was basically a hack for ironic deployments that didn\u0027t have"},{"line_number":106,"context_line":"discoverable nodes until after ironic resources were enrolled and exposed."},{"line_number":107,"context_line":"However, its use exposed some nasty races for HA deployments. As a result, this"},{"line_number":108,"context_line":"has been replaced by the ``--by-service`` flag for ``nova-manage"},{"line_number":109,"context_line":"discover_hosts``. For more information, refer to `bug #1755602"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f79a3b5_9cbc3408","line":106,"range":{"start_line":105,"start_character":0,"end_line":106,"end_character":74},"in_reply_to":"3f79a3b5_b9b3429a","updated":"2018-10-10 16:18:59.000000000","message":"We added it for ironic (tripleo really) because of the pain of having to tie ironic processes to nova processes. That\u0027s why we did it, and since they have expressed desire (in the bug I referenced) to do it by service which makes their process easier.\n\nThat said, it is still potentially useful for people running any kind of hypervisor, not just ironic. It is a hack/workaround for sure -- a compromise between automation and the overhead of polling for such things. I would expect people to have their CMS trigger a discovery any time they\u0027re enrolling new computes so that they show up at the time the CMS run completes, instead of \"N seconds later\". However, depending on how you do things, that may not work as well (which was the original impetus for this in tripleo land).\n\nFor devstack deployments especially (most of which are single node), I think it makes zero sense to turn this on.\n\nSince it\u0027s built and not a maintenance burden, I see no reason to actively remove it right now. Better docs that it\u0027s a workaround, not the best way to do things, etc are very appropriate I think.","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"}],"releasenotes/notes/deprecate-discover_hosts_in_cells_interval-afe36ab9ef8989a3.yaml":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b24c8f74c2e9aab0cccc1c2d662b5d870981ffe1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The ``[scheduler] discover_hosts_in_cells_interval`` option is deprecated"},{"line_number":5,"context_line":"    for removal. This interval was basically a hack for ironic deployments that"},{"line_number":6,"context_line":"    didn\u0027t have discoverable nodes until after ironic resources were enrolled"},{"line_number":7,"context_line":"    and exposed. However, its use exposed some nasty races for HA deployments."},{"line_number":8,"context_line":"    As a result, this has been replaced by the ``--by-service`` flag for"},{"line_number":9,"context_line":"    ``nova-manage discover_hosts``. For more information, refer to `bug"},{"line_number":10,"context_line":"    #1755602`__"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3f79a3b5_aca8e520","line":7,"range":{"start_line":7,"start_character":17,"end_line":7,"end_character":78},"updated":"2018-10-10 14:42:49.000000000","message":"Huh?","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"bcb0878aa9289d296dade47dc4fdf8d5bfa1dfb2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The ``[scheduler] discover_hosts_in_cells_interval`` option is deprecated"},{"line_number":5,"context_line":"    for removal. This interval was basically a hack for ironic deployments that"},{"line_number":6,"context_line":"    didn\u0027t have discoverable nodes until after ironic resources were enrolled"},{"line_number":7,"context_line":"    and exposed. However, its use exposed some nasty races for HA deployments."},{"line_number":8,"context_line":"    As a result, this has been replaced by the ``--by-service`` flag for"},{"line_number":9,"context_line":"    ``nova-manage discover_hosts``. For more information, refer to `bug"},{"line_number":10,"context_line":"    #1755602`__"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3f79a3b5_cc0f6137","line":7,"range":{"start_line":7,"start_character":17,"end_line":7,"end_character":77},"updated":"2018-10-10 16:18:59.000000000","message":"This is probably not what you mean. Any two parallel polling loops are inherently racy and you have to take that into account if you\u0027re waiting for one to run before you continue. I\u0027m not sure what the HA component is here, or how that bug got construed as this sentence.","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"804fd5823713bbadb68c8713ef99e29eb61543d0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    The ``[scheduler] discover_hosts_in_cells_interval`` option is deprecated"},{"line_number":5,"context_line":"    for removal. This interval was basically a hack for ironic deployments that"},{"line_number":6,"context_line":"    didn\u0027t have discoverable nodes until after ironic resources were enrolled"},{"line_number":7,"context_line":"    and exposed. However, its use exposed some nasty races for HA deployments."},{"line_number":8,"context_line":"    As a result, this has been replaced by the ``--by-service`` flag for"},{"line_number":9,"context_line":"    ``nova-manage discover_hosts``. For more information, refer to `bug"},{"line_number":10,"context_line":"    #1755602`__"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3f79a3b5_9cef54f9","line":7,"range":{"start_line":7,"start_character":17,"end_line":7,"end_character":78},"in_reply_to":"3f79a3b5_aca8e520","updated":"2018-10-10 16:19:33.000000000","message":"From https://bugs.launchpad.net/nova/+bug/1755602\n\n\u003e At config time, you create and start three nova-compute services pointing at your ironic deployment. These three will be HA using the ironic driver\u0027s hash ring functionality. At config time, there are no ironic nodes present yet, which means running discover_hosts will create no host mappings.\n\u003e Next, a single ironic node is added, which is owned by one of the computes per the hash rules. At this point, you can run discover_hosts and whatever compute owns that node will get a host mapping. Then you add a second ironic node, which causes all three nova-computes to rebalance the hash ring. One or more of the ironic nodes will definitely land on one of the other nova-computes and will suddenly be unreachable because there is no host mapping until the next time discover_hosts is run. Since we track the \"mapped\" bit on compute nodes, and compute nodes move between hosts with ironic, we won\u0027t even notice that the new owner nova-compute needs a host mapping. In fact, we won\u0027t notice until we get lucky enough to land a never-mapped ironic node on a nova-compute for the first time and then run discover_hosts after that point.\n\nSo I guess s/HA deployments/when using multiple nova-compute services pointing at an ironic deployment/ ?","commit_id":"4cd91fabbd9e2f785402875115baf996baef3255"}]}
