)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c17ca5284fb48969a426f86e2e8af830f7384f95","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Claudiu Belu \u003ccbelu@cloudbasesolutions.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-02-26 22:15:33 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Deprecate HyperVNeutronPlugin"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"HyperVNeutronPlugin is hereby deprecated, as it is outdated"},{"line_number":10,"context_line":"and it is no longer needed, thanks to Ml2Plugin. All of its"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"ba7be1f8_1d81bf4d","line":7,"updated":"2015-02-26 22:23:18.000000000","message":"This is the removal of hyper-v plugin. The commit summary needs to be updated.","commit_id":"96965c3ac473bed67caf1553401f37dced316ecf"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c17ca5284fb48969a426f86e2e8af830f7384f95","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Deprecate HyperVNeutronPlugin"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"HyperVNeutronPlugin is hereby deprecated, as it is outdated"},{"line_number":10,"context_line":"and it is no longer needed, thanks to Ml2Plugin. All of its"},{"line_number":11,"context_line":"users should switch to Ml2Plugin and use the migration"},{"line_number":12,"context_line":"script, if necessary."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"ba7be1f8_5d7b377b","line":9,"updated":"2015-02-26 22:23:18.000000000","message":"Not deprecation too.","commit_id":"96965c3ac473bed67caf1553401f37dced316ecf"}],"etc/neutron/plugins/hyperv/hyperv_neutron_plugin.ini":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"96fd21e92256876bbb2b0db1bdff06a9713503ab","unresolved":false,"context_lines":[{"line_number":1,"context_line":"[hyperv]"},{"line_number":2,"context_line":"# (StrOpt) Type of network to allocate for tenant networks. The"},{"line_number":3,"context_line":"# default value \u0027local\u0027 is useful only for single-box testing and"},{"line_number":4,"context_line":"# provides no connectivity between hosts. You MUST either change this"}],"source_content_type":"text/x-properties","patch_set":16,"id":"ba7be1f8_dbff90a9","side":"PARENT","line":1,"updated":"2015-03-03 14:17:32.000000000","message":"In the decomposition spec it was suggested that the config files remain in neutron. Are you sure that you want to delete this?","commit_id":"38499d1a67c666f0a38bc78e76d101f0d7ceef8f"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"92f6dcabb4012a8aee6b27c7b5da7a00f21b8d8a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"[hyperv]"},{"line_number":2,"context_line":"# (StrOpt) Type of network to allocate for tenant networks. The"},{"line_number":3,"context_line":"# default value \u0027local\u0027 is useful only for single-box testing and"},{"line_number":4,"context_line":"# provides no connectivity between hosts. You MUST either change this"}],"source_content_type":"text/x-properties","patch_set":16,"id":"9a80dd14_f2e87a7e","side":"PARENT","line":1,"in_reply_to":"ba7be1f8_dbff90a9","updated":"2015-03-04 21:01:46.000000000","message":"this has nothing to do with the decomp effort. It\u0027s a removal process of a deprecated plugin.","commit_id":"38499d1a67c666f0a38bc78e76d101f0d7ceef8f"}],"neutron/db/migration/alembic_migrations/other_plugins_init_ops.py":[{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"25aa67eaad9871b15592b7b8126fd2dfde53844d","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"def upgrade():"},{"line_number":27,"context_line":"    # hyper-v"},{"line_number":28,"context_line":"    op.create_table("},{"line_number":29,"context_line":"        \u0027hyperv_vlan_allocations\u0027,"},{"line_number":30,"context_line":"        sa.Column(\u0027physical_network\u0027, sa.String(length\u003d64), nullable\u003dFalse),"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_6b292c89","side":"PARENT","line":27,"updated":"2015-02-06 08:50:48.000000000","message":"I don\u0027t think that this should be done in this way. Another migration should be created to drop this tables from db.","commit_id":"94965f7394f27cd1218ac483be23ba25e7f1cce4"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"9b7aeaebca17bf6ef24d1c3ee79491f1ad243bdc","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"def upgrade():"},{"line_number":27,"context_line":"    # hyper-v"},{"line_number":28,"context_line":"    op.create_table("},{"line_number":29,"context_line":"        \u0027hyperv_vlan_allocations\u0027,"},{"line_number":30,"context_line":"        sa.Column(\u0027physical_network\u0027, sa.String(length\u003d64), nullable\u003dFalse),"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_14c28b52","side":"PARENT","line":27,"in_reply_to":"da86d52c_60cdc230","updated":"2015-02-06 13:57:33.000000000","message":"Existing migrations should not be changed. If we need to change db scheme somehow we need to create another migration that will do such changes. If we want to save data from tables, it should be moved.\n\nI really don\u0027t like the idea, that people that do upgrade to Kilo from Juno will have some tables from nowhere.\n\nFor example, there are migrations for removing mlnx plugin https://github.com/openstack/neutron/blob/master/neutron/db/migration/alembic_migrations/versions/28c0ffb8ebbd_remove_mlnx_plugin.py and cisco nexus plugin https://github.com/openstack/neutron/blob/master/neutron/db/migration/alembic_migrations/versions/1680e1f0c4dc_remove_cisco_nexus_plugin.py","commit_id":"94965f7394f27cd1218ac483be23ba25e7f1cce4"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"0d74a0a6f105fa4495baba3f0786d99f07462c44","unresolved":false,"context_lines":[{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"def upgrade():"},{"line_number":27,"context_line":"    # hyper-v"},{"line_number":28,"context_line":"    op.create_table("},{"line_number":29,"context_line":"        \u0027hyperv_vlan_allocations\u0027,"},{"line_number":30,"context_line":"        sa.Column(\u0027physical_network\u0027, sa.String(length\u003d64), nullable\u003dFalse),"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_60cdc230","side":"PARENT","line":27,"in_reply_to":"da86d52c_6b292c89","updated":"2015-02-06 13:35:47.000000000","message":"hm from what I can see, migrate_to_ml2 drops these tables for Icehouse but not for Juno.\n\nSo, I\u0027m thinking tat this removal should still be done, since those tables are no longer needed and it will just be dead code / tables, plus, the Hyper-V model will no longer exist, neither will the consumer (HyperVNeutronPlugin).\n\nAlso, I\u0027m not sure about having a migration to drop these tables from db... users might still have data inside those tables, which will be lost, especially if they did not get to run the migrate_to_ml2 script.","commit_id":"94965f7394f27cd1218ac483be23ba25e7f1cce4"}],"neutron/db/migration/alembic_migrations/versions/2b801560a332_remove_hypervneutronplugin_tables.py":[{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c17ca5284fb48969a426f86e2e8af830f7384f95","unresolved":false,"context_lines":[{"line_number":61,"context_line":"    binding[\u0027segmentation_id\u0027] \u003d segmentation_id"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"def upgrade():"},{"line_number":65,"context_line":"    op.execute(\u0027INSERT INTO ml2_vlan_allocations \u0027"},{"line_number":66,"context_line":"               \u0027SELECT physical_network, vlan_id, allocated \u0027"},{"line_number":67,"context_line":"               \u0027FROM hyperv_vlan_allocations \u0027"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_9d24cf0f","line":64,"updated":"2015-02-26 22:23:18.000000000","message":"I am confused because the migration script from hyper-v to Ml2 is proposed in the dependent review but this db migration also has the same logic. I am okay with this since it is safe even if users run db migration without checking hyper-v plugin removal. One concern is that we need to keep both logic same.","commit_id":"96965c3ac473bed67caf1553401f37dced316ecf"},{"author":{"_account_id":841,"name":"Akihiro Motoki","email":"amotoki@gmail.com","username":"amotoki"},"change_message_id":"c17ca5284fb48969a426f86e2e8af830f7384f95","unresolved":false,"context_lines":[{"line_number":87,"context_line":"    op.drop_table(\u0027hyperv_network_bindings\u0027)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"def downgrade():"},{"line_number":91,"context_line":"    op.create_table("},{"line_number":92,"context_line":"        \u0027hyperv_vlan_allocations\u0027,"},{"line_number":93,"context_line":"        sa.Column(\u0027physical_network\u0027, sa.String(length\u003d64), nullable\u003dFalse),"}],"source_content_type":"text/x-python","patch_set":6,"id":"ba7be1f8_bd68b322","line":90,"updated":"2015-02-26 22:23:18.000000000","message":"upgrade() migrates DB data from hyper-v table to ML2 table, but downgrade() does not do the reverse db migration. Don\u0027t we need it?","commit_id":"96965c3ac473bed67caf1553401f37dced316ecf"}],"neutron/db/migration/models/frozen.py":[{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"25aa67eaad9871b15592b7b8126fd2dfde53844d","unresolved":false,"context_lines":[{"line_number":994,"context_line":"    instance_id \u003d sa.Column(sa.String(255), nullable\u003dFalse)"},{"line_number":995,"context_line":""},{"line_number":996,"context_line":""},{"line_number":997,"context_line":"#neutron/plugins/hyperv/model.py"},{"line_number":998,"context_line":"#class was renamed from VlanAllocation to HyperVVlanAllocation"},{"line_number":999,"context_line":"class HyperVVlanAllocation(BASEV2):"},{"line_number":1000,"context_line":"    __tablename__ \u003d \u0027hyperv_vlan_allocations\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_cb2218a2","side":"PARENT","line":997,"updated":"2015-02-06 08:50:48.000000000","message":"This file should not be modified.","commit_id":"94965f7394f27cd1218ac483be23ba25e7f1cce4"},{"author":{"_account_id":7249,"name":"Ann Taraday","email":"akamyshnikova@mirantis.com","username":"AKamyshnikova"},"change_message_id":"9b7aeaebca17bf6ef24d1c3ee79491f1ad243bdc","unresolved":false,"context_lines":[{"line_number":994,"context_line":"    instance_id \u003d sa.Column(sa.String(255), nullable\u003dFalse)"},{"line_number":995,"context_line":""},{"line_number":996,"context_line":""},{"line_number":997,"context_line":"#neutron/plugins/hyperv/model.py"},{"line_number":998,"context_line":"#class was renamed from VlanAllocation to HyperVVlanAllocation"},{"line_number":999,"context_line":"class HyperVVlanAllocation(BASEV2):"},{"line_number":1000,"context_line":"    __tablename__ \u003d \u0027hyperv_vlan_allocations\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_1471ab0b","side":"PARENT","line":997,"in_reply_to":"da86d52c_c08bcec0","updated":"2015-02-06 13:57:33.000000000","message":"db healing migration is based on this file.\n\nThe basic idea of migrations is having all changes one after another, so migration should always rely on one exact content.","commit_id":"94965f7394f27cd1218ac483be23ba25e7f1cce4"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"0d74a0a6f105fa4495baba3f0786d99f07462c44","unresolved":false,"context_lines":[{"line_number":994,"context_line":"    instance_id \u003d sa.Column(sa.String(255), nullable\u003dFalse)"},{"line_number":995,"context_line":""},{"line_number":996,"context_line":""},{"line_number":997,"context_line":"#neutron/plugins/hyperv/model.py"},{"line_number":998,"context_line":"#class was renamed from VlanAllocation to HyperVVlanAllocation"},{"line_number":999,"context_line":"class HyperVVlanAllocation(BASEV2):"},{"line_number":1000,"context_line":"    __tablename__ \u003d \u0027hyperv_vlan_allocations\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_c08bcec0","side":"PARENT","line":997,"in_reply_to":"da86d52c_cb2218a2","updated":"2015-02-06 13:35:47.000000000","message":"I get the meaning of frozen.. but why not? :)\n\nThe neutron/plugins/hyperv/model.py file is being removed, so those tables represent False data. Also, its consumers (HyperVNeutronPlugin) will be removed, so it will just be dead code.","commit_id":"94965f7394f27cd1218ac483be23ba25e7f1cce4"}],"neutron/plugins/hyperv/model.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"96fd21e92256876bbb2b0db1bdff06a9713503ab","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2013 Cloudbase Solutions SRL"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":16,"id":"ba7be1f8_3bd98c57","side":"PARENT","line":1,"updated":"2015-03-03 14:17:32.000000000","message":"the db model should also be in neutron","commit_id":"38499d1a67c666f0a38bc78e76d101f0d7ceef8f"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"92f6dcabb4012a8aee6b27c7b5da7a00f21b8d8a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2013 Cloudbase Solutions SRL"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":16,"id":"9a80dd14_92f9fe4f","side":"PARENT","line":1,"in_reply_to":"ba7be1f8_3bd98c57","updated":"2015-03-04 21:01:46.000000000","message":"ditto","commit_id":"38499d1a67c666f0a38bc78e76d101f0d7ceef8f"}]}
