mirror of
https://github.com/schoebel/mars
synced 2025-03-03 20:07:40 +00:00
This has been found by testing. In extremely rare cases, such after crashes at the "wrong moment" or after defective /mars filesystems, the replay link could show a different length than the corresponding versionlink. The versionlink wouldn't be updated anymore when additionally the logfile has the same length than the replay link. The incorrect versionlink will then lead to a lock. Fix the problem by using the _minimum_ of all length indicators. For safty, or when in doubt, replay more data, which will in turn update the versionlink again to its correct value. |
||
---|---|---|
.. | ||
mars_light.c | ||
mars_proc.c | ||
mars_proc.h | ||
README | ||
strategy.h | ||
sy_generic.c | ||
sy_net.c |
This is ugly code from a first prototype trial. It will disappear as soon as the new strategy layer has been implemented. The new system will use an interpreter for automated pattern matching and triggering actions, in a much more generic fashion than hand-crafted here.