)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"d3f29ccf44e9ebc6fce9796d21fe9948fc232fa3","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"placement: use separate tables for projects/users"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We were a bit naughty in Iecbe0eb5717afb0b13ca90d4868a3ca5f9e8902b in"},{"line_number":10,"context_line":"that we didn\u0027t normalize the storage of Keystone project and user"},{"line_number":11,"context_line":"identifiers in the API DB\u0027s new consumers table. This means that we"},{"line_number":12,"context_line":"will use a whole lot more storage for what ends up being very"},{"line_number":13,"context_line":"repetitive data."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch changes the consumers DB table schema\u0027s project_id and"},{"line_number":16,"context_line":"user_id columns from VARCHAR(255) to INT data type. This should result"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"df140735_9c0ca594","line":13,"range":{"start_line":9,"start_character":0,"end_line":13,"end_character":16},"updated":"2017-06-06 01:38:26.000000000","message":"Naughty maybe, but this is a pretty common pattern across a bunch of tables in the cell database. I\u0027m assuming you\u0027d want to also change those if given the chance though, right? Like the instances table in the cell database and the flavor_projects table in the API DB.","commit_id":"33442389e859b92848c406f4bc7d77b3d71866bb"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"e1dfc656907940a35c264a3dcd9aa38c7c5f9679","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"placement: use separate tables for projects/users"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We were a bit naughty in Iecbe0eb5717afb0b13ca90d4868a3ca5f9e8902b in"},{"line_number":10,"context_line":"that we didn\u0027t normalize the storage of Keystone project and user"},{"line_number":11,"context_line":"identifiers in the API DB\u0027s new consumers table. This means that we"},{"line_number":12,"context_line":"will use a whole lot more storage for what ends up being very"},{"line_number":13,"context_line":"repetitive data."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch changes the consumers DB table schema\u0027s project_id and"},{"line_number":16,"context_line":"user_id columns from VARCHAR(255) to INT data type. This should result"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"df140735_de63f0b0","line":13,"range":{"start_line":9,"start_character":0,"end_line":13,"end_character":16},"in_reply_to":"df140735_9c0ca594","updated":"2017-06-07 15:28:55.000000000","message":"This isn\u0027t the cell database. This is the API database.\n\nAlso, doing something poorly in the past isn\u0027t an excuse to continue doing the same thing in the future/present.\n\nAnd no, I\u0027m not concerned about things like the flavor_projects table in the API database. The flavor_projects table isn\u0027t going to be hit much at all. The allocations -\u003e consumers -\u003e projects table is going to be hit all the time...\n\n-jay","commit_id":"33442389e859b92848c406f4bc7d77b3d71866bb"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"906026a7cfb34a2c4e9a3dddc69cdb4d80a402ef","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"placement: use separate tables for projects/users"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We were a bit naughty in Iecbe0eb5717afb0b13ca90d4868a3ca5f9e8902b in"},{"line_number":10,"context_line":"that we didn\u0027t normalize the storage of Keystone project and user"},{"line_number":11,"context_line":"identifiers in the API DB\u0027s new consumers table. This means that we"},{"line_number":12,"context_line":"will use a whole lot more storage for what ends up being very"},{"line_number":13,"context_line":"repetitive data."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"This patch changes the consumers DB table schema\u0027s project_id and"},{"line_number":16,"context_line":"user_id columns from VARCHAR(255) to INT data type. This should result"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"df140735_81963994","line":13,"range":{"start_line":9,"start_character":0,"end_line":13,"end_character":16},"in_reply_to":"df140735_de63f0b0","updated":"2017-06-07 15:50:48.000000000","message":"Yeah, instances may see benefit from a similar cleanup I guess. However, I think the point here is: nothing is using this now, so let\u0027s fix it before we jam a bunch of data in it and make it a more expensive migration than it would be if we do it now.","commit_id":"33442389e859b92848c406f4bc7d77b3d71866bb"}],"nova/db/sqlalchemy/api_migrations/migrate_repo/versions/044_placement_add_projects_users.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"f29c6ce55f05925933c4ea6f22e8129669df5d3e","unresolved":false,"context_lines":[{"line_number":56,"context_line":"    user_id_col \u003d consumers.c.user_id"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    project_id_col.alter(type\u003dInteger)"},{"line_number":59,"context_line":"    user_id_col.alter(type\u003dInteger)"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_a10647cd","line":59,"updated":"2017-06-04 14:02:30.000000000","message":"There\u0027s no data in the consumers table yet, but PostgreSQL won\u0027t let me alter the column type from NVARCHAR to INTEGER. So, I\u0027m going to need to rewrite the above to be a drop, re-add column...","commit_id":"ec8808b6edcfde3d7557f6dd31251cfb49cf040f"}],"nova/db/sqlalchemy/api_models.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8e5753991fe78c3bafc5c4333c540497734901a2","unresolved":false,"context_lines":[{"line_number":627,"context_line":""},{"line_number":628,"context_line":"    id \u003d Column(Integer, primary_key\u003dTrue, nullable\u003dFalse, autoincrement\u003dTrue)"},{"line_number":629,"context_line":"    uuid \u003d Column(String(36), nullable\u003dFalse)"},{"line_number":630,"context_line":"    project_id \u003d Column(Integer, nullable\u003dTrue)"},{"line_number":631,"context_line":"    user_id \u003d Column(Integer, nullable\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":4,"id":"df140735_5c1bb671","line":630,"range":{"start_line":630,"start_character":42,"end_line":630,"end_character":46},"updated":"2017-06-05 18:24:17.000000000","message":"Why are these changed to nullable\u003dTrue?","commit_id":"b53ac4fa4a4da664f9f4b6a6d655381acd8345e3"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"688cba90b2caa744ac6d7dad1b4aefd173b55213","unresolved":false,"context_lines":[{"line_number":627,"context_line":""},{"line_number":628,"context_line":"    id \u003d Column(Integer, primary_key\u003dTrue, nullable\u003dFalse, autoincrement\u003dTrue)"},{"line_number":629,"context_line":"    uuid \u003d Column(String(36), nullable\u003dFalse)"},{"line_number":630,"context_line":"    project_id \u003d Column(Integer, nullable\u003dTrue)"},{"line_number":631,"context_line":"    user_id \u003d Column(Integer, nullable\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":4,"id":"df140735_9c438e42","line":630,"range":{"start_line":630,"start_character":42,"end_line":630,"end_character":46},"in_reply_to":"df140735_5c1bb671","updated":"2017-06-05 18:25:36.000000000","message":"Was me trying to solve a problem with sql migrations. I\u0027ve restored this in the latest patch (to be pushed shortly...)","commit_id":"b53ac4fa4a4da664f9f4b6a6d655381acd8345e3"}]}
