)]}'
{"keystone/identity/mapping_backends/sql.py":[{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"660c4e5ae85da72d41229cf0d6d7cf5c3ce003ff","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        try:"},{"line_number":69,"context_line":"            with sql.session_for_write() as session:"},{"line_number":70,"context_line":"                if public_id is None:"},{"line_number":71,"context_line":"                    public_id \u003d self.id_generator_api.generate_public_ID(entity)"},{"line_number":72,"context_line":"                entity[\u0027public_id\u0027] \u003d public_id"},{"line_number":73,"context_line":"                mapping_ref \u003d IDMapping.from_dict(entity)"},{"line_number":74,"context_line":"                session.add(mapping_ref)"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_384b952d","line":71,"range":{"start_line":71,"start_character":20,"end_line":71,"end_character":80},"updated":"2016-07-17 19:50:45.000000000","message":"this line is too long","commit_id":"0c078b59204ea5090537aadc56d6ba6e57862051"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"082cec0fc6de6a94922c469e7ad2a1881f8e1d04","unresolved":false,"context_lines":[{"line_number":68,"context_line":"        try:"},{"line_number":69,"context_line":"            with sql.session_for_write() as session:"},{"line_number":70,"context_line":"                if public_id is None:"},{"line_number":71,"context_line":"                    public_id \u003d self.id_generator_api.generate_public_ID(entity)"},{"line_number":72,"context_line":"                entity[\u0027public_id\u0027] \u003d public_id"},{"line_number":73,"context_line":"                mapping_ref \u003d IDMapping.from_dict(entity)"},{"line_number":74,"context_line":"                session.add(mapping_ref)"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_4009222c","line":71,"range":{"start_line":71,"start_character":20,"end_line":71,"end_character":80},"in_reply_to":"dada55a8_384b952d","updated":"2016-07-18 09:33:34.000000000","message":"Done","commit_id":"0c078b59204ea5090537aadc56d6ba6e57862051"},{"author":{"_account_id":6482,"name":"Steve Martinelli","email":"s.martinelli@gmail.com","username":"stevemar"},"change_message_id":"660c4e5ae85da72d41229cf0d6d7cf5c3ce003ff","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def create_id_mapping(self, local_entity, public_id\u003dNone):"},{"line_number":67,"context_line":"        entity \u003d local_entity.copy()"},{"line_number":68,"context_line":"        try:"},{"line_number":69,"context_line":"            with sql.session_for_write() as session:"},{"line_number":70,"context_line":"                if public_id is None:"},{"line_number":71,"context_line":"                    public_id \u003d self.id_generator_api.generate_public_ID(entity)"},{"line_number":72,"context_line":"                entity[\u0027public_id\u0027] \u003d public_id"},{"line_number":73,"context_line":"                mapping_ref \u003d IDMapping.from_dict(entity)"},{"line_number":74,"context_line":"                session.add(mapping_ref)"},{"line_number":75,"context_line":"        except sql.DBDuplicateEntry:"},{"line_number":76,"context_line":"            # something else created the mapping already. We can use it."},{"line_number":77,"context_line":"            public_id \u003d self.get_public_id(local_entity)"},{"line_number":78,"context_line":"        return public_id"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def delete_id_mapping(self, public_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_58bbe90e","line":77,"range":{"start_line":68,"start_character":8,"end_line":77,"end_character":56},"updated":"2016-07-17 19:50:45.000000000","message":"i\u0027m wondering if it\u0027ll be faster to try and get the entity first, and catch the NotFound exception.\n\ni guess in the case of pre-populating the data, the catch will only happen when the user authenticates.","commit_id":"0c078b59204ea5090537aadc56d6ba6e57862051"},{"author":{"_account_id":13478,"name":"Boris Bobrov","email":"b.bobrov@sap.com","username":"bbobrov"},"change_message_id":"082cec0fc6de6a94922c469e7ad2a1881f8e1d04","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"    def create_id_mapping(self, local_entity, public_id\u003dNone):"},{"line_number":67,"context_line":"        entity \u003d local_entity.copy()"},{"line_number":68,"context_line":"        try:"},{"line_number":69,"context_line":"            with sql.session_for_write() as session:"},{"line_number":70,"context_line":"                if public_id is None:"},{"line_number":71,"context_line":"                    public_id \u003d self.id_generator_api.generate_public_ID(entity)"},{"line_number":72,"context_line":"                entity[\u0027public_id\u0027] \u003d public_id"},{"line_number":73,"context_line":"                mapping_ref \u003d IDMapping.from_dict(entity)"},{"line_number":74,"context_line":"                session.add(mapping_ref)"},{"line_number":75,"context_line":"        except sql.DBDuplicateEntry:"},{"line_number":76,"context_line":"            # something else created the mapping already. We can use it."},{"line_number":77,"context_line":"            public_id \u003d self.get_public_id(local_entity)"},{"line_number":78,"context_line":"        return public_id"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def delete_id_mapping(self, public_id):"}],"source_content_type":"text/x-python","patch_set":1,"id":"dada55a8_00ff2a02","line":77,"range":{"start_line":68,"start_character":8,"end_line":77,"end_character":56},"in_reply_to":"dada55a8_58bbe90e","updated":"2016-07-18 09:33:34.000000000","message":"Although it might be faster, it will be wrong. It is possible, that between the get and the insert another insert by the second process will happen.","commit_id":"0c078b59204ea5090537aadc56d6ba6e57862051"}]}
