1. Post Processing
There is a bunch of problems that could be solved with a "post-processing" stage:
- Orphan information: when removing the last song of an album... who cleans the album?
- Calculated properties: like duration of a playlist when a new song is added
- For synchronization use cases, a mechanism to get "changes since X" is needed. A trigger after operations deciding if it is relevant for synch and logging it somewhere (out of tracker) could be useful.
1.1. Conclusions
We don't need to implement a post-processing stage. We have already 3 mechanisms to solve the proposed use cases:
- Cascade on delete will solve the orphan information problem
The internal hook see pvanhoof's blog). Only for restricted use cases under OUR supervision
- If the "everything from moment X" case is needed, we could provide a library to access the binary log.