)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is an attempt at documentation for upgrading to extracted placement"},{"line_number":10,"context_line":"from nova. It is effectively a translation, with links, of the script"},{"line_number":11,"context_line":"used in grenade. It tries to provide details where it matters, but be"},{"line_number":12,"context_line":"vague where independent initiative is warranted."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Story: 2005190"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"5fc1f717_a4eda18c","line":11,"range":{"start_line":11,"start_character":8,"end_line":11,"end_character":15},"updated":"2019-03-19 21:02:06.000000000","message":"Could be good for others to link to https://github.com/openstack-dev/grenade/blob/master/projects/60_nova/from-rocky/upgrade-nova for reference.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"}],"doc/source/index.rst":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"691d8a8decab40b0100d36c408ce5b4b21bf6712","unresolved":false,"context_lines":[{"line_number":226,"context_line":"~~~~~~~~~~~~~~"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"If you are upgrading an existing OpenStack installation from Rocky to Stein,"},{"line_number":229,"context_line":"and wish to use the newly extracted placement, you will need to copy some"},{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_4a6e52ca","line":229,"range":{"start_line":229,"start_character":4,"end_line":229,"end_character":15},"updated":"2019-03-19 13:28:19.000000000","message":"sounds like there is another option, but actually, it is not...","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1792829b75b85a18a96a8ed846bc598baa18ea29","unresolved":false,"context_lines":[{"line_number":226,"context_line":"~~~~~~~~~~~~~~"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"If you are upgrading an existing OpenStack installation from Rocky to Stein,"},{"line_number":229,"context_line":"and wish to use the newly extracted placement, you will need to copy some"},{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_80609b37","line":229,"range":{"start_line":229,"start_character":4,"end_line":229,"end_character":15},"in_reply_to":"5fc1f717_40f15301","updated":"2019-03-19 14:20:43.000000000","message":"got it, thanks. so we probably force them switch the placement in T release? Maybe we can just warning this in this doc.","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"a4af9fa76b319049665838e7a03300ce6defb356","unresolved":false,"context_lines":[{"line_number":226,"context_line":"~~~~~~~~~~~~~~"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"If you are upgrading an existing OpenStack installation from Rocky to Stein,"},{"line_number":229,"context_line":"and wish to use the newly extracted placement, you will need to copy some"},{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_40f15301","line":229,"range":{"start_line":229,"start_character":4,"end_line":229,"end_character":15},"in_reply_to":"5fc1f717_4a6e52ca","updated":"2019-03-19 14:04:56.000000000","message":"There is an option. The placement code in nova is staying there through to the end of stein so that people can upgrade nova to stein, have it still work with placement-in-nova and then later upgrade to placement if they prefer that option.","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"336da956504eebcc99f32d28dae447d8a1425763","unresolved":false,"context_lines":[{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"* Configuration and policy files are, by default, located in"},{"line_number":234,"context_line":"  ``/etc/placement``."},{"line_number":235,"context_line":"* The placement server side settings in ``nova.conf`` should be moved to a"},{"line_number":236,"context_line":"  separate placement configuration file ``placement.conf``."},{"line_number":237,"context_line":"* The default configuration value of ``[placement]/policy_file`` is changed"},{"line_number":238,"context_line":"  from ``placement-policy.yaml`` to ``policy.yaml``"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":".. _placement repository: https://git.openstack.org/cgit/openstack/placement"},{"line_number":241,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_85266dba","line":238,"range":{"start_line":233,"start_character":0,"end_line":238,"end_character":51},"updated":"2019-03-19 13:33:45.000000000","message":"this isn\u0027t the overview of `upgrade/to-stein`. It is only the overview of configuration file copy.","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"bb37fa78e5d7bd5ee85489b70ad461406a3120ec","unresolved":false,"context_lines":[{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"* Configuration and policy files are, by default, located in"},{"line_number":234,"context_line":"  ``/etc/placement``."},{"line_number":235,"context_line":"* The placement server side settings in ``nova.conf`` should be moved to a"},{"line_number":236,"context_line":"  separate placement configuration file ``placement.conf``."},{"line_number":237,"context_line":"* The default configuration value of ``[placement]/policy_file`` is changed"},{"line_number":238,"context_line":"  from ``placement-policy.yaml`` to ``policy.yaml``"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":".. _placement repository: https://git.openstack.org/cgit/openstack/placement"},{"line_number":241,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_40cf1329","line":238,"range":{"start_line":233,"start_character":0,"end_line":238,"end_character":51},"in_reply_to":"5fc1f717_8012dbb3","updated":"2019-03-19 14:23:43.000000000","message":"I\u0027ll clarify that the document is one way to do it (as there are plenty of other options, some which will work just fine, but we don\u0027t necessarily want to encourage).\n\nFor example, the placement service could carry on using the nova_api database...","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"a4af9fa76b319049665838e7a03300ce6defb356","unresolved":false,"context_lines":[{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"* Configuration and policy files are, by default, located in"},{"line_number":234,"context_line":"  ``/etc/placement``."},{"line_number":235,"context_line":"* The placement server side settings in ``nova.conf`` should be moved to a"},{"line_number":236,"context_line":"  separate placement configuration file ``placement.conf``."},{"line_number":237,"context_line":"* The default configuration value of ``[placement]/policy_file`` is changed"},{"line_number":238,"context_line":"  from ``placement-policy.yaml`` to ``policy.yaml``"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":".. _placement repository: https://git.openstack.org/cgit/openstack/placement"},{"line_number":241,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_e08cff80","line":238,"range":{"start_line":233,"start_character":0,"end_line":238,"end_character":51},"in_reply_to":"5fc1f717_85266dba","updated":"2019-03-19 14:04:56.000000000","message":"Besides \"migrate data\" what else do you think needs to be added?","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1792829b75b85a18a96a8ed846bc598baa18ea29","unresolved":false,"context_lines":[{"line_number":230,"context_line":"data and configuration settings from nova. See :doc:`upgrade/to-stein` for"},{"line_number":231,"context_line":"details. The overview is:"},{"line_number":232,"context_line":""},{"line_number":233,"context_line":"* Configuration and policy files are, by default, located in"},{"line_number":234,"context_line":"  ``/etc/placement``."},{"line_number":235,"context_line":"* The placement server side settings in ``nova.conf`` should be moved to a"},{"line_number":236,"context_line":"  separate placement configuration file ``placement.conf``."},{"line_number":237,"context_line":"* The default configuration value of ``[placement]/policy_file`` is changed"},{"line_number":238,"context_line":"  from ``placement-policy.yaml`` to ``policy.yaml``"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":".. _placement repository: https://git.openstack.org/cgit/openstack/placement"},{"line_number":241,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_8012dbb3","line":238,"range":{"start_line":233,"start_character":0,"end_line":238,"end_character":51},"in_reply_to":"5fc1f717_e08cff80","updated":"2019-03-19 14:20:43.000000000","message":"or maybe we just remove it, since we already have detail doc, then needn\u0027t bother with this?","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"09e2aad49058afb14c9205a500a5a7b6ceb1f64e","unresolved":false,"context_lines":[{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"},{"line_number":226,"context_line":"~~~~~~~~~~~~~~"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"If you are upgrading an existing OpenStack installation from Rocky to Stein,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5fc1f717_802f3ba6","line":225,"range":{"start_line":225,"start_character":7,"end_line":225,"end_character":12},"updated":"2019-03-19 14:40:33.000000000","message":"currently the only release of placment is 0.1.0\nhttps://github.com/openstack/releases/blob/master/deliverables/stein/placement.yaml\n\ni dont see why we cannot bump it to 1.0.0 as we have until thursday to cut a placement RC but currently this is incorrect.\n\nthe placemnt api has had its 1.0 release already  but this number refers to the package/git version.","commit_id":"4cde033550199a2f84e946288bafc3a18f10c5e0"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"66a23fa32fe598dcea263384c7d80f4558d82c97","unresolved":false,"context_lines":[{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"},{"line_number":226,"context_line":"~~~~~~~~~~~~~~"},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"If you are upgrading an existing OpenStack installation from Rocky to Stein,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5fc1f717_7b73e1b2","line":225,"range":{"start_line":225,"start_character":7,"end_line":225,"end_character":12},"in_reply_to":"5fc1f717_802f3ba6","updated":"2019-03-19 15:14:33.000000000","message":"Yeah, we discussed this in IRC yesterday and the decision was that at least for Stein 1.0.0 makes sense, and these docs reflect what-will-be-released (this week).","commit_id":"4cde033550199a2f84e946288bafc3a18f10c5e0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":177,"context_line":""},{"line_number":178,"context_line":".. warning:: In the Stein release, the placement code was extracted from nova."},{"line_number":179,"context_line":"             If you are upgrading to use the extracted placement you will need"},{"line_number":180,"context_line":"             to migrate your placement data from the ``nova-api`` database to"},{"line_number":181,"context_line":"             the ``placement`` database. You can find sample scripts that may"},{"line_number":182,"context_line":"             help with this in the `placement repository`_:"},{"line_number":183,"context_line":"             `mysql-migrate-db.sh`_ and `postgresql-migrate-db.sh`_."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_44207d4a","line":180,"range":{"start_line":180,"start_character":55,"end_line":180,"end_character":63},"updated":"2019-03-19 21:02:06.000000000","message":"We should take this opportunity to correct this to nova_api like you have on L239 below.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"bdd3b06f243fa498ae7afdf94dc7a77890f8619b","unresolved":false,"context_lines":[{"line_number":177,"context_line":""},{"line_number":178,"context_line":".. warning:: In the Stein release, the placement code was extracted from nova."},{"line_number":179,"context_line":"             If you are upgrading to use the extracted placement you will need"},{"line_number":180,"context_line":"             to migrate your placement data from the ``nova-api`` database to"},{"line_number":181,"context_line":"             the ``placement`` database. You can find sample scripts that may"},{"line_number":182,"context_line":"             help with this in the `placement repository`_:"},{"line_number":183,"context_line":"             `mysql-migrate-db.sh`_ and `postgresql-migrate-db.sh`_."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_a7ae0396","line":180,"range":{"start_line":180,"start_character":55,"end_line":180,"end_character":63},"in_reply_to":"5fc1f717_44207d4a","updated":"2019-03-19 22:08:33.000000000","message":"Done","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"For releases prior to Stein, please see the `nova upgrade notes`_."},{"line_number":221,"context_line":""},{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_c4030dbe","line":222,"updated":"2019-03-19 21:02:06.000000000","message":"Ah yes we need a stein note in here to link back to *these* notes about using extracted placement, just as a breadcrumb. I can whip that up.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"8496f989bb9df56d1e7c2e25f815e4a364cc7f8c","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"For releases prior to Stein, please see the `nova upgrade notes`_."},{"line_number":221,"context_line":""},{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_7a07521a","line":222,"in_reply_to":"5fc1f717_67201bb2","updated":"2019-03-19 22:15:42.000000000","message":"Ah, I was confused, this link still works, just not in stein, so it is still appropriate to link to the rocky placement upgrade notes, so nothing to fup in this particular case.\n\nthe prelude is shaping up nicely","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"bdd3b06f243fa498ae7afdf94dc7a77890f8619b","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"For releases prior to Stein, please see the `nova upgrade notes`_."},{"line_number":221,"context_line":""},{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_e7340bfe","line":222,"in_reply_to":"5fc1f717_87442776","updated":"2019-03-19 22:08:33.000000000","message":"blargh that\u0027s clever\n\nIf we can figure out somewhere to link to, I can do it in my current fup blast","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"33f624992355c6e29230db6fe4b73569e25924eb","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"For releases prior to Stein, please see the `nova upgrade notes`_."},{"line_number":221,"context_line":""},{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_87442776","line":222,"in_reply_to":"5fc1f717_c4030dbe","updated":"2019-03-19 22:06:21.000000000","message":"Oh I guess I can\u0027t because it no longer exists.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"81827b6fe25d790499c08ca374b13b5deefb2df3","unresolved":false,"context_lines":[{"line_number":219,"context_line":""},{"line_number":220,"context_line":"For releases prior to Stein, please see the `nova upgrade notes`_."},{"line_number":221,"context_line":""},{"line_number":222,"context_line":".. _nova upgrade notes: https://docs.openstack.org/nova/rocky/user/placement.html#upgrade-notes"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Stein (1.0.0)"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_67201bb2","line":222,"in_reply_to":"5fc1f717_e7340bfe","updated":"2019-03-19 22:10:55.000000000","message":"Looks like it\u0027s coming from the nova stein release notes prelude:\n\nhttps://review.openstack.org/#/c/644412/","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"}],"doc/source/install/from-pypi.rst":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"09e2aad49058afb14c9205a500a5a7b6ceb1f64e","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":".. code-block:: console"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"   # pip install openstackclient"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":".. _create-database-pypi:"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"5fc1f717_3b079a1b","line":36,"range":{"start_line":36,"start_character":3,"end_line":36,"end_character":32},"updated":"2019-03-19 14:40:33.000000000","message":"you might also want to include osc-placement\n\nosc-placement is not pulled in by the openstackclient\nmetapackage\nhttps://github.com/openstack/openstackclient/blob/master/requirements.txt","commit_id":"4cde033550199a2f84e946288bafc3a18f10c5e0"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"66a23fa32fe598dcea263384c7d80f4558d82c97","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":".. code-block:: console"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"   # pip install openstackclient"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":".. _create-database-pypi:"},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"5fc1f717_bbece929","line":36,"range":{"start_line":36,"start_character":3,"end_line":36,"end_character":32},"in_reply_to":"5fc1f717_3b079a1b","updated":"2019-03-19 15:14:33.000000000","message":"there\u0027s a different patch for that: https://review.openstack.org/#/c/643938/\n\nbut I didn\u0027t install osc-placement because nowhere in the document are calls to the placement made by anything other than curl. openstackclient is used for keystone manipulation (in this doc)","commit_id":"4cde033550199a2f84e946288bafc3a18f10c5e0"}],"doc/source/upgrade/to-stein.rst":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b76663df8a7ebf74decd9c217f78ed6b87607a54","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5fc1f717_44ebb976","updated":"2019-03-18 20:06:59.000000000","message":"Decide whether Nova and Placement should be capitalized or not, and be consistent.","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"355a2822785e0cc412c5f47e9a848edb939c2853","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5fc1f717_9a1fbab5","in_reply_to":"5fc1f717_44ebb976","updated":"2019-03-18 21:13:31.000000000","message":"I am a bit confused about that.\n\nWhat I\u0027ve strived for here is Placement as the generic overarching term and then sometime \"placement service\" as the specific thing, but probably not managed it.\n\nPart of the confusion is that back when the docs team produced docs, they declared that project names should be lowercase, but since then many people have declared: eh, no.\n\nMy indecision probably reflects that.\n\nI personally prefer to avoid initial caps in computer names, but not for any particular reason. I just don\u0027t like them.\n\nInput/guidance/advice appreciated.","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"a5ed87374909203f179e03fe1e674c94e36168d5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5fc1f717_7b3522a8","in_reply_to":"5fc1f717_9a1fbab5","updated":"2019-03-19 15:05:46.000000000","message":"I don\u0027t care that much. If you have it the way you have it intentionally rather than randomly/accidentally, that\u0027s good enough for me.","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b76663df8a7ebf74decd9c217f78ed6b87607a54","unresolved":false,"context_lines":[{"line_number":49,"context_line":""},{"line_number":50,"context_line":"There are database migrations scripts in the placement code repository which"},{"line_number":51,"context_line":"may be used to copy the data or as models for your own tooling:"},{"line_number":52,"context_line":"`mysql-migrate-db.sh`_ and `postgresql-migrate-db.sh`_. "},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"For best results run the database migration on your database host. If you are"},{"line_number":55,"context_line":"unable to do this, you\u0027ll need to take some additional steps below."}],"source_content_type":"text/x-rst","patch_set":1,"id":"5fc1f717_e4b3c596","line":52,"updated":"2019-03-18 20:06:59.000000000","message":"gasp","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b76663df8a7ebf74decd9c217f78ed6b87607a54","unresolved":false,"context_lines":[{"line_number":79,"context_line":"   * The default location is ``/etc/placement``."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"   * Set :oslo.config:option:`placement_database.connection` to point to the"},{"line_number":82,"context_line":"     new database. For example (replacing ``PLACEMENT_DATABASE`` and"},{"line_number":83,"context_line":"     ``controller`` with the appropriate password and host):"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"     .. path /etc/placement/placement.conf"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5fc1f717_a4a93d24","line":82,"range":{"start_line":82,"start_character":44,"end_line":82,"end_character":62},"updated":"2019-03-18 20:06:59.000000000","message":"PLACEMENT_DBPASS","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b76663df8a7ebf74decd9c217f78ed6b87607a54","unresolved":false,"context_lines":[{"line_number":84,"context_line":""},{"line_number":85,"context_line":"     .. path /etc/placement/placement.conf"},{"line_number":86,"context_line":"     .. code-block:: ini"},{"line_number":87,"context_line":"     "},{"line_number":88,"context_line":"        [placement_database]"},{"line_number":89,"context_line":"        connection \u003d mysql+pymysql://placement:PLACEMENT_DBPASS@controller/placement"},{"line_number":90,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"5fc1f717_04aff129","line":87,"updated":"2019-03-18 20:06:59.000000000","message":"shock","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b76663df8a7ebf74decd9c217f78ed6b87607a54","unresolved":false,"context_lines":[{"line_number":103,"context_line":""},{"line_number":104,"context_line":"   * If it exists, copy ``/etc/nova/placement-policy.yaml`` to"},{"line_number":105,"context_line":"     ``/etc/placement/policy.yaml``. If you wish to use a different filename"},{"line_number":106,"context_line":"     adjust the :oslo.config:option:`placement.policy_file`."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"#. Configure the database migration tool."},{"line_number":109,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"5fc1f717_a457fd25","line":106,"range":{"start_line":106,"start_character":12,"end_line":106,"end_character":15},"updated":"2019-03-18 20:06:59.000000000","message":"either strike \u0027the\u0027 or add \u0027config option\u0027 at the end","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b76663df8a7ebf74decd9c217f78ed6b87607a54","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"   .. code-block:: console"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"      $ placement-manage db stamp b4ed3a175331"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"#. Sync the placement database to be up to date with all migrations:"},{"line_number":152,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"5fc1f717_641cb577","line":149,"range":{"start_line":149,"start_character":34,"end_line":149,"end_character":46},"updated":"2019-03-18 20:06:59.000000000","message":"Is this literally the value that needs to be used? What is it? The reader might like to know.","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"355a2822785e0cc412c5f47e9a848edb939c2853","unresolved":false,"context_lines":[{"line_number":146,"context_line":""},{"line_number":147,"context_line":"   .. code-block:: console"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":"      $ placement-manage db stamp b4ed3a175331"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"#. Sync the placement database to be up to date with all migrations:"},{"line_number":152,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"5fc1f717_da578257","line":149,"range":{"start_line":149,"start_character":34,"end_line":149,"end_character":46},"in_reply_to":"5fc1f717_641cb577","updated":"2019-03-18 21:13:31.000000000","message":"Yes, will explain that it is the initial version of the database after the table have been created but no migrations performed.","commit_id":"77d0d351fff80ecf2ee753a28b27ae8db90dfd04"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"691d8a8decab40b0100d36c408ce5b4b21bf6712","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"        $ mysql-migrate-db.sh --mkconfig /tmp/migrate-db.rc"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"   * Edit the file to set the values for the ``NOVA_API_USER``,"},{"line_number":117,"context_line":"     ``NOVA_API_PASS``, ``PLACEMENT_USER``, and ``PLACEMENT_PASS`` entries."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"   * If you are unable to run the migration script on the database host you"},{"line_number":120,"context_line":"     will need to set ``NOVA_API_DB_HOST`` and ``PLACEMENT_DB_HOST``."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_4a8172c3","line":117,"range":{"start_line":116,"start_character":4,"end_line":117,"end_character":75},"updated":"2019-03-19 13:28:19.000000000","message":"maybe we should clarify those are db\u0027s user and pass.","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"a4af9fa76b319049665838e7a03300ce6defb356","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"        $ mysql-migrate-db.sh --mkconfig /tmp/migrate-db.rc"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"   * Edit the file to set the values for the ``NOVA_API_USER``,"},{"line_number":117,"context_line":"     ``NOVA_API_PASS``, ``PLACEMENT_USER``, and ``PLACEMENT_PASS`` entries."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"   * If you are unable to run the migration script on the database host you"},{"line_number":120,"context_line":"     will need to set ``NOVA_API_DB_HOST`` and ``PLACEMENT_DB_HOST``."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_8035fbaa","line":117,"range":{"start_line":116,"start_character":4,"end_line":117,"end_character":75},"in_reply_to":"5fc1f717_4a8172c3","updated":"2019-03-19 14:04:56.000000000","message":"good idea","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"691d8a8decab40b0100d36c408ce5b4b21bf6712","unresolved":false,"context_lines":[{"line_number":161,"context_line":""},{"line_number":162,"context_line":"#. Restart your control plane and continue with the upgrade of the rest of the"},{"line_number":163,"context_line":"   system."},{"line_number":164,"context_line":""},{"line_number":165,"context_line":".. _openstack-placement: https://pypi.org/p/openstack-placement"},{"line_number":166,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"},{"line_number":167,"context_line":".. _postgresql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/postgresql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_aa98161b","line":164,"updated":"2019-03-19 13:28:19.000000000","message":"should we suggest a way to cleanup the old table in the Nova? I guess not, it is a danger thing.","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"a4af9fa76b319049665838e7a03300ce6defb356","unresolved":false,"context_lines":[{"line_number":161,"context_line":""},{"line_number":162,"context_line":"#. Restart your control plane and continue with the upgrade of the rest of the"},{"line_number":163,"context_line":"   system."},{"line_number":164,"context_line":""},{"line_number":165,"context_line":".. _openstack-placement: https://pypi.org/p/openstack-placement"},{"line_number":166,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"},{"line_number":167,"context_line":".. _postgresql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/postgresql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":3,"id":"5fc1f717_60448f1c","line":164,"in_reply_to":"5fc1f717_aa98161b","updated":"2019-03-19 14:04:56.000000000","message":"I\u0027ll mention that it can be done at some point, but not give details on how to do it.","commit_id":"adb2a7cc3f3df428bc214ebda13ab6dc004a0ee8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"09e2aad49058afb14c9205a500a5a7b6ceb1f64e","unresolved":false,"context_lines":[{"line_number":33,"context_line":"get an idea by counting rows in the ``resource_providers`` and ``allocations``"},{"line_number":34,"context_line":"tables."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"To avoid losing data while performing the copy it is important that writing to"},{"line_number":37,"context_line":"the placement database (on either side of the upgrade) is stopped. You may shut"},{"line_number":38,"context_line":"down solely the placement service but this will result in errors attempting to"},{"line_number":39,"context_line":"use the service from ``nova-scheduler`` and ``nova-compute``. It is potentially"},{"line_number":40,"context_line":"less disruptive to shut down the entire control plane to avoid confusing"},{"line_number":41,"context_line":"errors. What strategy is best will vary. This document describes the simple"},{"line_number":42,"context_line":"way."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":".. note:: In some installations of nova and placement, data will already be in"},{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5fc1f717_3b7c7a71","line":42,"range":{"start_line":36,"start_character":0,"end_line":42,"end_character":4},"updated":"2019-03-19 14:40:33.000000000","message":"its too late now but it might have been nice to have a readonly mode flag for the placmeent service.\ne.g. to allow disabling write operation at teh api level but since it would only be used during upgrades that might have been overkill. anyway its just something that occurred to me while reading this. you could get the same effect by confiugring your loadblancer or revers progy to drop all non GET method http operations without a placement feature which is proably a better alternitive or just shutdown the contolplane as is suggested.","commit_id":"4cde033550199a2f84e946288bafc3a18f10c5e0"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"66a23fa32fe598dcea263384c7d80f4558d82c97","unresolved":false,"context_lines":[{"line_number":33,"context_line":"get an idea by counting rows in the ``resource_providers`` and ``allocations``"},{"line_number":34,"context_line":"tables."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"To avoid losing data while performing the copy it is important that writing to"},{"line_number":37,"context_line":"the placement database (on either side of the upgrade) is stopped. You may shut"},{"line_number":38,"context_line":"down solely the placement service but this will result in errors attempting to"},{"line_number":39,"context_line":"use the service from ``nova-scheduler`` and ``nova-compute``. It is potentially"},{"line_number":40,"context_line":"less disruptive to shut down the entire control plane to avoid confusing"},{"line_number":41,"context_line":"errors. What strategy is best will vary. This document describes the simple"},{"line_number":42,"context_line":"way."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":".. note:: In some installations of nova and placement, data will already be in"},{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"5fc1f717_3b46b923","line":42,"range":{"start_line":36,"start_character":0,"end_line":42,"end_character":4},"in_reply_to":"5fc1f717_3b7c7a71","updated":"2019-03-19 15:14:33.000000000","message":"readonly mode is a useful idea for the future, but yeah, too late now\n\ndepending on what other changes are needed in here, I might add the loadbalancer tweak","commit_id":"4cde033550199a2f84e946288bafc3a18f10c5e0"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"a5ed87374909203f179e03fe1e674c94e36168d5","unresolved":false,"context_lines":[{"line_number":165,"context_line":""},{"line_number":166,"context_line":"#. At some point in the future you may remove the tables in the ``nova_api``"},{"line_number":167,"context_line":"   database that were migrated to the ``placement`` database."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":".. _openstack-placement: https://pypi.org/p/openstack-placement"},{"line_number":170,"context_line":".. _mysql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/mysql-migrate-db.sh"},{"line_number":171,"context_line":".. _postgresql-migrate-db.sh: https://git.openstack.org/cgit/openstack/placement/plain/tools/postgresql-migrate-db.sh"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5fc1f717_db545624","line":168,"updated":"2019-03-19 15:05:46.000000000","message":"Yeah, I guess if you wanted to round this off with something to confirm it all went according to plan, that would be cool.","commit_id":"cf4bfb194d86a7b93ab36d23edb43f2aee5e3138"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":19,"context_line":"installation of OpenStack, where Placement is a part of Nova, to a Stein-based"},{"line_number":20,"context_line":"system, using the independently packaged placement service."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Doing so is not a requirement. There is a version of the placement service in"},{"line_number":23,"context_line":"the nova Stein release. It will be removed in Train. The version in nova is"},{"line_number":24,"context_line":"behind the extracted version in terms of features and performance fixes."},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_c4ba2de0","line":22,"range":{"start_line":22,"start_character":0,"end_line":22,"end_character":30},"updated":"2019-03-19 21:02:06.000000000","message":"Hmm, it\u0027s required before going to Train, but it\u0027s not required to *get to* Stein. In other words, there is a period of transition so you can upgrade to Stein with placement-in-nova, and then deploy extracted placement *during* Stein and do the data migration, and just be sure to have that done *before* Train.\n\nSo I would say doing this is a requirement, but not before upgrading to Stein, it can happen after you\u0027ve upgraded to Stein but before you upgrade to Train. If you\u0027re adventurous you could try to do the extraction and migration at the same time as your normal Stein upgrade of nova, but that will likely be more than people want to bite off in a single upgrade.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":19,"context_line":"installation of OpenStack, where Placement is a part of Nova, to a Stein-based"},{"line_number":20,"context_line":"system, using the independently packaged placement service."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Doing so is not a requirement. There is a version of the placement service in"},{"line_number":23,"context_line":"the nova Stein release. It will be removed in Train. The version in nova is"},{"line_number":24,"context_line":"behind the extracted version in terms of features and performance fixes."},{"line_number":25,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_47207f4a","line":22,"range":{"start_line":22,"start_character":0,"end_line":22,"end_character":30},"in_reply_to":"5fc1f717_c4ba2de0","updated":"2019-03-19 21:26:35.000000000","message":"yeah, I got that detail a bit more correct in a comment on mel\u0027s prelude for nova.\n\nI was trying to be circumspect, not sure why.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":23,"context_line":"the nova Stein release. It will be removed in Train. The version in nova is"},{"line_number":24,"context_line":"behind the extracted version in terms of features and performance fixes."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"If you are installing a new OpenStack, you\u0027ll want the :doc:`installation docs"},{"line_number":27,"context_line":"\u003c/install/index\u003e`."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Upgrading to use the extracted placement service requires migrating several"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_a4ae0196","line":26,"range":{"start_line":26,"start_character":39,"end_line":26,"end_character":45},"updated":"2019-03-19 21:02:06.000000000","message":"Avoid contractions in docs.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":23,"context_line":"the nova Stein release. It will be removed in Train. The version in nova is"},{"line_number":24,"context_line":"behind the extracted version in terms of features and performance fixes."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"If you are installing a new OpenStack, you\u0027ll want the :doc:`installation docs"},{"line_number":27,"context_line":"\u003c/install/index\u003e`."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Upgrading to use the extracted placement service requires migrating several"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_671d7b0e","line":26,"range":{"start_line":26,"start_character":39,"end_line":26,"end_character":45},"in_reply_to":"5fc1f717_a4ae0196","updated":"2019-03-19 21:26:35.000000000","message":"aye","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":30,"context_line":"database tables from the ``nova_api`` database to a placement database."},{"line_number":31,"context_line":"Depending on the number of compute hosts in your system and the number of"},{"line_number":32,"context_line":"active virtual machines, the amount of data to copy can vary widely. You can"},{"line_number":33,"context_line":"get an idea by counting rows in the ``resource_providers`` and ``allocations``"},{"line_number":34,"context_line":"tables."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"To avoid losing data while performing the copy it is important that writing to"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_e48de931","line":33,"range":{"start_line":33,"start_character":65,"end_line":33,"end_character":76},"updated":"2019-03-19 21:02:06.000000000","message":"consumers might be a better table for this but it\u0027s a nit.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":30,"context_line":"database tables from the ``nova_api`` database to a placement database."},{"line_number":31,"context_line":"Depending on the number of compute hosts in your system and the number of"},{"line_number":32,"context_line":"active virtual machines, the amount of data to copy can vary widely. You can"},{"line_number":33,"context_line":"get an idea by counting rows in the ``resource_providers`` and ``allocations``"},{"line_number":34,"context_line":"tables."},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"To avoid losing data while performing the copy it is important that writing to"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_071a7716","line":33,"range":{"start_line":33,"start_character":65,"end_line":33,"end_character":76},"in_reply_to":"5fc1f717_e48de931","updated":"2019-03-19 21:26:35.000000000","message":"that\u0027s a good point, but as we all know I have a blind spot where consumers live\n\nbut yes, it will be a better indicator","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":36,"context_line":"To avoid losing data while performing the copy it is important that writing to"},{"line_number":37,"context_line":"the placement database (on either side of the upgrade) is stopped. You may shut"},{"line_number":38,"context_line":"down solely the placement service but this will result in errors attempting to"},{"line_number":39,"context_line":"use the service from ``nova-scheduler`` and ``nova-compute``. It is potentially"},{"line_number":40,"context_line":"less disruptive to shut down the entire control plane to avoid confusing"},{"line_number":41,"context_line":"errors. What strategy is best will vary. This document describes the simple"},{"line_number":42,"context_line":"way."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_a4ea81a9","line":39,"range":{"start_line":39,"start_character":16,"end_line":39,"end_character":61},"updated":"2019-03-19 21:02:06.000000000","message":"Technically it would also be nova-api and nova-conductor, but for what you\u0027re going with here this is maybe fine, those are the two most important pieces (nova-api should just log stuff on failures, I\u0027m not aware of something off the top of my head that would outright fail, but you could be orphaning allocations and such).\n\nSo I\u0027m not sure if you want to make this more generic by saying, \"errors attempting to use the service from nova\" or just say something like what kinds of errors one could expect, e.g. NoValidHost during scheduling, orphaned resource allocations during server delete, etc. The latter could be potentially cleaned up with known tools [1][2][3].\n\n[1] https://bugs.launchpad.net/nova/+bug/1793569\n[2] https://github.com/larsks/os-placement-tools\n[3] https://docs.openstack.org/nova/latest/cli/nova-manage.html#placement","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":36,"context_line":"To avoid losing data while performing the copy it is important that writing to"},{"line_number":37,"context_line":"the placement database (on either side of the upgrade) is stopped. You may shut"},{"line_number":38,"context_line":"down solely the placement service but this will result in errors attempting to"},{"line_number":39,"context_line":"use the service from ``nova-scheduler`` and ``nova-compute``. It is potentially"},{"line_number":40,"context_line":"less disruptive to shut down the entire control plane to avoid confusing"},{"line_number":41,"context_line":"errors. What strategy is best will vary. This document describes the simple"},{"line_number":42,"context_line":"way."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_271773f0","line":39,"range":{"start_line":39,"start_character":16,"end_line":39,"end_character":61},"in_reply_to":"5fc1f717_a4ea81a9","updated":"2019-03-19 21:26:35.000000000","message":"I\u0027m trying to suggest \"don\u0027t bother being fancy it will get messy\" or \"if you\u0027re going to be fancy that\u0027s on you, figure it out yourself\", so I think \"from nova\" is probably the right way to go.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":42,"context_line":"way."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":".. note:: In some installations of nova and placement, data will already be in"},{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"},{"line_number":46,"context_line":"          case, you will not need to copy data. Make sure that there is data in"},{"line_number":47,"context_line":"          that database and that it is correct. In some cases the database will"},{"line_number":48,"context_line":"          be present *but not used*."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_a438413d","line":45,"range":{"start_line":45,"start_character":66,"end_line":45,"end_character":72},"updated":"2019-03-19 21:02:06.000000000","message":"that is","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":44,"context_line":".. note:: In some installations of nova and placement, data will already be in"},{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"},{"line_number":46,"context_line":"          case, you will not need to copy data. Make sure that there is data in"},{"line_number":47,"context_line":"          that database and that it is correct. In some cases the database will"},{"line_number":48,"context_line":"          be present *but not used*."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"There are database migrations scripts in the placement code repository which"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_e41729a3","line":47,"range":{"start_line":47,"start_character":24,"end_line":47,"end_character":46},"updated":"2019-03-19 21:02:06.000000000","message":"How would one know if it was incorrect? It\u0027s empty? Or the number of resource_providers does not match the number of (non-deleted) compute_nodes in nova, or the number of consumers does not match the number of (non-deleted) instances?","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":44,"context_line":".. note:: In some installations of nova and placement, data will already be in"},{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"},{"line_number":46,"context_line":"          case, you will not need to copy data. Make sure that there is data in"},{"line_number":47,"context_line":"          that database and that it is correct. In some cases the database will"},{"line_number":48,"context_line":"          be present *but not used*."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"There are database migrations scripts in the placement code repository which"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_87dbc74d","line":47,"range":{"start_line":47,"start_character":24,"end_line":47,"end_character":46},"in_reply_to":"5fc1f717_e41729a3","updated":"2019-03-19 21:26:35.000000000","message":"noted","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"},{"line_number":46,"context_line":"          case, you will not need to copy data. Make sure that there is data in"},{"line_number":47,"context_line":"          that database and that it is correct. In some cases the database will"},{"line_number":48,"context_line":"          be present *but not used*."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"There are database migrations scripts in the placement code repository which"},{"line_number":51,"context_line":"may be used to copy the data or as models for your own tooling:"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_44263d19","line":48,"range":{"start_line":48,"start_character":21,"end_line":48,"end_character":36},"updated":"2019-03-19 21:02:06.000000000","message":"OK so I guess by correct you mean not empty.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":45,"context_line":"          a database named ``placement`` and not ``nova_api``. If that\u0027s the"},{"line_number":46,"context_line":"          case, you will not need to copy data. Make sure that there is data in"},{"line_number":47,"context_line":"          that database and that it is correct. In some cases the database will"},{"line_number":48,"context_line":"          be present *but not used*."},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"There are database migrations scripts in the placement code repository which"},{"line_number":51,"context_line":"may be used to copy the data or as models for your own tooling:"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_a7e043fc","line":48,"range":{"start_line":48,"start_character":21,"end_line":48,"end_character":36},"in_reply_to":"5fc1f717_44263d19","updated":"2019-03-19 21:26:35.000000000","message":"yeah, will clarify","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":52,"context_line":"`mysql-migrate-db.sh`_ and `postgresql-migrate-db.sh`_."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"For best results run the database migration on your database host. If you are"},{"line_number":55,"context_line":"unable to do this, you\u0027ll need to take some additional steps below."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"This document assumes that the same HTTP endpoint will be used before and after"},{"line_number":58,"context_line":"the upgrade. If you need to change that see :ref:`configure-endpoints-pypi` for"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_c4778d08","line":55,"range":{"start_line":55,"start_character":19,"end_line":55,"end_character":25},"updated":"2019-03-19 21:02:06.000000000","message":"you will","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":99,"context_line":"     * :oslo.config:option:`placement.incomplete_consumer_project_id`"},{"line_number":100,"context_line":"     * :oslo.config:option:`placement.incomplete_consumer_user_id`"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"#. Copy ``placement-policy.yaml``, if required."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"   * If it exists, copy ``/etc/nova/placement-policy.yaml`` to"},{"line_number":105,"context_line":"     ``/etc/placement/policy.yaml``. If you wish to use a different filename"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_44d95df2","line":102,"range":{"start_line":102,"start_character":10,"end_line":102,"end_character":31},"updated":"2019-03-19 21:02:06.000000000","message":"Ack yeah that\u0027s what\u0027s in nova config by default:\n\nhttps://docs.openstack.org/nova/latest/configuration/config.html#placement.policy_file\n\nhttps://github.com/openstack/nova/blob/master/etc/nova/placement-policy-generator.conf","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":102,"context_line":"#. Copy ``placement-policy.yaml``, if required."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"   * If it exists, copy ``/etc/nova/placement-policy.yaml`` to"},{"line_number":105,"context_line":"     ``/etc/placement/policy.yaml``. If you wish to use a different filename"},{"line_number":106,"context_line":"     adjust :oslo.config:option:`placement.policy_file`."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"#. Configure the database migration tool."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_64d6d9c6","line":105,"range":{"start_line":105,"start_character":7,"end_line":105,"end_character":33},"updated":"2019-03-19 21:02:06.000000000","message":"Yup https://docs.openstack.org/placement/latest/configuration/config.html#placement.policy_file","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":111,"context_line":""},{"line_number":112,"context_line":"     .. code-block:: console"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"        $ mysql-migrate-db.sh --mkconfig /tmp/migrate-db.rc"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"   * Edit the file to set the values for the ``NOVA_API_USER``,"},{"line_number":117,"context_line":"     ``NOVA_API_PASS``, ``PLACEMENT_USER``, and ``PLACEMENT_PASS`` entries."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_a4bb6170","line":114,"range":{"start_line":114,"start_character":41,"end_line":114,"end_character":59},"updated":"2019-03-19 21:02:06.000000000","message":"Grenade creates this file first:\n\nhttps://github.com/openstack-dev/grenade/blob/master/projects/60_nova/from-rocky/upgrade-nova#L73\n\nBut it looks like the script will create if also.","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":111,"context_line":""},{"line_number":112,"context_line":"     .. code-block:: console"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":"        $ mysql-migrate-db.sh --mkconfig /tmp/migrate-db.rc"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"   * Edit the file to set the values for the ``NOVA_API_USER``,"},{"line_number":117,"context_line":"     ``NOVA_API_PASS``, ``PLACEMENT_USER``, and ``PLACEMENT_PASS`` entries."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_67e25b04","line":114,"range":{"start_line":114,"start_character":41,"end_line":114,"end_character":59},"in_reply_to":"5fc1f717_a4bb6170","updated":"2019-03-19 21:26:35.000000000","message":"It will, I tried it","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":140,"context_line":""},{"line_number":141,"context_line":"   If your controller host (the one where you have been editing"},{"line_number":142,"context_line":"   ``/etc/placement/placement.conf``) and database host are not the same, and"},{"line_number":143,"context_line":"   you\u0027ve run the migration script on the database host, the final step in the"},{"line_number":144,"context_line":"   process will fail. This step stamps the database with an initial version"},{"line_number":145,"context_line":"   (the hash of the first alembic_ migration) so that future migrations will"},{"line_number":146,"context_line":"   work properly. From the controller host, you may do it manually with:"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_c461cd13","line":143,"range":{"start_line":143,"start_character":3,"end_line":143,"end_character":9},"updated":"2019-03-19 21:02:06.000000000","message":"you have","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"#. Start up the new placement service."},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"#. Restart your control plane and continue with the upgrade of the rest of the"},{"line_number":164,"context_line":"   system."},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"#. At some point in the future you may remove the tables in the ``nova_api``"}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_84442576","line":163,"range":{"start_line":163,"start_character":16,"end_line":163,"end_character":29},"updated":"2019-03-19 21:02:06.000000000","message":"control plane services? Also, why? Oh I guess because earlier you said \"Shut down or disable your control plane in whatever way works best for you.\"","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"732efa744992f31931c02740ac74a6ee010897b9","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"#. Start up the new placement service."},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"#. Restart your control plane and continue with the upgrade of the rest of the"},{"line_number":164,"context_line":"   system."},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"#. At some point in the future you may remove the tables in the ``nova_api``"},{"line_number":167,"context_line":"   database that were migrated to the ``placement`` database."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_e702cb09","line":164,"range":{"start_line":163,"start_character":34,"end_line":164,"end_character":10},"updated":"2019-03-19 21:02:06.000000000","message":"If they are doing this after upgrading to stein (so the lift-and-shift approach during stein, before train), then there is really no more upgrade to continue. This is a nit, I\u0027m just not sure if anyone would be confused thinking this means they need to now do something on the nova side to finish the upgrade after placement has been extracted.\n\nAssuming the placement endpoint in the service catalog does not change as part of the extraction, nova should be fine.\n\nMaybe you want to add a little blurb in here like, \"Verify the upgrade by listing resource providers and consumers using the osc-placement commands, creating and deleting a test server, etc.\"","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"e0de3cf42697b14a096c92df4facdde29b9675f2","unresolved":false,"context_lines":[{"line_number":160,"context_line":""},{"line_number":161,"context_line":"#. Start up the new placement service."},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"#. Restart your control plane and continue with the upgrade of the rest of the"},{"line_number":164,"context_line":"   system."},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"#. At some point in the future you may remove the tables in the ``nova_api``"},{"line_number":167,"context_line":"   database that were migrated to the ``placement`` database."}],"source_content_type":"text/x-rst","patch_set":8,"id":"5fc1f717_27ec53f2","line":164,"range":{"start_line":163,"start_character":34,"end_line":164,"end_character":10},"in_reply_to":"5fc1f717_e702cb09","updated":"2019-03-19 21:26:35.000000000","message":"✔","commit_id":"1a620ba2167be007b6389ae9ee94a8f18b36a286"}]}
