)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9101,"name":"wanghong","email":"reviewwanghong@126.com","username":"wanghong"},"change_message_id":"5e09e0aa759b4b2e09c0cc68fcf13c912c00fabf","unresolved":false,"context_lines":[{"line_number":10,"context_line":"convention used at automated index naming. Added a migration script with"},{"line_number":11,"context_line":"the correct index name."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Partial-Bug: #1397899"},{"line_number":14,"context_line":"Change-Id: I944b7d2db294af9e30f01ef16925e20265d19270"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3a961159_7c4b732b","line":13,"updated":"2014-12-09 03:45:00.000000000","message":"Wrong related bug.","commit_id":"d4bc7dca4cdf606e5bd2b1dc6a5a20486911be8c"},{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"1dd05c3f781b014fb76e0dd6450e72db3911b4fd","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The index added in the 54 version was named inappropriate to the naming"},{"line_number":10,"context_line":"convention used at automated index naming. Added a migration script with"},{"line_number":11,"context_line":"the correct index name."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Co-Authored-By: Victor Sergeyev \u003cvsergeyev@mirantis.com\u003e"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"baa041b7_a7abecd5","line":11,"updated":"2015-04-03 00:54:52.000000000","message":"is there a document that says what the naming convention is supposed to be? Otherwise, how do we know that it\u0027s incorrect?","commit_id":"dac8980a816a0b7bda7af6f22528d9df178a861a"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"d49ad02040993ccce67340868734d72df27499ea","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The index added in the 54 version was named inappropriate to the naming"},{"line_number":10,"context_line":"convention used at automated index naming. Added a migration script with"},{"line_number":11,"context_line":"the correct index name."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Co-Authored-By: Victor Sergeyev \u003cvsergeyev@mirantis.com\u003e"},{"line_number":14,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":15,"id":"baa041b7_98c9627b","line":11,"in_reply_to":"baa041b7_a7abecd5","updated":"2015-04-03 07:59:41.000000000","message":"hm, I didn\u0027t found such convention... So I\u0027ll simplify this patch a bit :)","commit_id":"dac8980a816a0b7bda7af6f22528d9df178a861a"}],"keystone/common/sql/migrate_repo/versions/062_rename_assignment_actor_index.py":[{"author":{"_account_id":7536,"name":"Ilya Pekelny","email":"ipekelny@mirantis.com","username":"I159"},"change_message_id":"0e352c3a76ebb550aa50405175b105ebe2c31621","unresolved":false,"context_lines":[{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"# This is a placeholder for Juno backports. Do not use this number for new"},{"line_number":17,"context_line":"# Kilo work. New Kilo work starts after all the placeholders."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"import sqlalchemy as sql"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_f16d1733","line":16,"updated":"2014-12-04 16:44:09.000000000","message":"I haven\u0027t noticed it twice. Now I kept it here... Will fix.","commit_id":"cc7fcd8ef1d25a89ade6ff5cfb50aa3ec0b1c75e"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"d5b7823736269fa121d72305edf32157ab944dc0","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    meta.bind \u003d migrate_engine"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    assignment \u003d sql.Table(ASSIGNMENT_TABLE, meta, autoload\u003dTrue)"},{"line_number":29,"context_line":"    idx \u003d sql.Index(\u0027ix_actor_id\u0027, assignment.c.actor_id)"},{"line_number":30,"context_line":"    # NOTE(I159): due to SQLite compatibility we can\u0027t use rename method"},{"line_number":31,"context_line":"    # because it uses ALTER statement."},{"line_number":32,"context_line":"    idx.drop(migrate_engine)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_d1f3bb06","line":29,"updated":"2014-12-04 16:13:41.000000000","message":"I have a big doubts, that this index have the same name on all another backends,","commit_id":"cc7fcd8ef1d25a89ade6ff5cfb50aa3ec0b1c75e"},{"author":{"_account_id":7536,"name":"Ilya Pekelny","email":"ipekelny@mirantis.com","username":"I159"},"change_message_id":"0e352c3a76ebb550aa50405175b105ebe2c31621","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    meta.bind \u003d migrate_engine"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    assignment \u003d sql.Table(ASSIGNMENT_TABLE, meta, autoload\u003dTrue)"},{"line_number":29,"context_line":"    idx \u003d sql.Index(\u0027ix_actor_id\u0027, assignment.c.actor_id)"},{"line_number":30,"context_line":"    # NOTE(I159): due to SQLite compatibility we can\u0027t use rename method"},{"line_number":31,"context_line":"    # because it uses ALTER statement."},{"line_number":32,"context_line":"    idx.drop(migrate_engine)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_ecc45a93","line":29,"in_reply_to":"5a890539_d1f3bb06","updated":"2014-12-04 16:44:09.000000000","message":"The name set in the previous migration  https://github.com/openstack/keystone/blob/master/keystone/common/sql/migrate_repo/versions/054_add_actor_id_index.py#L25 . But model uses different naming convention, that is the problem. Btw, I can\u0027t find how models determine index names?","commit_id":"cc7fcd8ef1d25a89ade6ff5cfb50aa3ec0b1c75e"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"40d6f86581c450a8214e39ea71b6f51f08818d92","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    meta.bind \u003d migrate_engine"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    assignment \u003d sql.Table(ASSIGNMENT_TABLE, meta, autoload\u003dTrue)"},{"line_number":29,"context_line":"    idx \u003d sql.Index(\u0027ix_actor_id\u0027, assignment.c.actor_id)"},{"line_number":30,"context_line":"    # NOTE(I159): due to SQLite compatibility we can\u0027t use rename method"},{"line_number":31,"context_line":"    # because it uses ALTER statement."},{"line_number":32,"context_line":"    idx.drop(migrate_engine)"}],"source_content_type":"text/x-python","patch_set":3,"id":"5a890539_4cc00e4a","line":29,"in_reply_to":"5a890539_ecc45a93","updated":"2014-12-04 16:46:25.000000000","message":"got it, thanks!","commit_id":"cc7fcd8ef1d25a89ade6ff5cfb50aa3ec0b1c75e"},{"author":{"_account_id":7725,"name":"David Stanek","email":"dstanek@dstanek.com","username":"dstanek"},"change_message_id":"bf40ae5c2b09b87e2e783df4eeb4241c08193e43","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import sqlalchemy as sql"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"ASSIGNMENT_TABLE \u003d \u0027assignment\u0027"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"fa81d914_9bb57ff0","line":17,"updated":"2015-01-28 22:07:23.000000000","message":"(nit) add newline","commit_id":"780c782c4a1caa8ab558a615256bfe1d4294641b"}],"keystone/common/sql/migrate_repo/versions/068_rename_assignment_actor_index.py":[{"author":{"_account_id":6486,"name":"Brant Knudson","email":"blk@acm.org","username":"blk-u"},"change_message_id":"c2867fea02b82f87b2025b0975eb95ddcb871bdc","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    assignment \u003d sql.Table(ASSIGNMENT_TABLE, meta, autoload\u003dTrue)"},{"line_number":26,"context_line":"    idx \u003d sql.Index(\u0027ix_actor_id\u0027, assignment.c.actor_id)"},{"line_number":27,"context_line":"    # NOTE(I159): due to SQLite compatibility we can\u0027t use rename method"},{"line_number":28,"context_line":"    # because it uses ALTER statement."},{"line_number":29,"context_line":"    idx.drop(migrate_engine)"},{"line_number":30,"context_line":"    new_idx \u003d sql.Index(\u0027ix_assignment_actor_id\u0027, assignment.c.actor_id)"},{"line_number":31,"context_line":"    new_idx.create(migrate_engine)"}],"source_content_type":"text/x-python","patch_set":15,"id":"baa041b7_27511c0f","line":28,"updated":"2015-04-03 00:49:10.000000000","message":"we don\u0027t really need to support sqlite since it\u0027s only for testing. Write the code so that it\u0027s correct for mysql, etc.","commit_id":"dac8980a816a0b7bda7af6f22528d9df178a861a"},{"author":{"_account_id":7491,"name":"Viktor Serhieiev","email":"viktor.sergeyev@gmail.com","username":"vsergeyev"},"change_message_id":"d49ad02040993ccce67340868734d72df27499ea","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    assignment \u003d sql.Table(ASSIGNMENT_TABLE, meta, autoload\u003dTrue)"},{"line_number":26,"context_line":"    idx \u003d sql.Index(\u0027ix_actor_id\u0027, assignment.c.actor_id)"},{"line_number":27,"context_line":"    # NOTE(I159): due to SQLite compatibility we can\u0027t use rename method"},{"line_number":28,"context_line":"    # because it uses ALTER statement."},{"line_number":29,"context_line":"    idx.drop(migrate_engine)"},{"line_number":30,"context_line":"    new_idx \u003d sql.Index(\u0027ix_assignment_actor_id\u0027, assignment.c.actor_id)"},{"line_number":31,"context_line":"    new_idx.create(migrate_engine)"}],"source_content_type":"text/x-python","patch_set":15,"id":"baa041b7_b8cae66c","line":28,"in_reply_to":"baa041b7_27511c0f","updated":"2015-04-03 07:59:41.000000000","message":"unfortunately, this still required because we run unit tests with SQLite and fill DB schema from migrations. We will be able to ignore SQLIte in migrations when patch  https://review.openstack.org/#/c/93558/ lands","commit_id":"dac8980a816a0b7bda7af6f22528d9df178a861a"}]}
