Simulation: index 'delivery' categories in ZODB
Use of catalog to get related simulation movements from delivery lines/cells is unreliable. Until now, for any new code written for simulation, we often had to be careful not to call getDeliveryRelatedValueList too early, usually by deferring code to activities with complicated dependencies. Race conditions are difficult to avoid by developping this way, because for a given delivery, there are potentially so many events that happen at the same time, involving: - simulation, amongst causality, expand, building, solving (including split) - alarms, user actions, external interfaces, chains of activities - several related deliveries and simulation trees This commit enables ZODB-indexing of related documents for 'delivery' base category, making getDeliveryRelatedValueList safe and fixing unlink of deleted delivery lines/cells. Existing activity dependencies are left unchanged because builders only uses catalog and local building needs to find all simulation movements.
1 parent 6bf9e694
Showing 10 changed files with 44 additions and 155 deletions