)]}'
{"keystone/common/sql/contract_repo/versions/002_password_created_at_not_nullable.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"afde958b1f4a47a8c82a84d4e2a7a8416380e91b","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    password \u003d sql.Table(\u0027password\u0027, meta, autoload\u003dTrue)"},{"line_number":23,"context_line":"    if password.c.created_at.nullable:"},{"line_number":24,"context_line":"        # hardcoding a date prior to the 105 migration"},{"line_number":25,"context_line":"        password.c.created_at.alter("},{"line_number":26,"context_line":"            default\u003ddatetime.datetime.utcnow,"},{"line_number":27,"context_line":"            server_default\u003d\u00272016-06-01 00:00:00\u0027,"},{"line_number":28,"context_line":"            nullable\u003dFalse)"},{"line_number":29,"context_line":"        # overwriting the hardcoded default value"},{"line_number":30,"context_line":"        values \u003d {\u0027created_at\u0027: datetime.datetime.utcnow()}"},{"line_number":31,"context_line":"        stmt \u003d password.update().where("}],"source_content_type":"text/x-python","patch_set":16,"id":"fa7ab95a_92b50880","line":28,"range":{"start_line":25,"start_character":0,"end_line":28,"end_character":27},"updated":"2016-08-31 12:40:34.000000000","message":"I still remain unconvinced that this does what you think it does.  I do not believe this would affect any existing rows in the database....hence it would not set any rows that were null to \u00272016-06-01 00:00:00\u0027 (delighted if you can prove me wrong). Which would mean that the code below also doesn\u0027t do what you intended.\n\nWe need to test this somehow, although I am not sure how you do this with the new 105 migration in place...","commit_id":"2ad082ab66bbd248913f0afb682c451ac921baf8"}],"keystone/common/sql/migrate_repo/versions/110_password_created_at_not_nullable.py":[{"author":{"_account_id":5707,"name":"Henry Nash","email":"henryn@linux.vnet.ibm.com","username":"henry-nash"},"change_message_id":"c04fe8e7945343cd82d9592328cff0a835a4c888","unresolved":false,"context_lines":[{"line_number":22,"context_line":"    password_table \u003d sql.Table(\u0027password\u0027, meta, autoload\u003dTrue)"},{"line_number":23,"context_line":"    if migrate_engine.name !\u003d \u0027sqlite\u0027 and ("},{"line_number":24,"context_line":"            password_table.c.created_at.nullable):"},{"line_number":25,"context_line":"        password_table.c.created_at.alter("},{"line_number":26,"context_line":"            default\u003ddatetime.datetime.utcnow,"},{"line_number":27,"context_line":"            server_default\u003d\u00272016-08-29 00:00:00\u0027,"},{"line_number":28,"context_line":"            nullable\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa7ab95a_1ff2f106","line":28,"range":{"start_line":25,"start_character":8,"end_line":28,"end_character":27},"updated":"2016-08-31 09:25:42.000000000","message":"is this safe in terms of existing rows? I\u0027ve always been under the impression server_default, which is just an sql ddl default, is only applied to existing rows. Hence what happens if there are rows in here that have been created while running on a system after 105 was run, but before this script is run...","commit_id":"e01ae7b4b277b810de67d3520ff95ad68d8f09e8"}]}
