)]}'
{"neutron/db/migration/alembic_migrations/versions/CONTRACT_HEAD":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"8e96b9d6539e0e0c4f039d9c4a79242806947434","unresolved":true,"context_lines":[{"line_number":1,"context_line":"8df53b0d2c0e"}],"source_content_type":"application/octet-stream","patch_set":4,"id":"e2aa2cee_86c1495d","line":1,"range":{"start_line":1,"start_character":0,"end_line":1,"end_character":12},"updated":"2021-03-30 07:20:23.000000000","message":"ditto: we don\u0027t do DB contractions anymore, only expansions.","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"}],"neutron/db/migration/alembic_migrations/versions/wallaby/contract/8df53b0d2c0e_increase_tag_elements_from_60_to_255_.py":[{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"5c83bf820dc0d9383f0ce12d1027f11fe852d2c4","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f8521f7a_f4799308","updated":"2021-03-30 04:40:19.000000000","message":"Should this be moved to neutron/db/migration/alembic_migrations/versions/xena/contract/8df53b0d2c0e_increase_tag_elements_from_60_to_255_.py ?","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"3fd53eeb56f611d060bc879621eec3e0403ba2e7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"eaecb834_10f4b0d5","in_reply_to":"a0459244_6f62da2a","updated":"2021-03-30 08:10:35.000000000","message":"Done","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"8e96b9d6539e0e0c4f039d9c4a79242806947434","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a0459244_6f62da2a","in_reply_to":"f8521f7a_f4799308","updated":"2021-03-30 07:20:23.000000000","message":"Yes, you need to move to Xena","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"8e96b9d6539e0e0c4f039d9c4a79242806947434","unresolved":true,"context_lines":[{"line_number":36,"context_line":"TABLE \u003d \u0027tags\u0027"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"def upgrade():"},{"line_number":40,"context_line":"    op.alter_column(TABLE, \u0027tag\u0027, existing_type\u003dsa.String(60),"},{"line_number":41,"context_line":"                    type_\u003dsa.String(255), existing_nullable\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":4,"id":"c44ef98f_d78660ed","line":39,"updated":"2021-03-30 07:20:23.000000000","message":"This is literally an expansion, moving from 60 to 255 chars.\n\nAnd, more important, Neutron does not support DB contractions since Ocata. You need to move this to \"expand\".","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"3fd53eeb56f611d060bc879621eec3e0403ba2e7","unresolved":false,"context_lines":[{"line_number":36,"context_line":"TABLE \u003d \u0027tags\u0027"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"def upgrade():"},{"line_number":40,"context_line":"    op.alter_column(TABLE, \u0027tag\u0027, existing_type\u003dsa.String(60),"},{"line_number":41,"context_line":"                    type_\u003dsa.String(255), existing_nullable\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":4,"id":"0c93755d_e10eeafa","line":39,"in_reply_to":"c44ef98f_d78660ed","updated":"2021-03-30 08:10:35.000000000","message":"ok, I moved it.\n\nI keep the revision has that I got from running ``neutron-db-manage revision -m \"description of revision\" --contract``, but changed the `down_revision` to what was in neutron/db/migration/alembic_migrations/versions/EXPAND_HEAD","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"}],"neutron/db/migration/alembic_migrations/versions/xena/expand/8df53b0d2c0e_increase_tag_elements_from_60_to_255_.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"72ec3ba66b2586c5facccc6c038e525539addb8c","unresolved":true,"context_lines":[{"line_number":31,"context_line":"down_revision \u003d \u00276135a7bd4425\u0027"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# milestone identifier, used by neutron-db-manage"},{"line_number":34,"context_line":"neutron_milestone \u003d [migration.XENA]"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"TABLE \u003d \u0027tags\u0027"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"23a38afe_0b5bc443","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":1},"updated":"2021-03-30 08:42:34.000000000","message":"We set this milestone when the branch (Xena in this case) has been released (in 6 months) and pointing to the last DB revision.","commit_id":"f0a22855741ec515373188cac7446f036ba28119"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"e12e904cc3b45390605d7bdc7f24276e88ade777","unresolved":false,"context_lines":[{"line_number":31,"context_line":"down_revision \u003d \u00276135a7bd4425\u0027"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# milestone identifier, used by neutron-db-manage"},{"line_number":34,"context_line":"neutron_milestone \u003d [migration.XENA]"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"TABLE \u003d \u0027tags\u0027"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"c4564a68_6c1e4f5e","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":1},"in_reply_to":"23a38afe_0b5bc443","updated":"2021-03-30 08:46:41.000000000","message":"ok, I removed this and the import from neutron.db above.","commit_id":"f0a22855741ec515373188cac7446f036ba28119"}],"neutron/db/models/tag.py":[{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"7308de36a0d56d1fa39db06ea64b65618e6e1d8c","unresolved":true,"context_lines":[{"line_number":24,"context_line":"        sa.BigInteger().with_variant(sa.Integer(), \u0027sqlite\u0027),"},{"line_number":25,"context_line":"        sa.ForeignKey(standard_attr.StandardAttribute.id, ondelete\u003d\"CASCADE\"),"},{"line_number":26,"context_line":"        nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":27,"context_line":"    tag \u003d sa.Column(sa.String(255), nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":28,"context_line":"    standard_attr \u003d orm.relationship("},{"line_number":29,"context_line":"        \u0027StandardAttribute\u0027, load_on_pending\u003dTrue,"},{"line_number":30,"context_line":"        backref\u003dorm.backref(\u0027tags\u0027, lazy\u003d\u0027subquery\u0027, viewonly\u003dTrue))"}],"source_content_type":"text/x-python","patch_set":6,"id":"dc34d11a_b3d8f982","line":27,"range":{"start_line":27,"start_character":30,"end_line":27,"end_character":33},"updated":"2021-03-30 09:33:18.000000000","message":"Nit: can we use the difination \"MAX_TAG_LEN \u003d 255\" you added in this patch here?","commit_id":"35c7999ebd25af4d8f0d6c82455bcf93c6538c15"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"2f919391c12cd2d3b254ac7340bedc0e0b1d65a0","unresolved":true,"context_lines":[{"line_number":24,"context_line":"        sa.BigInteger().with_variant(sa.Integer(), \u0027sqlite\u0027),"},{"line_number":25,"context_line":"        sa.ForeignKey(standard_attr.StandardAttribute.id, ondelete\u003d\"CASCADE\"),"},{"line_number":26,"context_line":"        nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":27,"context_line":"    tag \u003d sa.Column(sa.String(255), nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":28,"context_line":"    standard_attr \u003d orm.relationship("},{"line_number":29,"context_line":"        \u0027StandardAttribute\u0027, load_on_pending\u003dTrue,"},{"line_number":30,"context_line":"        backref\u003dorm.backref(\u0027tags\u0027, lazy\u003d\u0027subquery\u0027, viewonly\u003dTrue))"}],"source_content_type":"text/x-python","patch_set":6,"id":"8c5bbf6a_a20d679a","line":27,"range":{"start_line":27,"start_character":30,"end_line":27,"end_character":33},"in_reply_to":"796a0fe7_d0adef54","updated":"2021-03-31 10:08:25.000000000","message":"I think it can be done as follow up patch","commit_id":"35c7999ebd25af4d8f0d6c82455bcf93c6538c15"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"72f7f6320c56a4ee12cb8a1f06f5dc37689345f0","unresolved":true,"context_lines":[{"line_number":24,"context_line":"        sa.BigInteger().with_variant(sa.Integer(), \u0027sqlite\u0027),"},{"line_number":25,"context_line":"        sa.ForeignKey(standard_attr.StandardAttribute.id, ondelete\u003d\"CASCADE\"),"},{"line_number":26,"context_line":"        nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":27,"context_line":"    tag \u003d sa.Column(sa.String(255), nullable\u003dFalse, primary_key\u003dTrue)"},{"line_number":28,"context_line":"    standard_attr \u003d orm.relationship("},{"line_number":29,"context_line":"        \u0027StandardAttribute\u0027, load_on_pending\u003dTrue,"},{"line_number":30,"context_line":"        backref\u003dorm.backref(\u0027tags\u0027, lazy\u003d\u0027subquery\u0027, viewonly\u003dTrue))"}],"source_content_type":"text/x-python","patch_set":6,"id":"796a0fe7_d0adef54","line":27,"range":{"start_line":27,"start_character":30,"end_line":27,"end_character":33},"in_reply_to":"dc34d11a_b3d8f982","updated":"2021-03-31 06:59:38.000000000","message":"+1","commit_id":"35c7999ebd25af4d8f0d6c82455bcf93c6538c15"}],"neutron/extensions/tagging.py":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"3c5b1226f99456f7273d9662852819853eea8e68","unresolved":true,"context_lines":[{"line_number":35,"context_line":"TAGS_ANY \u003d TAGS + \u0027-any\u0027"},{"line_number":36,"context_line":"NOT_TAGS \u003d \u0027not-\u0027 + TAGS"},{"line_number":37,"context_line":"NOT_TAGS_ANY \u003d NOT_TAGS + \u0027-any\u0027"},{"line_number":38,"context_line":"MAX_TAG_LEN \u003d 255"},{"line_number":39,"context_line":"TAG_PLUGIN_TYPE \u003d \u0027TAG\u0027"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"TAG_SUPPORTED_RESOURCES \u003d standard_attr.get_tag_resource_parent_map()"}],"source_content_type":"text/x-python","patch_set":4,"id":"21944e6f_8e7812fc","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":17},"updated":"2021-03-30 05:37:38.000000000","message":"Not sure if we need a new shim (or full extension with 255 as max length) extension for it for API discoverability, or not.","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"8e96b9d6539e0e0c4f039d9c4a79242806947434","unresolved":true,"context_lines":[{"line_number":35,"context_line":"TAGS_ANY \u003d TAGS + \u0027-any\u0027"},{"line_number":36,"context_line":"NOT_TAGS \u003d \u0027not-\u0027 + TAGS"},{"line_number":37,"context_line":"NOT_TAGS_ANY \u003d NOT_TAGS + \u0027-any\u0027"},{"line_number":38,"context_line":"MAX_TAG_LEN \u003d 255"},{"line_number":39,"context_line":"TAG_PLUGIN_TYPE \u003d \u0027TAG\u0027"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"TAG_SUPPORTED_RESOURCES \u003d standard_attr.get_tag_resource_parent_map()"}],"source_content_type":"text/x-python","patch_set":4,"id":"746869c2_e4e1da7f","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":17},"in_reply_to":"21944e6f_8e7812fc","updated":"2021-03-30 07:20:23.000000000","message":"That affects to the DB model, not the OVO (or the blob transmitted via RPC). I don\u0027t think we strictly need an extension but document this change.","commit_id":"d42a78f15c051ce93c3d924d461a5b30f22633ac"}]}
