On Wed, Jun 15, 2011 at 11:37 AM, Edward K. Ream <email address hidden> wrote:
> I do not believe for a moment that this bug is "nondeterministic". > Rather, it depends on a certain sequence of actions.
Here is how to reproduce the bug:
1. Start path-noexist-bug.leo with --no-cache.
2. Change the text of the root node.
3. Save the outline twice.
The first time, a trace in fc.putVnode will report forceWrite = True and isOrphan = True.
The second time, the trace will report both are False. This is the proximate cause of the data loss.
So it looks like the *first* save clears the orphan bit improperly, creating a time bomb.
Edward
On Wed, Jun 15, 2011 at 11:37 AM, Edward K. Ream <email address hidden> wrote:
> I do not believe for a moment that this bug is "nondeterministic".
> Rather, it depends on a certain sequence of actions.
Here is how to reproduce the bug:
1. Start path-noexist- bug.leo with --no-cache.
2. Change the text of the root node.
3. Save the outline twice.
The first time, a trace in fc.putVnode will report forceWrite = True
and isOrphan = True.
The second time, the trace will report both are False. This is the
proximate cause of the data loss.
So it looks like the *first* save clears the orphan bit improperly,
creating a time bomb.
Edward