)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"72cd1a1d900f480ae17abc97cee01034b93d4ef8","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Add a nova manage command to insert a cell mapping for Cell0."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Implements blueprint cells-cell0"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ia000e970d66d75374fd7e4e8b9137e0c10939c8e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"dae33548_2acab56e","line":12,"updated":"2016-02-16 10:31:28.000000000","message":"that\u0027s missing a relnote, for sure","commit_id":"d9388095733fb8435ba08c6733232a6fafa907b5"}],"nova/cmd/manage.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"eaf21f9018a58c8013a904f9487c20d1513d2258","unresolved":false,"context_lines":[{"line_number":1266,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":1267,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1268,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1269,"context_line":"                transport_url\u003dstr(rpc.get_transport_url()),"},{"line_number":1270,"context_line":"                database_connection\u003dCONF.database.connection)"},{"line_number":1271,"context_line":"        cell_mapping.create()"},{"line_number":1272,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a5ae5dd_53eb82b0","line":1269,"range":{"start_line":1269,"start_character":34,"end_line":1269,"end_character":57},"updated":"2016-02-04 20:09:54.000000000","message":"I think this creates an empty TransportURL object. A url has to be passed for it to parse and populate a new TransportURL.\n\nI\u0027m not aware of an already existing function for assembling a transport url from a CONF.","commit_id":"4cd1b690157224ff9d79bc2550607cd5bfe91374"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"72cd1a1d900f480ae17abc97cee01034b93d4ef8","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1265,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1266,"context_line":"          required\u003dTrue,"},{"line_number":1267,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1268,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1269,"context_line":"        \"\"\"Create a cell mapping for cell0.\"\"\""},{"line_number":1270,"context_line":"        ctxt \u003d context.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_8a5661d0","line":1267,"updated":"2016-02-16 10:31:28.000000000","message":"we should get that from the config file, like melwitt did in his patch","commit_id":"d9388095733fb8435ba08c6733232a6fafa907b5"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"2e74bd4e6549879c37205cdeca20c6f90cc97488","unresolved":false,"context_lines":[{"line_number":1270,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":1271,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1272,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1273,"context_line":"                transport_url\u003dstr(rpc.get_transport_url()),"},{"line_number":1274,"context_line":"                database_connection\u003ddatabase_connection)"},{"line_number":1275,"context_line":"        cell_mapping.create()"},{"line_number":1276,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3a57f1b5_10de936d","line":1273,"updated":"2016-02-10 16:47:05.000000000","message":"I saw the previous comment on this creating an empty transport, however that is okay here because cell0 is not currently planned to have any message queue traffic. It\u0027s only a graveyard database for instances that failed to schedule.","commit_id":"d9388095733fb8435ba08c6733232a6fafa907b5"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"72cd1a1d900f480ae17abc97cee01034b93d4ef8","unresolved":false,"context_lines":[{"line_number":1270,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":1271,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1272,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1273,"context_line":"                transport_url\u003dstr(rpc.get_transport_url()),"},{"line_number":1274,"context_line":"                database_connection\u003ddatabase_connection)"},{"line_number":1275,"context_line":"        cell_mapping.create()"},{"line_number":1276,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"dae33548_aabd25d9","line":1273,"in_reply_to":"3a57f1b5_10de936d","updated":"2016-02-16 10:31:28.000000000","message":"we should at least provide some comment here explaining why we set the transport to None.\n\nAlso, more like a general concern, we\u0027re adding more and more commands for managing cells, but the terminology is pretty tribal and we should somehow explain what is a Cell0 now.","commit_id":"d9388095733fb8435ba08c6733232a6fafa907b5"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"c346c50ba585243fbffd7b76fd40cffd9cbbcc15","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1265,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1266,"context_line":"          required\u003dTrue,"},{"line_number":1267,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1268,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1269,"context_line":"        \"\"\""},{"line_number":1270,"context_line":"        Create a cell mapping for cell0."}],"source_content_type":"text/x-python","patch_set":5,"id":"dae33548_366f6d2c","line":1267,"updated":"2016-02-17 16:04:45.000000000","message":"see my comment on PS2, we should get it from a conf opt IMHO","commit_id":"34848366102ff50fd670ef6e195d9abc03415c89"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"a15b5189f85fcbd12cde5122661a8b936cefdba0","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1265,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1266,"context_line":"          required\u003dTrue,"},{"line_number":1267,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1268,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1269,"context_line":"        \"\"\""},{"line_number":1270,"context_line":"        Create a cell mapping for cell0."}],"source_content_type":"text/x-python","patch_set":5,"id":"dae33548_ecda524a","line":1267,"in_reply_to":"dae33548_366f6d2c","updated":"2016-02-17 16:25:35.000000000","message":"In a deployment that has a fully separate cell0 database there is no config option with a connection string for it. In the simple case we could default this to pulling the connection string for the api db and colocating the two databases.","commit_id":"34848366102ff50fd670ef6e195d9abc03415c89"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"36466ea26615952d93070257347020fabe79dd3d","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1265,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1266,"context_line":"          required\u003dTrue,"},{"line_number":1267,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1268,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1269,"context_line":"        \"\"\""},{"line_number":1270,"context_line":"        Create a cell mapping for cell0."}],"source_content_type":"text/x-python","patch_set":5,"id":"dae33548_07591135","line":1267,"in_reply_to":"dae33548_4c8eded0","updated":"2016-02-18 15:39:32.000000000","message":"Thanks Sylvain, sdague had similar concerns on IRC. The conclusion we came to there was that I would change this command to make the `database_connection` parameter optional. In the case where the database_connection param is missing, the API database would be used.\n\nThe command would still have to be called to add the mapping to the database. `nova-manage cell_v2 map_cell0`.\n\nWould this be acceptable to you?","commit_id":"34848366102ff50fd670ef6e195d9abc03415c89"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4e8dbf4177b592feb7c3b2421ad34037ed193492","unresolved":false,"context_lines":[{"line_number":1264,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1265,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1266,"context_line":"          required\u003dTrue,"},{"line_number":1267,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1268,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1269,"context_line":"        \"\"\""},{"line_number":1270,"context_line":"        Create a cell mapping for cell0."}],"source_content_type":"text/x-python","patch_set":5,"id":"dae33548_4c8eded0","line":1267,"in_reply_to":"dae33548_ecda524a","updated":"2016-02-17 16:32:35.000000000","message":"That looks a good point : defaulting to the API DB connection string means that we would have 2 DBs :\n- one for API DB tables + cell0 tables\n- one for cell1 table\n\nIn a all-in-one deployment, that looks good. In case operators want to separate the cell0 tables from the api db tables, they have to modify the connection string here in the CLI.","commit_id":"34848366102ff50fd670ef6e195d9abc03415c89"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"06e12398fdfcf8acb5e521242b09519e2989e8bc","unresolved":false,"context_lines":[{"line_number":1294,"context_line":"class CellV2Commands(object):"},{"line_number":1295,"context_line":"    \"\"\"Commands for managing cells v2.\"\"\""},{"line_number":1296,"context_line":""},{"line_number":1297,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1298,"context_line":"        \"\"\""},{"line_number":1299,"context_line":"        Create a cell mapping for cell0."},{"line_number":1300,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"bae84128_46959fe2","line":1297,"updated":"2016-02-19 21:12:54.000000000","message":"You left off the @args decorator :)","commit_id":"8f361841e644f3f9746dc234239432032c22a1f5"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d88ab8c2904a759f77104f0d34cd86351cef8e9c","unresolved":false,"context_lines":[{"line_number":1294,"context_line":"class CellV2Commands(object):"},{"line_number":1295,"context_line":"    \"\"\"Commands for managing cells v2.\"\"\""},{"line_number":1296,"context_line":""},{"line_number":1297,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1298,"context_line":"        \"\"\""},{"line_number":1299,"context_line":"        Create a cell mapping for cell0."},{"line_number":1300,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"bae84128_3c4d0a73","line":1297,"in_reply_to":"bae84128_46959fe2","updated":"2016-02-19 21:44:35.000000000","message":"Heh :-)\nIt also misses the default database connection","commit_id":"8f361841e644f3f9746dc234239432032c22a1f5"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"d347d203c9f0a25f32c7a9f11cce353524d506b6","unresolved":false,"context_lines":[{"line_number":1297,"context_line":""},{"line_number":1298,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1299,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1300,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1301,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1302,"context_line":"        \"\"\"Create a cell mapping for cell0."},{"line_number":1303,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"bae84128_beecebf3","line":1300,"updated":"2016-02-23 15:33:20.000000000","message":"You should mention that this will default to using the configured nova_api connection info, with a modified db name, if not provided.","commit_id":"e968479063381bc06e925fd570dc88408ebdbc91"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"81c45aef3bfe41753c5f852e64ea470c5581883b","unresolved":false,"context_lines":[{"line_number":1305,"context_line":""},{"line_number":1306,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1307,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1308,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1309,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1310,"context_line":"        \"\"\"Create a cell mapping for cell0."},{"line_number":1311,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9aed3d3a_e311c105","line":1308,"updated":"2016-02-29 17:53:22.000000000","message":"This help text should explain that this can be left out and that the nova_api db connection string, but different db, will be used in that case.","commit_id":"3f4b6166a645446dcf1bfd861345f58b666a20c0"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"4ebdf7057645bfb384efaa9756fadf236fb6d567","unresolved":false,"context_lines":[{"line_number":1305,"context_line":""},{"line_number":1306,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1307,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1308,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1309,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1310,"context_line":"        \"\"\"Create a cell mapping for cell0."},{"line_number":1311,"context_line":""}],"source_content_type":"text/x-python","patch_set":12,"id":"9aed3d3a_b746ca4c","line":1308,"in_reply_to":"9aed3d3a_e311c105","updated":"2016-02-29 20:23:22.000000000","message":"Thanks, will update this help text.","commit_id":"3f4b6166a645446dcf1bfd861345f58b666a20c0"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"dfb3ee7abdc51e220c4080eadf5050cab23936ee","unresolved":false,"context_lines":[{"line_number":1310,"context_line":""},{"line_number":1311,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1312,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1313,"context_line":"          help\u003d\u0027The database connection url for cell0\u0027)"},{"line_number":1314,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1315,"context_line":"        \"\"\"Create a cell mapping for cell0."},{"line_number":1316,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"7af24918_53eeff8b","line":1313,"updated":"2016-03-01 21:47:26.000000000","message":"Sorry, I meant this help variable. This is available to users of the CLI so it would be good to explain the behavior here.","commit_id":"8faeb2cf69012f0cfdbfeca14c63a785d3c162ef"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"eed0f422f7536d5afa74f023d742de975636a4b7","unresolved":false,"context_lines":[{"line_number":1328,"context_line":"        This command creates a cell mapping for this special cell which"},{"line_number":1329,"context_line":"        requires a database to store the instance data."},{"line_number":1330,"context_line":""},{"line_number":1331,"context_line":"        The \u0027database_connection\u0027 parameter is optional, if not provided"},{"line_number":1332,"context_line":"        a standard database conneciton will be used based on the nova"},{"line_number":1333,"context_line":"        database connection."},{"line_number":1334,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_430a1a7a","line":1331,"updated":"2016-03-23 20:27:42.000000000","message":"Can you copy/move this to the help text on line 1320. That way it\u0027s exposed to nova-manage users in the CLI help.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":1339,"context_line":"                # netloc as the API database, with a related path."},{"line_number":1340,"context_line":"                scheme, netloc, path, query, fragment \u003d \\"},{"line_number":1341,"context_line":"                    urlparse.urlsplit(CONF.database.connection)"},{"line_number":1342,"context_line":"                root, ext \u003d os.path.splitext(path)"},{"line_number":1343,"context_line":"                path \u003d root + \"_cell0\" + ext"},{"line_number":1344,"context_line":"                return urlparse.urlunsplit((scheme, netloc, path, query,"},{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_317acd77","line":1343,"range":{"start_line":1342,"start_character":16,"end_line":1343,"end_character":44},"updated":"2016-03-23 21:59:28.000000000","message":"Maybe a dumb question, but will there ever be an extension in a connection url path? That is, do we need this part or could we simply path \u003d \u0027_\u0027.join([path, \u0027cell0\u0027])?","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":1339,"context_line":"                # netloc as the API database, with a related path."},{"line_number":1340,"context_line":"                scheme, netloc, path, query, fragment \u003d \\"},{"line_number":1341,"context_line":"                    urlparse.urlsplit(CONF.database.connection)"},{"line_number":1342,"context_line":"                root, ext \u003d os.path.splitext(path)"},{"line_number":1343,"context_line":"                path \u003d root + \"_cell0\" + ext"},{"line_number":1344,"context_line":"                return urlparse.urlunsplit((scheme, netloc, path, query,"},{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_ae90e896","line":1343,"range":{"start_line":1342,"start_character":16,"end_line":1343,"end_character":44},"in_reply_to":"fa0719c6_317acd77","updated":"2016-03-28 20:10:09.000000000","message":"I\u0027m not sure, but since sqlite is one driver it certainly is possible to have an extension. We could just say \u0027join\u0027, I mean I\u0027m just coming up with a random name for a default here.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":1342,"context_line":"                root, ext \u003d os.path.splitext(path)"},{"line_number":1343,"context_line":"                path \u003d root + \"_cell0\" + ext"},{"line_number":1344,"context_line":"                return urlparse.urlunsplit((scheme, netloc, path, query,"},{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""},{"line_number":1347,"context_line":"        dbc \u003d database_connection or cell0_default_connection()"},{"line_number":1348,"context_line":"        ctxt \u003d context.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_fede640f","line":1345,"updated":"2016-03-23 21:59:28.000000000","message":"It looks like L1336 - L1345 are overindented by one step","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":1342,"context_line":"                root, ext \u003d os.path.splitext(path)"},{"line_number":1343,"context_line":"                path \u003d root + \"_cell0\" + ext"},{"line_number":1344,"context_line":"                return urlparse.urlunsplit((scheme, netloc, path, query,"},{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""},{"line_number":1347,"context_line":"        dbc \u003d database_connection or cell0_default_connection()"},{"line_number":1348,"context_line":"        ctxt \u003d context.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_0e5d94e9","line":1345,"in_reply_to":"fa0719c6_fede640f","updated":"2016-03-28 20:10:09.000000000","message":"Will fix.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""},{"line_number":1347,"context_line":"        dbc \u003d database_connection or cell0_default_connection()"},{"line_number":1348,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":1349,"context_line":"        # A transport url of \u0027none://\u0027 is provided for cell0. RPC should not"},{"line_number":1350,"context_line":"        # be used to access cell0 objects. Cells transport switching will"},{"line_number":1351,"context_line":"        # ignore any \u0027none\u0027 transport type."}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_fe7ae4ef","line":1348,"updated":"2016-03-23 21:59:28.000000000","message":"admin context isn\u0027t needed -- you can use RequestContext() for example","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""},{"line_number":1347,"context_line":"        dbc \u003d database_connection or cell0_default_connection()"},{"line_number":1348,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":1349,"context_line":"        # A transport url of \u0027none://\u0027 is provided for cell0. RPC should not"},{"line_number":1350,"context_line":"        # be used to access cell0 objects. Cells transport switching will"},{"line_number":1351,"context_line":"        # ignore any \u0027none\u0027 transport type."}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_6e72507e","line":1348,"in_reply_to":"fa0719c6_fe7ae4ef","updated":"2016-03-28 20:10:09.000000000","message":"Will change to use non admin context.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":1351,"context_line":"        # ignore any \u0027none\u0027 transport type."},{"line_number":1352,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1353,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1354,"context_line":"                transport_url\u003d\"none:///\","},{"line_number":1355,"context_line":"                database_connection\u003ddbc)"},{"line_number":1356,"context_line":"        cell_mapping.create()"},{"line_number":1357,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_7e041449","line":1354,"range":{"start_line":1354,"start_character":30,"end_line":1354,"end_character":40},"updated":"2016-03-23 21:59:28.000000000","message":"We need to agree on a special unicorn sentinel value for this. I proposed \u0027cell0\u0027 in my mq switch patch [1], does anyone have another idea?\n\n[1] https://review.openstack.org/#/c/274955/6/nova/context.py@302","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"8c7f3636e26357e9248702d2bad9e6c8a8bb820a","unresolved":false,"context_lines":[{"line_number":1351,"context_line":"        # ignore any \u0027none\u0027 transport type."},{"line_number":1352,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1353,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1354,"context_line":"                transport_url\u003d\"none:///\","},{"line_number":1355,"context_line":"                database_connection\u003ddbc)"},{"line_number":1356,"context_line":"        cell_mapping.create()"},{"line_number":1357,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_18e4c50b","line":1354,"range":{"start_line":1354,"start_character":30,"end_line":1354,"end_character":40},"in_reply_to":"fa0719c6_7e041449","updated":"2016-03-28 15:30:11.000000000","message":"I personally like \"none:///\" because it should be parseable like an actual transport, it just won\u0027t connect anywhere. My hope is that using something like this would avoid crazy errors in oslo.messaging if it were accidentally passed in. Though perhaps there\u0027s some benefit to having that happen.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"2f7647efadc0cbbfc1a0f2005698bcf45c6e040d","unresolved":false,"context_lines":[{"line_number":1342,"context_line":"                root, ext \u003d os.path.splitext(path)"},{"line_number":1343,"context_line":"                path \u003d root + \"_cell0\" + ext"},{"line_number":1344,"context_line":"                return urlparse.urlunsplit((scheme, netloc, path, query,"},{"line_number":1345,"context_line":"                                            fragment))"},{"line_number":1346,"context_line":""},{"line_number":1347,"context_line":"        dbc \u003d database_connection or cell0_default_connection()"},{"line_number":1348,"context_line":"        ctxt \u003d context.get_admin_context()"}],"source_content_type":"text/x-python","patch_set":16,"id":"da0c15f0_8b893029","line":1345,"updated":"2016-03-28 14:24:38.000000000","message":"Indentation is off for the above function definition. It\u0027s indented 8 spaces instead of 4.","commit_id":"a4a68195f57d59d5535c52a69266a07666092f4d"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":1312,"context_line":""},{"line_number":1313,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1314,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1315,"context_line":"          help\u003d\u0027The database connection url for cell0.\u0027"},{"line_number":1316,"context_line":"               \u0027This is optional, if not provided a standard database\u0027"},{"line_number":1317,"context_line":"               \u0027conneciton will be used based on the nova database connection.\u0027"},{"line_number":1318,"context_line":"         )"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_9ebb8b0e","line":1315,"range":{"start_line":1315,"start_character":53,"end_line":1315,"end_character":55},"updated":"2016-03-28 23:30:20.000000000","message":"I think you need a space here","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":1313,"context_line":"    @args(\u0027--database_connection\u0027,"},{"line_number":1314,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1315,"context_line":"          help\u003d\u0027The database connection url for cell0.\u0027"},{"line_number":1316,"context_line":"               \u0027This is optional, if not provided a standard database\u0027"},{"line_number":1317,"context_line":"               \u0027conneciton will be used based on the nova database connection.\u0027"},{"line_number":1318,"context_line":"         )"},{"line_number":1319,"context_line":"    def map_cell0(self, database_connection\u003dNone):"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_5ec1f37f","line":1316,"range":{"start_line":1316,"start_character":68,"end_line":1316,"end_character":70},"updated":"2016-03-28 23:30:20.000000000","message":"and here","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":1314,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1315,"context_line":"          help\u003d\u0027The database connection url for cell0.\u0027"},{"line_number":1316,"context_line":"               \u0027This is optional, if not provided a standard database\u0027"},{"line_number":1317,"context_line":"               \u0027conneciton will be used based on the nova database connection.\u0027"},{"line_number":1318,"context_line":"         )"},{"line_number":1319,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1320,"context_line":"        \"\"\"Create a cell mapping for cell0."}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_7e13175d","line":1317,"range":{"start_line":1317,"start_character":16,"end_line":1317,"end_character":26},"updated":"2016-03-28 23:30:20.000000000","message":"typo\n\n\nAlso, this seems like a run-on sentence without a comma after \"provided.\" Suggest: \"This is optional. If not provided, a standard database connection will be used based on the API database connection from the Nova configuration.\"","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"238b817bafd26e3cc93fc23dc71ff5bf195cf804","unresolved":false,"context_lines":[{"line_number":1314,"context_line":"          metavar\u003d\u0027\u003cdatabase_connection\u003e\u0027,"},{"line_number":1315,"context_line":"          help\u003d\u0027The database connection url for cell0.\u0027"},{"line_number":1316,"context_line":"               \u0027This is optional, if not provided a standard database\u0027"},{"line_number":1317,"context_line":"               \u0027conneciton will be used based on the nova database connection.\u0027"},{"line_number":1318,"context_line":"         )"},{"line_number":1319,"context_line":"    def map_cell0(self, database_connection\u003dNone):"},{"line_number":1320,"context_line":"        \"\"\"Create a cell mapping for cell0."}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_1749f55f","line":1317,"range":{"start_line":1317,"start_character":16,"end_line":1317,"end_character":26},"in_reply_to":"ba0121b8_7e13175d","updated":"2016-03-29 16:33:27.000000000","message":"Ok, will use your suggested text.","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":1332,"context_line":"            # The cell0 database will use the same database scheme and"},{"line_number":1333,"context_line":"            # netloc as the API database, with a related path."},{"line_number":1334,"context_line":"            scheme, netloc, path, query, fragment \u003d \\"},{"line_number":1335,"context_line":"                urlparse.urlsplit(CONF.database.connection)"},{"line_number":1336,"context_line":"            root, ext \u003d os.path.splitext(path)"},{"line_number":1337,"context_line":"            path \u003d root + \"_cell0\" + ext"},{"line_number":1338,"context_line":"            return urlparse.urlunsplit((scheme, netloc, path, query,"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_be4bef58","line":1335,"range":{"start_line":1335,"start_character":34,"end_line":1335,"end_character":58},"updated":"2016-03-28 23:30:20.000000000","message":"This isn\u0027t the API database connection -- it\u0027s the main database connection. The API database connection would be CONF.api_database.connection","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"238b817bafd26e3cc93fc23dc71ff5bf195cf804","unresolved":false,"context_lines":[{"line_number":1332,"context_line":"            # The cell0 database will use the same database scheme and"},{"line_number":1333,"context_line":"            # netloc as the API database, with a related path."},{"line_number":1334,"context_line":"            scheme, netloc, path, query, fragment \u003d \\"},{"line_number":1335,"context_line":"                urlparse.urlsplit(CONF.database.connection)"},{"line_number":1336,"context_line":"            root, ext \u003d os.path.splitext(path)"},{"line_number":1337,"context_line":"            path \u003d root + \"_cell0\" + ext"},{"line_number":1338,"context_line":"            return urlparse.urlunsplit((scheme, netloc, path, query,"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_d765bde1","line":1335,"range":{"start_line":1335,"start_character":34,"end_line":1335,"end_character":58},"in_reply_to":"ba0121b8_be4bef58","updated":"2016-03-29 16:33:27.000000000","message":"Eeek. Will fix.","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":1345,"context_line":"        # ignore any \u0027none\u0027 transport type."},{"line_number":1346,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1347,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1348,"context_line":"                transport_url\u003d\"none:///\","},{"line_number":1349,"context_line":"                database_connection\u003ddbc)"},{"line_number":1350,"context_line":"        cell_mapping.create()"},{"line_number":1351,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_33aa78d5","line":1348,"range":{"start_line":1348,"start_character":31,"end_line":1348,"end_character":39},"updated":"2016-03-28 23:30:20.000000000","message":"This doesn\u0027t match \u0027none://\u0027 in the comment on L1343, fyi\n\nAlso, I\u0027ll change my patch to use .startswith(\u0027none\u0027) for bypassing transport creation","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"238b817bafd26e3cc93fc23dc71ff5bf195cf804","unresolved":false,"context_lines":[{"line_number":1345,"context_line":"        # ignore any \u0027none\u0027 transport type."},{"line_number":1346,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1347,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1348,"context_line":"                transport_url\u003d\"none:///\","},{"line_number":1349,"context_line":"                database_connection\u003ddbc)"},{"line_number":1350,"context_line":"        cell_mapping.create()"},{"line_number":1351,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_3777d93b","line":1348,"range":{"start_line":1348,"start_character":31,"end_line":1348,"end_character":39},"in_reply_to":"ba0121b8_33aa78d5","updated":"2016-03-29 16:33:27.000000000","message":"I think so. I was hoping that when parsed through oslo_messaging.transport.TransportURL() the transport_url.transport property would have \u0027none\u0027 in it. Instead it parses to \u0027none:///\u0027 Probably best to use startswith.","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"0dfc229e3dd9e79dac0e413dad24c251bea7e29e","unresolved":false,"context_lines":[{"line_number":1140,"context_line":"            scheme, netloc, path, query, fragment \u003d \\"},{"line_number":1141,"context_line":"                urlparse.urlsplit(CONF.api_database.connection)"},{"line_number":1142,"context_line":"            root, ext \u003d os.path.splitext(path)"},{"line_number":1143,"context_line":"            path \u003d root + \"_cell0\" + ext"},{"line_number":1144,"context_line":"            return urlparse.urlunsplit((scheme, netloc, path, query,"},{"line_number":1145,"context_line":"                                        fragment))"},{"line_number":1146,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"1a122d0e_49685ef5","line":1143,"updated":"2016-04-28 18:59:17.000000000","message":"kewl","commit_id":"17b57250c269036a8e2c104ee79c0390f0afd3f0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b94d3fdc1691c62076690c50406c532270f701c8","unresolved":false,"context_lines":[{"line_number":1151,"context_line":"        # ignore any \u0027none\u0027 transport type."},{"line_number":1152,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1153,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1154,"context_line":"                transport_url\u003d\"none:///\","},{"line_number":1155,"context_line":"                database_connection\u003ddbc)"},{"line_number":1156,"context_line":"        cell_mapping.create()"},{"line_number":1157,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"1a122d0e_4a8d9a29","line":1154,"range":{"start_line":1154,"start_character":30,"end_line":1154,"end_character":40},"updated":"2016-05-03 02:15:12.000000000","message":"Had you said before that messaging.get_transport(\u0027none:///\u0027) succeeds without error? Because when I try it in my patch I get:\n\n oslo_messaging.transport.DriverLoadFailure: Failed to load transport driver \"none\": No \u0027oslo.messaging.drivers\u0027 driver found, looking for u\u0027none\u0027","commit_id":"17b57250c269036a8e2c104ee79c0390f0afd3f0"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"dee6789d8d0e0941f10700c11082e706e8f821b8","unresolved":false,"context_lines":[{"line_number":1151,"context_line":"        # ignore any \u0027none\u0027 transport type."},{"line_number":1152,"context_line":"        cell_mapping \u003d objects.CellMapping("},{"line_number":1153,"context_line":"                ctxt, uuid\u003dobjects.CellMapping.CELL0_UUID, name\u003d\"cell0\","},{"line_number":1154,"context_line":"                transport_url\u003d\"none:///\","},{"line_number":1155,"context_line":"                database_connection\u003ddbc)"},{"line_number":1156,"context_line":"        cell_mapping.create()"},{"line_number":1157,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"1a122d0e_ec4a6fac","line":1154,"range":{"start_line":1154,"start_character":30,"end_line":1154,"end_character":40},"in_reply_to":"1a122d0e_4a8d9a29","updated":"2016-05-04 20:34:49.000000000","message":"I hadn\u0027t tested anything before so I wasn\u0027t sure how it would fail, or if it would succeed. But my thinking was the failure, if there was one, would be more clear if it looked like a transport. If we had used None we probably would get an AttributeError somewhere which may be hard to trace, the DriverLoadFailure is more clear.","commit_id":"17b57250c269036a8e2c104ee79c0390f0afd3f0"}],"nova/objects/cell_mapping.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"0dfc229e3dd9e79dac0e413dad24c251bea7e29e","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    # Version 1.0: Initial version"},{"line_number":23,"context_line":"    VERSION \u003d \u00271.0\u0027"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    CELL0_UUID \u003d \u002700000000-0000-0000-0000-000000000000\u0027"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    fields \u003d {"},{"line_number":28,"context_line":"        \u0027id\u0027: fields.IntegerField(read_only\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":20,"id":"1a122d0e_e9568a5a","line":25,"updated":"2016-04-28 18:59:17.000000000","message":"nit: I provided a comment for my own migration note explaining that a zero-long UUID is okay, maybe saying that here too could be nice but that\u0027s not really needed, just me overcommenting ;-)","commit_id":"17b57250c269036a8e2c104ee79c0390f0afd3f0"}],"nova/tests/unit/test_nova_manage.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":20,"context_line":"import mock"},{"line_number":21,"context_line":"from oslo_utils import uuidutils"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from oslo_config import cfg"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"from nova.cmd import manage"},{"line_number":26,"context_line":"from nova import context"}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_be2d0caa","line":23,"updated":"2016-03-23 21:59:28.000000000","message":"Shouldn\u0027t this go together with the other third-party imports?","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":20,"context_line":"import mock"},{"line_number":21,"context_line":"from oslo_utils import uuidutils"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from oslo_config import cfg"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"from nova.cmd import manage"},{"line_number":26,"context_line":"from nova import context"}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_0e1474f3","line":23,"in_reply_to":"fa0719c6_be2d0caa","updated":"2016-03-28 20:10:09.000000000","message":"Will remove empty line.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":824,"context_line":"        self.assertEqual(expected, output)"},{"line_number":825,"context_line":""},{"line_number":826,"context_line":"    def test_map_cell0(self):"},{"line_number":827,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":828,"context_line":"        database_connection \u003d \u0027fake:/foobar//\u0027"},{"line_number":829,"context_line":"        self.commands.map_cell0(database_connection)"},{"line_number":830,"context_line":"        cell_mapping \u003d objects.CellMapping.get_by_uuid(ctxt,"}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_be04ec17","line":827,"updated":"2016-03-23 21:59:28.000000000","message":"admin context not needed","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":824,"context_line":"        self.assertEqual(expected, output)"},{"line_number":825,"context_line":""},{"line_number":826,"context_line":"    def test_map_cell0(self):"},{"line_number":827,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":828,"context_line":"        database_connection \u003d \u0027fake:/foobar//\u0027"},{"line_number":829,"context_line":"        self.commands.map_cell0(database_connection)"},{"line_number":830,"context_line":"        cell_mapping \u003d objects.CellMapping.get_by_uuid(ctxt,"}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_4e1dcc0e","line":827,"in_reply_to":"fa0719c6_be04ec17","updated":"2016-03-28 20:10:09.000000000","message":"Will Replace with RequestContext()","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":837,"context_line":"        CONF.set_default(\u0027connection\u0027,"},{"line_number":838,"context_line":"                         \u0027fake://netloc/nova_api\u0027,"},{"line_number":839,"context_line":"                         group\u003d\u0027database\u0027)"},{"line_number":840,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":841,"context_line":"        self.commands.map_cell0()"},{"line_number":842,"context_line":"        cell_mapping \u003d objects.CellMapping.get_by_uuid(ctxt,"},{"line_number":843,"context_line":"                objects.CellMapping.CELL0_UUID)"}],"source_content_type":"text/x-python","patch_set":15,"id":"fa0719c6_311e4d5f","line":840,"updated":"2016-03-23 21:59:28.000000000","message":"admin context not needed","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":837,"context_line":"        CONF.set_default(\u0027connection\u0027,"},{"line_number":838,"context_line":"                         \u0027fake://netloc/nova_api\u0027,"},{"line_number":839,"context_line":"                         group\u003d\u0027database\u0027)"},{"line_number":840,"context_line":"        ctxt \u003d context.get_admin_context()"},{"line_number":841,"context_line":"        self.commands.map_cell0()"},{"line_number":842,"context_line":"        cell_mapping \u003d objects.CellMapping.get_by_uuid(ctxt,"},{"line_number":843,"context_line":"                objects.CellMapping.CELL0_UUID)"}],"source_content_type":"text/x-python","patch_set":15,"id":"ba0121b8_0e2bd431","line":840,"in_reply_to":"fa0719c6_311e4d5f","updated":"2016-03-28 20:10:09.000000000","message":"ditto","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import fixtures"},{"line_number":20,"context_line":"import mock"},{"line_number":21,"context_line":"from oslo_config import cfg"},{"line_number":22,"context_line":"from oslo_utils import uuidutils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from nova.cmd import manage"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_7ee79712","line":21,"updated":"2016-03-28 23:30:20.000000000","message":"Based on other changes since the rebase, instead of this, \"import nova.conf\" in the project imports","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":34,"context_line":"from nova.tests.unit.objects import test_network"},{"line_number":35,"context_line":"from nova.tests.unit import test_flavors"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CONF \u003d cfg.CONF"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"class FixedIpCommandsTestCase(test.TestCase):"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_7e20374a","line":37,"updated":"2016-03-28 23:30:20.000000000","message":"Based on the other changes since the rebase, this should be \"CONF \u003d nova.conf.CONF\"","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":835,"context_line":"    def test_map_cell0_default_database(self):"},{"line_number":836,"context_line":"        CONF.set_default(\u0027connection\u0027,"},{"line_number":837,"context_line":"                         \u0027fake://netloc/nova_api\u0027,"},{"line_number":838,"context_line":"                         group\u003d\u0027database\u0027)"},{"line_number":839,"context_line":"        ctxt \u003d context.RequestContext()"},{"line_number":840,"context_line":"        self.commands.map_cell0()"},{"line_number":841,"context_line":"        cell_mapping \u003d objects.CellMapping.get_by_uuid(ctxt,"}],"source_content_type":"text/x-python","patch_set":17,"id":"ba0121b8_beadaf8a","line":838,"range":{"start_line":838,"start_character":25,"end_line":838,"end_character":41},"updated":"2016-03-28 23:30:20.000000000","message":"group is api_database for the API database connection","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"}],"releasenotes/notes/create-cell0-mapping-60a9229c223a7516.yaml":[{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"06e12398fdfcf8acb5e521242b09519e2989e8bc","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    ``nova-manage cell_v2 map_cell0`` is now available."},{"line_number":5,"context_line":"    Creates a cell mapping for cell0, which is used for"},{"line_number":6,"context_line":"    storing instances that cannot be scheduled to any"},{"line_number":7,"context_line":"    cell."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"bae84128_46bc7f6c","line":7,"updated":"2016-02-19 21:12:54.000000000","message":"You should probably call out the optional parameter.","commit_id":"8f361841e644f3f9746dc234239432032c22a1f5"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"81c45aef3bfe41753c5f852e64ea470c5581883b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - A new nova-manage command"},{"line_number":4,"context_line":"    \u0027nova-manage cell_v2 map_cell0\u0027 is now available."},{"line_number":5,"context_line":"    Creates a cell mapping for cell0, which is used for"}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9aed3d3a_a364d9b8","line":2,"updated":"2016-02-29 17:53:22.000000000","message":"Sylvain can correct me if I\u0027m wrong, but I think this will fall under upgrades. It is necessary to do at some point as part of the upgrade process, though there\u0027s no deadline yet as to when it must be done.","commit_id":"3f4b6166a645446dcf1bfd861345f58b666a20c0"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"4ebdf7057645bfb384efaa9756fadf236fb6d567","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - A new nova-manage command"},{"line_number":4,"context_line":"    \u0027nova-manage cell_v2 map_cell0\u0027 is now available."},{"line_number":5,"context_line":"    Creates a cell mapping for cell0, which is used for"}],"source_content_type":"text/x-yaml","patch_set":12,"id":"9aed3d3a_d7326ef1","line":2,"in_reply_to":"9aed3d3a_a364d9b8","updated":"2016-02-29 20:23:22.000000000","message":"I will update to \u0027upgrade\u0027. I had seen the comment on the cells manage command and thought that this might be the case.","commit_id":"3f4b6166a645446dcf1bfd861345f58b666a20c0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b8658a8a66aced4c485739abae820b9b38547524","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    \u0027nova-manage cell_v2 map_cell0\u0027 is now available."},{"line_number":5,"context_line":"    Creates a cell mapping for cell0, which is used for"},{"line_number":6,"context_line":"    storing instances that cannot be scheduled to any"},{"line_number":7,"context_line":"    cell."}],"source_content_type":"text/x-yaml","patch_set":15,"id":"fa0719c6_f13855a2","line":7,"updated":"2016-03-23 21:59:28.000000000","message":"I\u0027m not sure but I think we might be holding off on signaling existence of the new cells v2 nova-manage commands until they are required to be used during an upgrade","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"5b6fc8f5c270d456c29cab117264dce0570897c2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    \u0027nova-manage cell_v2 map_cell0\u0027 is now available."},{"line_number":5,"context_line":"    Creates a cell mapping for cell0, which is used for"},{"line_number":6,"context_line":"    storing instances that cannot be scheduled to any"},{"line_number":7,"context_line":"    cell."}],"source_content_type":"text/x-yaml","patch_set":15,"id":"ba0121b8_cea55cb6","line":7,"in_reply_to":"fa0719c6_f13855a2","updated":"2016-03-28 20:10:09.000000000","message":"Not sure if that applies as this patch is going in to Newton, but we still might not be ready for upgrades in newton. Will keep an eye out.","commit_id":"c8eede39edcb9df0802ea743c506fa386ec26735"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"179498fcc57971de2bd53fa65ec2ad9b23befbe7","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    A new nova-manage command \u0027nova-manage cell_v2 map_cell0\u0027 is"},{"line_number":5,"context_line":"    now available. Creates a cell mapping for cell0, which is used for"},{"line_number":6,"context_line":"    storing instances that cannot be scheduled to any cell."}],"source_content_type":"text/x-yaml","patch_set":17,"id":"ba0121b8_3eab5f8b","line":6,"updated":"2016-03-28 23:30:20.000000000","message":"We need to double check if we\u0027re holding off on signaling these commands to users until they are actually needed. I understand we can assume code that schedules to cell0 will land in Newton, but I was wondering if we should wait until after the patch merges to alert users to this command.","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"db13ef13b708a0984f9b1b0503c3ce2c27489f3b","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    A new nova-manage command \u0027nova-manage cell_v2 map_cell0\u0027 is"},{"line_number":5,"context_line":"    now available. Creates a cell mapping for cell0, which is used for"},{"line_number":6,"context_line":"    storing instances that cannot be scheduled to any cell."}],"source_content_type":"text/x-yaml","patch_set":17,"id":"ba0121b8_1a4e356f","line":6,"in_reply_to":"ba0121b8_0fd1d957","updated":"2016-03-29 18:38:42.000000000","message":"Ok, compromise. I will add to this release note. Something along the lines of \"This command only needs to be called when upgrading to CellsV2.\".","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"d01946732040be854f320eeef8fc613628fe7d80","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    A new nova-manage command \u0027nova-manage cell_v2 map_cell0\u0027 is"},{"line_number":5,"context_line":"    now available. Creates a cell mapping for cell0, which is used for"},{"line_number":6,"context_line":"    storing instances that cannot be scheduled to any cell."}],"source_content_type":"text/x-yaml","patch_set":17,"id":"ba0121b8_0fd1d957","line":6,"in_reply_to":"ba0121b8_3eab5f8b","updated":"2016-03-29 18:24:07.000000000","message":"I can go either way on this. On the other patch where we pulled the releasenote there were concerns about it being too early for most users to run that command, in this case I don\u0027t think there\u0027s any harm in users using this.\n\nI lean towards leaving this in and then later adding a releasenote to indicate at which point the command must be run by.","commit_id":"fcd2f35a25d033181e9936b5b4291722ffd25390"}]}
