PIM/MS Windows/SQLite Folder Indices: Difference between revisions

From KDE Community Wiki
No edit summary
No edit summary
Line 7: Line 7:
**mIndexId unused - removed as well as serialIndexId()
**mIndexId unused - removed as well as serialIndexId()
**indexLocation(): added .db suffix to indicate the index is sqlite-based
**indexLocation(): added .db suffix to indicate the index is sqlite-based
**INDEX_VERSION is written and checked using 'PRAGMA user_version = <integer>' command
**INDEX_VERSION is written and checked using 'PRAGMA user_version = <integer>' command [http://sqlite.org/pragma.html]
**we do not use temporary filenames, e.g. in writeIndex(): SQLite takes care about safe storage
**we do not use temporary filenames, e.g. in writeIndex(): SQLite takes care about safe storage
**updateIndex() no changes, we're changing implementation of KMMsgBase::syncIndexString() and writeIndex() instead
**updateIndex() no changes, we're changing implementation of KMMsgBase::syncIndexString() and writeIndex() instead

Revision as of 09:38, 23 April 2008

There are issues with locking index files for KMail folders and mmap()/munmap() operations on Windows. Therefore, SQLite-based indices are in development. This page presents detailed development notes for this task.

Started: jstaniek 11:35, 23 April 2008 (CEST)

KMFolderIndex

  • 2008-04-23
    • mIndexId unused - removed as well as serialIndexId()
    • indexLocation(): added .db suffix to indicate the index is sqlite-based
    • INDEX_VERSION is written and checked using 'PRAGMA user_version = <integer>' command [1]
    • we do not use temporary filenames, e.g. in writeIndex(): SQLite takes care about safe storage
    • updateIndex() no changes, we're changing implementation of KMMsgBase::syncIndexString() and writeIndex() instead

KMMsgBase

  • 2008-04-23
    • move syncIndexString() to KMFolderIndex, where we can impleemnt it for SQLite differently

Status of porting to SQLite

TOPIC PORTED TESTED NOTES
KMFolderIndex:indexLocation() yes added .db suffix to indicate the index is sqlite-based