-
Task
-
Resolution: Done
-
Major
-
4.2.0.Final, 4.5.0.Final
-
None
-
None
Each time a repository starts up, ModeShape initializes the existing locks by reading data from the system area. If locks are missing from the repository but still appear as children of the jcr:system/mode:locks node, it is an indication of some lock cleanup gone bad/possible bug.
In this particular case, ModeShape logs the following warning:
Unable to find source-code formatter for language: txt. Available languages are: actionscript, ada, applescript, bash, c, c#, c++, cpp, css, erlang, go, groovy, haskell, html, java, javascript, js, json, lua, none, nyan, objc, perl, php, python, r, rainbow, ruby, scala, sh, sql, swift, visualbasic, xml, yaml
The lock with the key "{0}" cannot be found in the system area and will be ignored. This should not happen and indicates a corruption of the system data.
While the message is correct, repeating it each time on repository startup provides no actual value. Instead, we should make this behavior more robust and ModeShape should remove those "phatom" locks from the list of lock references.