)]}'
{"nova/db/sqlalchemy/api.py":[{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"d0b1a751a9481ab51e68a6cde8739cfea1526916","unresolved":false,"context_lines":[{"line_number":186,"context_line":"    if not issubclassof_nova_base(base_model):"},{"line_number":187,"context_line":"        base_model \u003d kwargs.get(\u0027base_model\u0027, None)"},{"line_number":188,"context_line":"        if not issubclassof_nova_base(base_model):"},{"line_number":189,"context_line":"            raise Exception(_(\"model or base_model parametr should be subclass\""},{"line_number":190,"context_line":"                              \" of NovaBase\"))"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":"    query \u003d session.query(model, *args)"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAM3%2F%2Fb0U%3D","line":189,"updated":"2013-01-22 17:56:29.000000000","message":"typo: s/parametr/parameter/","commit_id":"4b7a2d034b213239ed5b2d5751ea37b8142c7cef"},{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"d0b1a751a9481ab51e68a6cde8739cfea1526916","unresolved":false,"context_lines":[{"line_number":191,"context_line":""},{"line_number":192,"context_line":"    query \u003d session.query(model, *args)"},{"line_number":193,"context_line":""},{"line_number":194,"context_line":"    default_value \u003d base_model.__mapper__.c.deleted.default.arg"},{"line_number":195,"context_line":"    if read_deleted \u003d\u003d \u0027no\u0027:"},{"line_number":196,"context_line":"        query \u003d query.filter(base_model.deleted \u003d\u003d default_value)"},{"line_number":197,"context_line":"    elif read_deleted \u003d\u003d \u0027yes\u0027:"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAM3%2F%2Fb0M%3D","line":194,"updated":"2013-01-22 17:56:29.000000000","message":"I think \"default_value\" is not a clear enough variable name. Something like \"default_deleted_value\" would be better here.","commit_id":"4b7a2d034b213239ed5b2d5751ea37b8142c7cef"}],"nova/db/sqlalchemy/migrate_repo/versions/144_change_type_of_deleted_column.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"6774296b75a2ff3882d7f82710fd4312520d1e94","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        new_deleted.create(table, populate_default\u003dTrue)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        table.update().\\"},{"line_number":54,"context_line":"                where(table.c.deleted \u003d\u003d True).\\"},{"line_number":55,"context_line":"                values(new_deleted\u003dtable.c.id).\\"},{"line_number":56,"context_line":"                execute()"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAMH%2F%2FvWA%3D","line":54,"updated":"2012-11-27 21:21:15.000000000","message":"So the problem is you can\u0027t make the model change to Int and use this query at the same time on a database engine which has strong typing (like postgresql) because True is not an integer.","commit_id":"be291084890ee93d84a3c8c1cedcf0bb8f7316a7"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"a15eac21db3b0916be8726fbc8abf909c675eb6d","unresolved":false,"context_lines":[{"line_number":51,"context_line":"        new_deleted.create(table, populate_default\u003dTrue)"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        table.update().\\"},{"line_number":54,"context_line":"                where(table.c.deleted \u003d\u003d True).\\"},{"line_number":55,"context_line":"                values(new_deleted\u003dtable.c.id).\\"},{"line_number":56,"context_line":"                execute()"},{"line_number":57,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAMH%2F%2Fuw4%3D","line":54,"in_reply_to":"AAAAMH%2F%2FvWA%3D","updated":"2012-11-28 09:32:52.000000000","message":"Thanks for information about strong type in postgresql.. But in this line, there is no mistake. We alter table with new `new_deleted` column that have type of ID, so we don\u0027t change type of old `deleted` column (which is Boolean).","commit_id":"be291084890ee93d84a3c8c1cedcf0bb8f7316a7"}],"nova/db/sqlalchemy/models.py":[{"author":{"_account_id":2889,"name":"Aeva Black","email":"aeva.online@gmail.com","username":"tenbrae"},"change_message_id":"d0b1a751a9481ab51e68a6cde8739cfea1526916","unresolved":false,"context_lines":[{"line_number":737,"context_line":"class DNSDomain(BASE, NovaBase):"},{"line_number":738,"context_line":"    \"\"\"Represents a DNS domain with availability zone or project info.\"\"\""},{"line_number":739,"context_line":"    __tablename__ \u003d \u0027dns_domains\u0027"},{"line_number":740,"context_line":"    deleted \u003d Column(Boolean, default\u003dFalse)"},{"line_number":741,"context_line":"    domain \u003d Column(String(512), primary_key\u003dTrue)"},{"line_number":742,"context_line":"    scope \u003d Column(String(255))"},{"line_number":743,"context_line":"    availability_zone \u003d Column(String(255))"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAM3%2F%2Fb0c%3D","line":740,"updated":"2013-01-22 17:56:29.000000000","message":"Why define `deleted` as a Boolean here?","commit_id":"4b7a2d034b213239ed5b2d5751ea37b8142c7cef"},{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"a05a4a53807f506c7e1a1fccec851f6694b413a7","unresolved":false,"context_lines":[{"line_number":737,"context_line":"class DNSDomain(BASE, NovaBase):"},{"line_number":738,"context_line":"    \"\"\"Represents a DNS domain with availability zone or project info.\"\"\""},{"line_number":739,"context_line":"    __tablename__ \u003d \u0027dns_domains\u0027"},{"line_number":740,"context_line":"    deleted \u003d Column(Boolean, default\u003dFalse)"},{"line_number":741,"context_line":"    domain \u003d Column(String(512), primary_key\u003dTrue)"},{"line_number":742,"context_line":"    scope \u003d Column(String(255))"},{"line_number":743,"context_line":"    availability_zone \u003d Column(String(255))"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAAM3%2F%2FbYA%3D","line":740,"in_reply_to":"AAAAM3%2F%2Fb0c%3D","updated":"2013-01-22 22:38:45.000000000","message":"Almost all table have Integer as type of id column so I changed default type of deleted column to Integer. But in this case there is no id column so I did not make any migration for DNSDomain table \u003d\u003e deleted column still has Boolean type. At this moment it is not important to make migration for this table because we don\u0027t use soft deleted for entries from this table.","commit_id":"4b7a2d034b213239ed5b2d5751ea37b8142c7cef"}],"nova/tests/test_migrations.py":[{"author":{"_account_id":5652,"name":"David Ripton","email":"dripton@redhat.com","username":"dripton"},"change_message_id":"6800cf3d2a7835e0009487e88c5f79894c7e003f","unresolved":false,"context_lines":[{"line_number":509,"context_line":"            self.assertEqual(True, volume.deleted)"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"        for key, engine in self.engines.items():"},{"line_number":512,"context_line":"            print engine.name"},{"line_number":513,"context_line":"            migration_api.version_control(engine, TestMigrations.REPOSITORY,"},{"line_number":514,"context_line":"                                          migration.INIT_VERSION)"},{"line_number":515,"context_line":"            migration_api.upgrade(engine, TestMigrations.REPOSITORY, 150)"}],"source_content_type":"text/x-python","patch_set":11,"id":"AAAAM3%2F%2FbKc%3D","line":512,"updated":"2013-01-23 01:28:36.000000000","message":"Should probably delete the print","commit_id":"920886b619beaee167cbeac9725d1f6bc095f10f"}]}
