)]}'
{"taskflow/persistence/base.py":[{"author":{"_account_id":10584,"name":"Min Pae","username":"sputnik13","inactive":true},"change_message_id":"6130a2ea055f59e9087413b4e82f033ca75735df","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        \"\"\""},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    @abc.abstractmethod"},{"line_number":84,"context_line":"    def update_flow_details(self, flow_detail,"},{"line_number":85,"context_line":"                            update_atom_details\u003dTrue):"},{"line_number":86,"context_line":"        \"\"\"Updates a given flow details and returns the updated version."},{"line_number":87,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"1a26ad4f_9b55d351","line":84,"updated":"2015-10-29 02:33:30.000000000","message":"While it\u0027s good to avoid unnecessary persistence operations, making this determination in the function call doesn\u0027t seem good.  A decision on whether to write out data should be based on the data item (atom detail) itself, and whether there are any changes to be committed.  This means we need to track \"dirtiness\" of records in the in-memory object, whether it\u0027s been read, etc.  Leaving the decision to the caller rather than based on the object opens the door to misuse of the API and potential database out of sync conditions.","commit_id":"10491dbf0dfdf95cf867889dc6afec0e0524e605"}]}
