Duplicate entities should not happen but any unforeseen process termination may accidental collide with a rollback transaction and leaves an update process hanging and can therefore cause an ID request to be unsuccessful and hereby creates an new ID for an already existing entity.
Semantic MediaWiki's update transactions are atomic and should prevent those scenarios but on some rare occasions above events can still unfold and to minimize a potential impact on queries or data consistency different features 12 are provided.
How to resolve a duplicate entry?[edit]
- A simple save (or purge) action should be enough for the system to detect and mark 1 duplicate entries.
- Special page "SemanticMediaWiki"Provides functions for wiki administrators that assist in doing their administration work provides a tool 2 to monitor the entity table on possible duplicate entries (it can take a moment before data are fetched and returned from a request). To avoid any excessive use of the tool, retrieved data are cached
api.task
and may not reflect the most recent status especially when listed entities have been recently (within the cacheTTL) processed. - Maintenance script "removeDuplicateEntities.php"Allows to remove all duplicate entities with no reference in any other table from the entity table allows to dispose of duplicate entities via command line. Thus is is easier to automatize this task i.e. triggering it via a cronjob.
See also[edit]
- Help page on maintenance script "removeDuplicateEntities.php"Allows to remove all duplicate entities with no reference in any other table from the entity table
- Help page on maintenance script "rebuildData.php"Allows to rebuild all the semantic data for a selected data backend/store
- Help page on outdated entities
- Help page on purging
References
- a b Semantic MediaWiki: GitHub pull request gh:smw:2882
- a b Semantic MediaWiki: GitHub pull request gh:smw:2883