)]}'
{"nova/db/sqlalchemy/models.py":[{"author":{"_account_id":6172,"name":"Boris Pavlovic","email":"boris@pavlovic.me","username":"boris-42"},"change_message_id":"207fffc3b228acc7bf77a3a9767c0a2afc51bc3f","unresolved":false,"context_lines":[{"line_number":1005,"context_line":"              \u0027instance_uuid\u0027, \u0027deleted\u0027, \u0027created_at\u0027)"},{"line_number":1006,"context_line":"    )"},{"line_number":1007,"context_line":""},{"line_number":1008,"context_line":"    id \u003d Column(Integer, primary_key\u003dTrue, nullable\u003dFalse, autoincrement\u003dTrue)"},{"line_number":1009,"context_line":"    instance_uuid \u003d Column(String(36),"},{"line_number":1010,"context_line":"                           ForeignKey(\u0027instances.uuid\u0027),"},{"line_number":1011,"context_line":"                           nullable\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2FemM%3D","line":1008,"updated":"2013-07-01 02:52:57.000000000","message":"there is no autoincrement in migration description.","commit_id":"7d8af4d3470e08aa3d27129f5d089b1c1b318d25"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"a120431d44d1f037f55133739bc23c8e0c6d6137","unresolved":false,"context_lines":[{"line_number":1033,"context_line":"                           nullable\u003dTrue)"},{"line_number":1034,"context_line":"    code \u003d Column(Integer(), nullable\u003dFalse)"},{"line_number":1035,"context_line":"    message \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1036,"context_line":"    details \u003d Column(Text, nullable\u003dTrue)"},{"line_number":1037,"context_line":"    host \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1038,"context_line":""},{"line_number":1039,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FWsU%3D","line":1036,"updated":"2013-07-03 13:31:10.000000000","message":"How does this fix the error: \n\n\"2013-07-02 13:13:03.501 |  \u0027Wrong type for column `details` in `instance_faults`\u0027,\" \n\nhttp://logs.openstack.org/34212/8/check/gate-nova-python27/26665/console.html.gz\n\n\nthe nullable\u003dTrue error appears to be different:\n\n2013-07-02 13:13:03.501 |  \u0027Wrong value for `nullable` attribute in `instance_faults.instance_uuid` (models:False, db:True)\u0027,","commit_id":"edbf64260194e39dd0afdf6208d8a9e89fd6c7ad"},{"author":{"_account_id":6509,"name":"Roman Bogorodskiy","email":"rbogorodskiy@mirantis.com","username":"novel"},"change_message_id":"943f254a7bd14ef4ca75ef8a726932dd184e28ee","unresolved":false,"context_lines":[{"line_number":1033,"context_line":"                           nullable\u003dTrue)"},{"line_number":1034,"context_line":"    code \u003d Column(Integer(), nullable\u003dFalse)"},{"line_number":1035,"context_line":"    message \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1036,"context_line":"    details \u003d Column(Text, nullable\u003dTrue)"},{"line_number":1037,"context_line":"    host \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1038,"context_line":""},{"line_number":1039,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FV6w%3D","line":1036,"in_reply_to":"AAAAPn%2F%2FV%2FA%3D","updated":"2013-07-03 17:29:32.000000000","message":"You\u0027re right, \u0027fix\u0027 is not the best word to describe these changes, it should be \u0027sync\u0027, because at this point we just sync models with the actual stuff in migrations (and therefore in database). \u0027Fixing\u0027 is planned after we\u0027re doing with bringing models in sync with databases.\n\nAs for explicit nullable params, you could find a reasoning in db-sync-models-with-migrations blueprint. I\u0027m not sure it should go as a separate patch as it would just create extra noise.\n\nThere are some more details on DB related activities here: http://lists.openstack.org/pipermail/openstack-dev/2013-July/011253.html","commit_id":"edbf64260194e39dd0afdf6208d8a9e89fd6c7ad"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"017dea80ccfb90b87a0d364dc25362a08eed62da","unresolved":false,"context_lines":[{"line_number":1033,"context_line":"                           nullable\u003dTrue)"},{"line_number":1034,"context_line":"    code \u003d Column(Integer(), nullable\u003dFalse)"},{"line_number":1035,"context_line":"    message \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1036,"context_line":"    details \u003d Column(Text, nullable\u003dTrue)"},{"line_number":1037,"context_line":"    host \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1038,"context_line":""},{"line_number":1039,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FV%2FA%3D","line":1036,"in_reply_to":"AAAAPn%2F%2FWAk%3D","updated":"2013-07-03 17:13:43.000000000","message":"Ahh, as the nullable explicit does not fit under \"Fix db description for some of Instance* models\" I would prefer to keep that as a separate patch (if at all).","commit_id":"edbf64260194e39dd0afdf6208d8a9e89fd6c7ad"},{"author":{"_account_id":6509,"name":"Roman Bogorodskiy","email":"rbogorodskiy@mirantis.com","username":"novel"},"change_message_id":"bffd6e27c5c52ce116bd34f228cfb3235dc2cf1d","unresolved":false,"context_lines":[{"line_number":1033,"context_line":"                           nullable\u003dTrue)"},{"line_number":1034,"context_line":"    code \u003d Column(Integer(), nullable\u003dFalse)"},{"line_number":1035,"context_line":"    message \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1036,"context_line":"    details \u003d Column(Text, nullable\u003dTrue)"},{"line_number":1037,"context_line":"    host \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1038,"context_line":""},{"line_number":1039,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FWAk%3D","line":1036,"in_reply_to":"AAAAPn%2F%2FWBI%3D","updated":"2013-07-03 17:01:33.000000000","message":"Well, I mean this error about type mismatch is not related to nullable. As for the nullable, the idea is to add explicit nullable everywhere.","commit_id":"edbf64260194e39dd0afdf6208d8a9e89fd6c7ad"},{"author":{"_account_id":1849,"name":"Joe Gordon","email":"joe.gordon0@gmail.com","username":"jogo"},"change_message_id":"84d01aaf4a6ed7ba439118c76b761f4bb2a36014","unresolved":false,"context_lines":[{"line_number":1033,"context_line":"                           nullable\u003dTrue)"},{"line_number":1034,"context_line":"    code \u003d Column(Integer(), nullable\u003dFalse)"},{"line_number":1035,"context_line":"    message \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1036,"context_line":"    details \u003d Column(Text, nullable\u003dTrue)"},{"line_number":1037,"context_line":"    host \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1038,"context_line":""},{"line_number":1039,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FWBI%3D","line":1036,"in_reply_to":"AAAAPn%2F%2FWH4%3D","updated":"2013-07-03 16:56:17.000000000","message":"AFAIK we do not want to bring MySQL specific stuff into the models.\n\nIf this is not related to nullable why is it changed here?","commit_id":"edbf64260194e39dd0afdf6208d8a9e89fd6c7ad"},{"author":{"_account_id":6509,"name":"Roman Bogorodskiy","email":"rbogorodskiy@mirantis.com","username":"novel"},"change_message_id":"fb0927b4bcf7842b524408e220ee0a57dcdb5047","unresolved":false,"context_lines":[{"line_number":1033,"context_line":"                           nullable\u003dTrue)"},{"line_number":1034,"context_line":"    code \u003d Column(Integer(), nullable\u003dFalse)"},{"line_number":1035,"context_line":"    message \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1036,"context_line":"    details \u003d Column(Text, nullable\u003dTrue)"},{"line_number":1037,"context_line":"    host \u003d Column(String(255), nullable\u003dTrue)"},{"line_number":1038,"context_line":""},{"line_number":1039,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FWH4%3D","line":1036,"in_reply_to":"AAAAPn%2F%2FWsU%3D","updated":"2013-07-03 16:14:00.000000000","message":"Yeah, it\u0027s not related to nullable.\n\nType of the details field in the model is \u0027Text\u0027, but in migrations it\u0027s MediumText. We don\u0027t use MediumText in models though, but you could take a look at this patch which brings it in:\n\nhttps://review.openstack.org/#/c/33426/6/nova/db/sqlalchemy/models.py\n\nThough, I\u0027m not sure if we should bring MySQL specific stuff into models.","commit_id":"edbf64260194e39dd0afdf6208d8a9e89fd6c7ad"}]}
