)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6f15b713fd9f8c20b5d52dea7c89c235adad777f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Make request_spec.spec MediumText"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"request_spec.spec.instance_group.members can get large and overrun a"},{"line_number":10,"context_line":"TEXT column. This patches changes it to MEDIUMTEXT."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6bf0fa19b72887803e77b66698587c2108c9372a"},{"line_number":13,"context_line":"Co-Authored-By: Matt \u0027Credit Hog\u0027 Riedemann \u003cmriedem.os@gmail.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_c8cb0870","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":51},"updated":"2017-12-14 17:29:40.000000000","message":"If you want, it would also be nice to give a simple example - the request_spec.spec contains a serialized instance and the instances.user_data column itself is a mediumtext, so right there we can blow up the request spec with the instance user_data alone.","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4aeb4f9a59e5123f1a7422958de05bc89cb409f0","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Make request_spec.spec MediumText"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"request_spec.spec.instance_group.members can get large and overrun a"},{"line_number":10,"context_line":"TEXT column. This patches changes it to MEDIUMTEXT."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6bf0fa19b72887803e77b66698587c2108c9372a"},{"line_number":13,"context_line":"Co-Authored-By: Matt \u0027Credit Hog\u0027 Riedemann \u003cmriedem.os@gmail.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_3e93ce51","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":51},"in_reply_to":"df87a7cf_a393475c","updated":"2017-12-14 18:36:49.000000000","message":"The full instance is serialized within the spec column.","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"09a5c30c7f4771de7ca0b1ec9c32da06fed3c84f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Make request_spec.spec MediumText"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"request_spec.spec.instance_group.members can get large and overrun a"},{"line_number":10,"context_line":"TEXT column. This patches changes it to MEDIUMTEXT."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6bf0fa19b72887803e77b66698587c2108c9372a"},{"line_number":13,"context_line":"Co-Authored-By: Matt \u0027Credit Hog\u0027 Riedemann \u003cmriedem.os@gmail.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_a393475c","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":51},"in_reply_to":"df87a7cf_c8cb0870","updated":"2017-12-14 18:10:30.000000000","message":"It contains instance_uuid, but I don\u0027t see a full instance anywhere. In any case, I\u0027ve modified the text to be clearer.","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bcd2e8bb70759ea5e63ef1a3e8eca50d9a81ae17","unresolved":false,"context_lines":[{"line_number":10,"context_line":"TEXT column. This patches changes it to MEDIUMTEXT."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6bf0fa19b72887803e77b66698587c2108c9372a"},{"line_number":13,"context_line":"Co-Authored-By: Matt \u0027Credit Hog\u0027 Riedemann \u003cmriedem.os@gmail.com\u003e"},{"line_number":14,"context_line":"Closes-bug: 1738094"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_28bb94e5","line":13,"updated":"2017-12-14 17:28:39.000000000","message":"ha, you can remove this","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"09a5c30c7f4771de7ca0b1ec9c32da06fed3c84f","unresolved":false,"context_lines":[{"line_number":10,"context_line":"TEXT column. This patches changes it to MEDIUMTEXT."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I6bf0fa19b72887803e77b66698587c2108c9372a"},{"line_number":13,"context_line":"Co-Authored-By: Matt \u0027Credit Hog\u0027 Riedemann \u003cmriedem.os@gmail.com\u003e"},{"line_number":14,"context_line":"Closes-bug: 1738094"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df87a7cf_c390cb51","line":13,"in_reply_to":"df87a7cf_28bb94e5","updated":"2017-12-14 18:10:30.000000000","message":";)","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"}],"nova/db/sqlalchemy/api_migrations/migrate_repo/versions/051_request_spec_spec_mediumtext.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d171192d09b349fd804f6c555a9f87274126e53c","unresolved":false,"context_lines":[{"line_number":21,"context_line":"    meta.bind \u003d migrate_engine"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    request_spec \u003d Table(\u0027request_spec\u0027, meta, autoload\u003dTrue)"},{"line_number":24,"context_line":"    request_spec.c.spec.alter(type\u003dapi_models.MediumText())"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_48885870","line":24,"range":{"start_line":24,"start_character":4,"end_line":24,"end_character":59},"updated":"2017-12-14 17:20:48.000000000","message":"I think there might be a way to test the type, not sure if that\u0027s necessary or not.\n\nBut I think you can do something like:\n\nif request_spec.c.spec.type !\u003d api_models.MediumText:\n   .. alter\n\nBut if an alter statement is idempotent then don\u0027t bother.","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"09a5c30c7f4771de7ca0b1ec9c32da06fed3c84f","unresolved":false,"context_lines":[{"line_number":21,"context_line":"    meta.bind \u003d migrate_engine"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    request_spec \u003d Table(\u0027request_spec\u0027, meta, autoload\u003dTrue)"},{"line_number":24,"context_line":"    request_spec.c.spec.alter(type\u003dapi_models.MediumText())"}],"source_content_type":"text/x-python","patch_set":1,"id":"df87a7cf_63753ffa","line":24,"range":{"start_line":24,"start_character":4,"end_line":24,"end_character":59},"in_reply_to":"df87a7cf_48885870","updated":"2017-12-14 18:10:30.000000000","message":"I looked around existing migrations, and it looks like simpler stuff like changing Nullable is done without checking anything first [1] [2], but changing column size warrants a check [3]. Done.\n\n[1] https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/migrate_repo/versions/247_nullable_mismatch.py#L27https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/migrate_repo/versions/278_remove_service_fk_in_compute_nodes.py#L53\n[3] https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/migrate_repo/versions/227_fix_project_user_quotas_resource_length.py#L23","commit_id":"c0ea9ef8e81f433b3d44354cea6f38a62316af9a"}],"nova/db/sqlalchemy/api_migrations/migrate_repo/versions/052_request_specs_spec_mediumtext.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"65818db5dd492c17a4533439d678436526ebce37","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    request_specs \u003d Table(\u0027request_specs\u0027, meta, autoload\u003dTrue)"},{"line_number":24,"context_line":"    if request_specs.c.spec.type !\u003d api_models.MediumText():"},{"line_number":25,"context_line":"        request_specs.c.spec.alter(type\u003dapi_models.MediumText())"}],"source_content_type":"text/x-python","patch_set":3,"id":"df87a7cf_3bec298e","line":25,"range":{"start_line":25,"start_character":28,"end_line":25,"end_character":64},"updated":"2017-12-15 14:41:32.000000000","message":"I have to admit I\u0027m not a SQL guru, in particular for MySQL engines like InnoDB, but looks like altering a col for changing it to MEDIUMTEXT is not a performance impact as per my Google skills and Mr. Jay Pipes expertise.\n\nThe only concerns I\u0027m able to see are about client memory usage (because the col would be bigger in memory) but I don\u0027t see that a big problem for us","commit_id":"40d74339082fe0eb1ce9216e89cf6e65a39e6968"}]}
