Problem with ksycoca on windows

David Faure faure at kde.org
Tue Feb 12 20:40:16 GMT 2008


On Friday 08 February 2008, Christian Ehrlicher wrote:
> - let kbuildsycoca create ksyscoca.new and rename the file when db is closed

You mean calling KSaveFile::finalize() in kbuildsycoca only after -all- processes using ksycoca have closed the db?
That sounds like a -lot- of inter-process synchronization (and those apps would have to be blocked
until they can open the new database, otherwise they have no db to work with, so this would lead
to bad user experience IMHO: all of kde freezing until all processes have woken up, closed db, waited for
the signal, and reopened the db).
If you can't make it work the unix way, then we should rather devise a scheme where
kbuildsycoca creates a ksycoca4_v2 file, and the apps can switch to that one on their own time;
but then the problem is knowning when to delete the v1 file; we'd need an inter-process
reference count in kded...

-- 
David Faure, faure at kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).




More information about the kde-core-devel mailing list