On 19.12.2012 18:03, Olemis Lang wrote: > On 12/19/12, Apache Bloodhound <[email protected]> wrote: >> Page "BloodhoundSearch" was changed by andrej >> Diff URL: >> <https://issues.apache.org/bloodhound/wiki/BloodhoundSearch?action=diff&version=5> >> Revision 5 >> Changes: >> -------8<------8<------8<------8<------8<------8<------8<------8<-------- >> Index: BloodhoundSearch >> ========================================================================= >> --- BloodhoundSearch (version: 4) >> +++ BloodhoundSearch (version: 5) >> @@ -62,4 +62,6 @@ >> * Improve index consistency. >> * Current implementation uses ITicketChangeListener interface that >> triggers after DB committed. There is some chances to get inconsistency >> between DB and index. In this case reindex is required. One of the possible >> solution is contact Trac community to introduce a new within transaction >> I<Resource>ChangingListener interface, save changes into additional table >> and index changes in separate thread. >> * Some ticket changes are not reflected in event interfaces e.g. Version >> and Component renaming. One of the possible solution is to contact Trac >> community to introduce new interfaces. >> + * Alternative solution is triggering events from SQL proxy developed on >> multi-product branch >> + * Usage of DB triggers is another alternative > side note : for some reason Trac-dev are not very fond of triggers ... > maybe because each DB backend provider implements triggers in a > different manner ?
At least SQLite had bugs in certain cases of trigger usage until quite recently. That could be one reason. The more likely reason is that Trac doesn't actually use a relational database. It uses a persistent data store that depends on some minor side effects of the feature set of a relational database. :) -- Brane -- Branko Čibej Director of Subversion | WANdisco | www.wandisco.com
