id summary reporter owner description type status priority milestone component version resolution keywords cc drp_resources i_links o_links remaining_time sprint 11779 Alt. impl. of graph processing jamoore mtbcarroll "Since the focus of much of beta3 will be graph processing, it is likely a good time to discuss an alternative implementation for processing graphs. It will be critical to judge what alternatives are possible and how long each might take to know whether or not this will be feasible for beta3. === Current ""Rollback"" strategy === Currently, the `ome.services.graphs` package uses [https://github.com/openmicroscopy/openmicroscopy/blob/develop/components/model/src/ome/util/actions/PostgresSqlAction.java#L331 `SAVEPOINT ...'`] to mark sub-graphs which if not successful should not completely rollback the transaction. It's assumed that the overhead of these savepoints is one of the main limiting factors for `DeleteI`, `ChgrpI`, etc. === ""Compiler"" strategy === One alternative would be to read the graph specs and generate a list of `SELECTs` which will calculate whether or not to even enter into the subgraphs. If the known-to-fail `UPDATEs` (or `DELETEs`) are not called, then there'll be no reason to create a savepoint." task closed critical 5.1.0-m3 Services 5.0.0-beta1 fixed java@… sethur2@… k.h.gillen@… spli@…