)]}'
{"doc/source/admin/troubleshooting/rebuild-placement-db.rst":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"2b5a7794a86d04a2b9fdd23d7c0f11ba2d2ddd1d","unresolved":false,"context_lines":[{"line_number":17,"context_line":"placement ``resource_providers`` table, which has a unique constraint on the"},{"line_number":18,"context_line":"name (hostname in this case) and uuid. Trying to create a new resource provider"},{"line_number":19,"context_line":"with a new uuid but the same name as an existing provider results in a 409"},{"line_number":20,"context_line":"error from placement, such as in `bug 1817833`_."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":".. _bug 1817833: https://bugs.launchpad.net/nova/+bug/1817833"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_a3ac0288","line":20,"updated":"2019-12-11 17:29:33.000000000","message":"Another data point: we\u0027ve had a few customers get into the ResourceProviderCreationFailed situation recently by deleting a nova-compute service while placement was down or otherwise failed to delete the RP, for example.\n\nLooking at the code, we log and continue upon error while attempting the delete the placement RP:\n\nhttps://github.com/openstack/nova/blob/46252c88b057ac99585153278d8851105baa16b3/nova/api/openstack/compute/services.py#L291\n\nwhich looks like we (I) need to fix.","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"c57be48fff6f08eabc2b1a6044f83d6a83ce2aeb","unresolved":false,"context_lines":[{"line_number":17,"context_line":"placement ``resource_providers`` table, which has a unique constraint on the"},{"line_number":18,"context_line":"name (hostname in this case) and uuid. Trying to create a new resource provider"},{"line_number":19,"context_line":"with a new uuid but the same name as an existing provider results in a 409"},{"line_number":20,"context_line":"error from placement, such as in `bug 1817833`_."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":".. _bug 1817833: https://bugs.launchpad.net/nova/+bug/1817833"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_e4a8bd8b","line":20,"in_reply_to":"3fa7e38b_6b6d8065","updated":"2019-12-11 22:38:28.000000000","message":"\u003e That\u0027s https://review.opendev.org/#/c/678100/.\n\nGuh, ok, obviously I’ve seen that patch before (I commented on it) but didn’t notice that piece of it. If you don’t mind I think I’d want to break up that change into separate pieces for each area where “placement down” isn’t handled. I’m thinking that would help with patch size and reviewability.","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c5dfafeccadd2ecfe44eba03a84763c3c67b678b","unresolved":false,"context_lines":[{"line_number":17,"context_line":"placement ``resource_providers`` table, which has a unique constraint on the"},{"line_number":18,"context_line":"name (hostname in this case) and uuid. Trying to create a new resource provider"},{"line_number":19,"context_line":"with a new uuid but the same name as an existing provider results in a 409"},{"line_number":20,"context_line":"error from placement, such as in `bug 1817833`_."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":".. _bug 1817833: https://bugs.launchpad.net/nova/+bug/1817833"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_6b6d8065","line":20,"in_reply_to":"3fa7e38b_a3ac0288","updated":"2019-12-11 18:59:19.000000000","message":"\u003e Another data point: we\u0027ve had a few customers get into the\n \u003e ResourceProviderCreationFailed situation recently by deleting a\n \u003e nova-compute service while placement was down or otherwise failed\n \u003e to delete the RP, for example.\n \u003e \n \u003e Looking at the code, we log and continue upon error while\n \u003e attempting the delete the placement RP:\n \u003e \n \u003e https://github.com/openstack/nova/blob/46252c88b057ac99585153278d8851105baa16b3/nova/api/openstack/compute/services.py#L291\n \u003e \n \u003e which looks like we (I) need to fix.\n\nThat\u0027s https://review.opendev.org/#/c/678100/.","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"c83b72a72b0270548222ae543d16ab4ef21cc928","unresolved":false,"context_lines":[{"line_number":17,"context_line":"placement ``resource_providers`` table, which has a unique constraint on the"},{"line_number":18,"context_line":"name (hostname in this case) and uuid. Trying to create a new resource provider"},{"line_number":19,"context_line":"with a new uuid but the same name as an existing provider results in a 409"},{"line_number":20,"context_line":"error from placement, such as in `bug 1817833`_."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":".. _bug 1817833: https://bugs.launchpad.net/nova/+bug/1817833"},{"line_number":23,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_3f99fe78","line":20,"in_reply_to":"3fa7e38b_e4a8bd8b","updated":"2019-12-12 00:22:49.000000000","message":"\u003e \u003e That\u0027s https://review.opendev.org/#/c/678100/.\n \u003e \n \u003e Guh, ok, obviously I’ve seen that patch before (I commented on it)\n \u003e but didn’t notice that piece of it. If you don’t mind I think I’d\n \u003e want to break up that change into separate pieces for each area\n \u003e where “placement down” isn’t handled. I’m thinking that would help\n \u003e with patch size and reviewability.\n\nAlso, I need to backport all those and I was thinking it would be easier to backport if it were split up. Lmk what you think.","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"1ae462626d856aeb3be5d3e2c8c8ba8d0cf8aeca","unresolved":false,"context_lines":[{"line_number":30,"context_line":"             however, not work when using placement for more advanced features"},{"line_number":31,"context_line":"             such as :neutron-doc:`ports with minimum bandwidth guarantees \u003c/admin/config-qos-min-bw\u003e`"},{"line_number":32,"context_line":"             or `accelerators \u003chttps://docs.openstack.org/cyborg/latest/\u003e`_."},{"line_number":33,"context_line":"             Obviously testing first in a pre-production environment is ideal."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"These are the steps at a high level:"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_68e58909","line":33,"updated":"2019-12-11 15:46:47.000000000","message":"You might want to expand this warning to say something about \"if there are other services using placement, this is probably not a good idea\"\n\nLike Blazar, etc?","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e330cf39f7766c2f12639ac35ac0e57a6e04b20d","unresolved":false,"context_lines":[{"line_number":30,"context_line":"             however, not work when using placement for more advanced features"},{"line_number":31,"context_line":"             such as :neutron-doc:`ports with minimum bandwidth guarantees \u003c/admin/config-qos-min-bw\u003e`"},{"line_number":32,"context_line":"             or `accelerators \u003chttps://docs.openstack.org/cyborg/latest/\u003e`_."},{"line_number":33,"context_line":"             Obviously testing first in a pre-production environment is ideal."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"These are the steps at a high level:"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_63936a5d","line":33,"in_reply_to":"3fa7e38b_68e58909","updated":"2019-12-11 16:37:41.000000000","message":"That\u0027s what I was trying to get at with mentioning the neutron and cyborg cases. Maybe that sentence can be expanded to just say something more general, like \"or accelerators or any other non-nova services using placement.\"?","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"1ae462626d856aeb3be5d3e2c8c8ba8d0cf8aeca","unresolved":false,"context_lines":[{"line_number":32,"context_line":"             or `accelerators \u003chttps://docs.openstack.org/cyborg/latest/\u003e`_."},{"line_number":33,"context_line":"             Obviously testing first in a pre-production environment is ideal."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"These are the steps at a high level:"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"#. Make a backup of the existing placement database in case these steps fail"},{"line_number":38,"context_line":"   and you need to start over."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_a8b061fe","line":35,"updated":"2019-12-11 15:46:47.000000000","message":"Are you leaving out the explicit steps as a kind of \"you must be this tall to ride this ride?\"","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e330cf39f7766c2f12639ac35ac0e57a6e04b20d","unresolved":false,"context_lines":[{"line_number":32,"context_line":"             or `accelerators \u003chttps://docs.openstack.org/cyborg/latest/\u003e`_."},{"line_number":33,"context_line":"             Obviously testing first in a pre-production environment is ideal."},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"These are the steps at a high level:"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"#. Make a backup of the existing placement database in case these steps fail"},{"line_number":38,"context_line":"   and you need to start over."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa7e38b_2372524b","line":35,"in_reply_to":"3fa7e38b_a8b061fe","updated":"2019-12-11 16:37:41.000000000","message":"Let\u0027s say yes. It\u0027s more (1) I wanted to throw this up fast, it can be expanded later if people desire, (2) laziness, and (3) any operator that is doing this probably already knows how to do these things so yeah that goes back to \"you should know wtf you\u0027re doing before doing this\" kind of thing.","commit_id":"1a17fe8aab50b7ca7f47a400c1dde96059e24a8e"}]}
