{"action":"created","issue":{"url":"https://api.github.com/repos/matrix-org/synapse/issues/3941","repository_url":"https://api.github.com/repos/matrix-org/synapse","labels_url":"https://api.github.com/repos/matrix-org/synapse/issues/3941/labels{/name}","comments_url":"https://api.github.com/repos/matrix-org/synapse/issues/3941/comments","events_url":"https://api.github.com/repos/matrix-org/synapse/issues/3941/events","html_url":"https://github.com/matrix-org/synapse/issues/3941","id":363236923,"node_id":"MDU6SXNzdWUzNjMyMzY5MjM=","number":3941,"title":"please can we kill off USE_FROZEN_DICTS","user":{"login":"richvdh","id":1389908,"node_id":"MDQ6VXNlcjEzODk5MDg=","avatar_url":"https://avatars1.githubusercontent.com/u/1389908?v=4","gravatar_id":"","url":"https://api.github.com/users/richvdh","html_url":"https://github.com/richvdh","followers_url":"https://api.github.com/users/richvdh/followers","following_url":"https://api.github.com/users/richvdh/following{/other_user}","gists_url":"https://api.github.com/users/richvdh/gists{/gist_id}","starred_url":"https://api.github.com/users/richvdh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/richvdh/subscriptions","organizations_url":"https://api.github.com/users/richvdh/orgs","repos_url":"https://api.github.com/users/richvdh/repos","events_url":"https://api.github.com/users/richvdh/events{/privacy}","received_events_url":"https://api.github.com/users/richvdh/received_events","type":"User","site_admin":false},"labels":[{"id":477045093,"node_id":"MDU6TGFiZWw0NzcwNDUwOTM=","url":"https://api.github.com/repos/matrix-org/synapse/labels/p1","name":"p1","color":"d93f0b","default":false},{"id":828666468,"node_id":"MDU6TGFiZWw4Mjg2NjY0Njg=","url":"https://api.github.com/repos/matrix-org/synapse/labels/release%20blocker","name":"release blocker","color":"880000","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2018-09-24T17:03:35Z","updated_at":"2018-09-26T10:16:56Z","closed_at":null,"author_association":"MEMBER","body":"I have just spent an hour wondering why things work on debian at all, despite it only having frozendict 0.5 (which canonicaljson *ought* to conflict with), and the tests failing spectacularly.  \n\nIt turns out that in our default config, we set USE_FROZEN_DICTS=False, which does make things work on debian, but also means that our UTs are testing something rather different to our production environment.\n\nPlease can we decide whether events should be frozendicts or not?"},"comment":{"url":"https://api.github.com/repos/matrix-org/synapse/issues/comments/424662616","html_url":"https://github.com/matrix-org/synapse/issues/3941#issuecomment-424662616","issue_url":"https://api.github.com/repos/matrix-org/synapse/issues/3941","id":424662616,"node_id":"MDEyOklzc3VlQ29tbWVudDQyNDY2MjYxNg==","user":{"login":"erikjohnston","id":8428120,"node_id":"MDQ6VXNlcjg0MjgxMjA=","avatar_url":"https://avatars0.githubusercontent.com/u/8428120?v=4","gravatar_id":"","url":"https://api.github.com/users/erikjohnston","html_url":"https://github.com/erikjohnston","followers_url":"https://api.github.com/users/erikjohnston/followers","following_url":"https://api.github.com/users/erikjohnston/following{/other_user}","gists_url":"https://api.github.com/users/erikjohnston/gists{/gist_id}","starred_url":"https://api.github.com/users/erikjohnston/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/erikjohnston/subscriptions","organizations_url":"https://api.github.com/users/erikjohnston/orgs","repos_url":"https://api.github.com/users/erikjohnston/repos","events_url":"https://api.github.com/users/erikjohnston/events{/privacy}","received_events_url":"https://api.github.com/users/erikjohnston/received_events","type":"User","site_admin":false},"created_at":"2018-09-26T10:16:56Z","updated_at":"2018-09-26T10:16:56Z","author_association":"MEMBER","body":"We used to have a lot of bugs where we'd end up changing the events either\na) before they'd get persisted or b) while they were in the event cache.\nThis is obviously problematic, especially given the signatures and hashes\nare then invalidated. Originally, we had frozendict enabled by default, but\nit turned out that its quite a performance hit.\n\nI agree its sub-optimal to test different things than what's on production,\nbut I think its important to ensure that we have some way of being\nconfident that we're not accidentally editing events. It may be worth\nrunning tests with the option both on and off, but that starts to become\nquite a lot of test runs.\n\nOn Wed, Sep 26, 2018 at 11:04 AM Amber Brown <notifications@github.com>\nwrote:\n\n> What do we get by having them be frozendicts? Just ensuring we\n> accidentally don't change it later?\n>\n> —\n> You are receiving this because you are subscribed to this thread.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/matrix-org/synapse/issues/3941#issuecomment-424659423>,\n> or mute the thread\n> <https://github.com/notifications/unsubscribe-auth/AICaWNMX_R6SZx7rSw_WGdZQTLT9w0__ks5ue1E5gaJpZM4W3E5T>\n> .\n>\n"}}
{"actor":{"display_login":"erikjohnston"}}