)]}'
{"nova/db/sqlalchemy/migrate_repo/versions/230_add_details_column_to_instance_actions_events.py":[{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"f51dd59351f61a4d010327b133a0b29183c5ca2d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2013 OpenStack Foundation."},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAT3%2F%2FzEk%3D","line":1,"updated":"2013-12-31 09:56:10.000000000","message":"This is not needed.\n\nhttp://openstack.10931.n7.nabble.com/Remove-vim-modelines-td21780.html","commit_id":"383ef5acfb058e13235f271c5989db7a5da6be83"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"ccefbf896507ea8ac783f7954b0d2bcda1dea653","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2013 OpenStack Foundation."},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAT3%2F%2Fy70%3D","line":1,"in_reply_to":"AAAAT3%2F%2FzEk%3D","updated":"2013-12-31 11:43:42.000000000","message":"Thanks for the pointer, will remove modelines in the nex patch","commit_id":"383ef5acfb058e13235f271c5989db7a5da6be83"},{"author":{"_account_id":7494,"name":"Guangya Liu","email":"gyliu513@gmail.com","username":"JayLau"},"change_message_id":"f51dd59351f61a4d010327b133a0b29183c5ca2d","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from sqlalchemy import Column, String, Text"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from nova.db.sqlalchemy import api"},{"line_number":20,"context_line":"from nova.db.sqlalchemy import utils"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAT3%2F%2FzEg%3D","line":17,"updated":"2013-12-31 09:56:10.000000000","message":"Do not import multiple in one line","commit_id":"383ef5acfb058e13235f271c5989db7a5da6be83"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"ccefbf896507ea8ac783f7954b0d2bcda1dea653","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from sqlalchemy import Column, String, Text"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from nova.db.sqlalchemy import api"},{"line_number":20,"context_line":"from nova.db.sqlalchemy import utils"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAT3%2F%2Fy7E%3D","line":17,"in_reply_to":"AAAAT3%2F%2FzEg%3D","updated":"2013-12-31 11:43:42.000000000","message":"Per style guide\nhttp://docs.openstack.org/developer/hacking/#imports\n\nimports from sqlalchemy package\nis an exception for\nDo not import more than one module per line (*) rule","commit_id":"383ef5acfb058e13235f271c5989db7a5da6be83"}],"nova/db/sqlalchemy/models.py":[{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"13ab3ec6379bd8ef29406e558450da7c204d6433","unresolved":false,"context_lines":[{"line_number":1251,"context_line":"    finish_time \u003d Column(DateTime)"},{"line_number":1252,"context_line":"    result \u003d Column(String(255))"},{"line_number":1253,"context_line":"    traceback \u003d Column(Text)"},{"line_number":1254,"context_line":"    host \u003d Column(String(255))"},{"line_number":1255,"context_line":"    details \u003d Column(Text)"},{"line_number":1256,"context_line":""},{"line_number":1257,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FzfQ%3D","line":1254,"updated":"2014-01-08 09:01:08.000000000","message":"Should we have an index on host? Do we expect to query on that later?","commit_id":"0c938328b2a64cb6b5c49f6ce691b9cfaf03eb19"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"2f2397a1370c44041a1b02123ad5933887de5ca6","unresolved":false,"context_lines":[{"line_number":1251,"context_line":"    finish_time \u003d Column(DateTime)"},{"line_number":1252,"context_line":"    result \u003d Column(String(255))"},{"line_number":1253,"context_line":"    traceback \u003d Column(Text)"},{"line_number":1254,"context_line":"    host \u003d Column(String(255))"},{"line_number":1255,"context_line":"    details \u003d Column(Text)"},{"line_number":1256,"context_line":""},{"line_number":1257,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAUH%2F%2FyrI%3D","line":1254,"in_reply_to":"AAAAUH%2F%2FzfQ%3D","updated":"2014-01-08 12:21:40.000000000","message":"There is no query expected on host. It simply records where this instance action took place (on which host).","commit_id":"0c938328b2a64cb6b5c49f6ce691b9cfaf03eb19"}],"nova/tests/db/test_migrations.py":[{"author":{"_account_id":7069,"name":"Joshua Hesketh","email":"josh@nitrotech.org","username":"jhesketh"},"change_message_id":"9f31a9873e2fb58c820d3ace3a9b17532fee3f49","unresolved":false,"context_lines":[{"line_number":2737,"context_line":""},{"line_number":2738,"context_line":"    def _check_229(self, engine, data):"},{"line_number":2739,"context_line":"        self.assertColumnExists(engine, \u0027instance_actions_events\u0027, \u0027host\u0027)"},{"line_number":2740,"context_line":"        self.assertColumnExists(engine, \u0027instance_actions_events\u0027, \u0027details\u0027)"},{"line_number":2741,"context_line":""},{"line_number":2742,"context_line":"        action_events \u003d db_utils.get_table(engine, \u0027instance_actions_events\u0027)"},{"line_number":2743,"context_line":"        self.assertTrue(isinstance(action_events.c.host.type,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F9D0Q%3D","line":2740,"updated":"2013-12-17 07:23:47.000000000","message":"Should also check the shadow tables here.","commit_id":"992fc44f0c77e260baaed427565d568f6e2337f8"},{"author":{"_account_id":2468,"name":"unicell","email":"unicell@gmail.com","username":"unicell"},"change_message_id":"3a1ed0f415ecfbc9fccae4aa9a9edb711d7f6524","unresolved":false,"context_lines":[{"line_number":2737,"context_line":""},{"line_number":2738,"context_line":"    def _check_229(self, engine, data):"},{"line_number":2739,"context_line":"        self.assertColumnExists(engine, \u0027instance_actions_events\u0027, \u0027host\u0027)"},{"line_number":2740,"context_line":"        self.assertColumnExists(engine, \u0027instance_actions_events\u0027, \u0027details\u0027)"},{"line_number":2741,"context_line":""},{"line_number":2742,"context_line":"        action_events \u003d db_utils.get_table(engine, \u0027instance_actions_events\u0027)"},{"line_number":2743,"context_line":"        self.assertTrue(isinstance(action_events.c.host.type,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAATn%2F9DRw%3D","line":2740,"in_reply_to":"AAAATn%2F9D0Q%3D","updated":"2013-12-17 09:30:35.000000000","message":"Done","commit_id":"992fc44f0c77e260baaed427565d568f6e2337f8"}]}
