Reproduced on Git HEAD, and reported here: 
https://github.com/Jermolene/TiddlyWiki5/issues/4742

On Sunday, June 28, 2020 at 4:58:39 PM UTC-5, Rob Hoelz wrote:
>
> I'm really sorry to hear that Enrico - that sucks.
>
> For what it's worth, I was able to reproduce this with TiddlyWiki 5.1.22 
> without a server like Apache or Nginx in front of TiddlyWiki:
>
> $ npm install tiddlywiki@latest
> $ ./node_modules/.bin/tiddlywiki --version
> 5.1.22
> $ ./node_modules/.bin/tiddlywiki wiki --init server
> Copied edition 'server' to wiki
> $ ./node_modules/.bin/tiddlywiki wiki --listen port=9091
> $ cat tw.log
>  syncer-server-filesystem: Dispatching 'save' task: $:/StoryList 
> Serving on http://127.0.0.1:9091
> (press ctrl-C to exit)
> $ curl -s -w "%{http_code}\n" -H 'X-Requested-With: TiddlyWiki' -X PUT -d 
> '{"title":"test1","text":"abc123"}' http:
> //localhost:9091/recipes/default/tiddlers/test1
> 204
> $ cat wiki/tiddlers/test1.tid
> created: 20200628215555511
> modified: 20200628215555511
> title: test1
>
> abc123
> $ curl -s -w "%{http_code}\n" -H 'X-Requested-With: TiddlyWiki' -X PUT -d 
> '{"title":"test2","text":"def456"}' http:
> //localhost:9091/recipes/default/tiddlers/test2
> 204
> $ cat wiki/tiddlers/test2.tid
> created: 20200628215557534
> modified: 20200628215557534
> title: test2
>
> def456
> $ chmod 400 wiki/tiddlers/test1.tid
> $ curl -s -w "%{http_code}\n" -H 'X-Requested-With: TiddlyWiki' -X PUT -d 
> '{"title":"test1","text":"abc123\n\nupdate"}' http:
> //localhost:9091/recipes/default/tiddlers/test1
> 204
> $ curl -s -w "%{http_code}\n" -H 'X-Requested-With: TiddlyWiki' -X PUT -d 
> '{"title":"test2","text":"ghi789"}' http:
> //localhost:9091/recipes/default/tiddlers/test2
> 204
> $ cat tw.log
>  syncer-server-filesystem: Dispatching 'save' task: $:/StoryList 
> Serving on http://127.0.0.1:9091
> (press ctrl-C to exit)
>  syncer-server-filesystem: Dispatching 'save' task: test1 
>  syncer-server-filesystem: Dispatching 'save' task: test2 
>  syncer-server-filesystem: Dispatching 'save' task: test1 
> Sync error while processing save of 'test1': Error: EACCES: permission 
> denied, open '/tmp/tw-test/wiki/tiddlers/test1.tid'
>  syncer-server-filesystem: Dispatching 'save' task: test1 
> Sync error while processing save of 'test1': Error: EACCES: permission 
> denied, open '/tmp/tw-test/wiki/tiddlers/test1.tid'
>  syncer-server-filesystem: Dispatching 'save' task: test1 
> $ cat wiki/tiddlers/test2.tid
> created: 20200628215557534
> modified: 20200628215557534
> title: test2
>
> def456
> $ cat wiki/tiddlers/test1.tid
> created: 20200628215555511
> modified: 20200628215555511
> title: test1
>
> abc123
>
>
>
> I think what happened is that Node accepts the change and puts it on an 
> in-memory queue for saving, but it fails to process the queue.  Since it 
> accepted the change from the browser, the browser things everything is 
> fine, so it doesn't show the traditional popup, and haschanged[] will come 
> up empty.
>
> I'm going to try to reproduce this with Git HEAD, and see if I can submit 
> a fix for Jeremy to look at.
>
> -Rob
>
> On Sunday, June 28, 2020 at 7:47:44 AM UTC-5, Enrico wrote:
>>
>> Hi,
>> I am writing to figure out whether I could have done something to prevent 
>> this pretty bad data loss into which I incurred yesterday, so it does not 
>> happen again.
>>
>> *My tiddlywiki setup*
>> I run the node.js tiddlywiki5 as a systemd service on a virtual private 
>> server.
>> It's served from a public IP address (protected by username/password 
>> login).
>> Apache webserver acts as a proxy between the outside world and the 
>> `tiddlywiki --serve` process.
>> `tiddlywiki -version` prints "5.1.22".
>>
>>
>> *What happened*
>> Some days ago I copied over some tiddlers from another tiddlywiki, 
>> restarted the tiddlywiki service, checked that I could access old as well 
>> as new tiddlers, and happily went along with my life.
>> At some point, the server process started printing errors that I 
>> absolutely did not notice (100% my fault for not checking my server logs 
>> for a few days).
>> Here's the error message that was printed in a loop, always about the 
>> "Eye Divers" tiddler:
>>
>>    vultr.guest tiddlywiki[22081]:  syncer-server-filesystem: Dispatching 
>> 'save' task: Eye Divers  
>>    vultr.guest tiddlywiki[22081]: Sync error while processing save of 
>> 'Eye Divers': Error: EACCES: permission denied, open 
>> '/home/tiddlywikirunner/tiddlyme/tiddlers/Eye 
>> Divers.tid'                    
>>
>> When I finally noticed these errors, yesterday, I copied the content of 
>> the "Eye Divers" tiddler to my clipboard and restarted the tiddlywiki 
>> service.
>> Result: *all tiddlers that I have created in the past few days have been 
>> lost*. It turns out that the problem with the "Eye Divers" tiddler 
>> prevented the tiddlywiki process from saving any new tiddler to disk.
>>
>> *The problem*
>> The main problem is that I had no way to know that all those tiddlers 
>> were never saved to disk:
>>
>>    - the browser interface displayed no error whatsoever
>>    - the icon that shows "Status of synchronization with the server" 
>>    displayed everything was fine, and lit up every time I edited or created 
>> a 
>>    new tiddler
>>    - the error message printed by the tiddlywiki server only referred to 
>>    a specific tiddler, that I took care to copy somewhere else before 
>>    restarting the server 
>>
>> To me it seems like I really had no way to know that restarting the 
>> tiddlywiki server would have caused such a dramatic data loss.
>> Even if I had noticed earlier, was there any way to "force" the 
>> tiddlywiki process to flush to disk all tiddlers that were created and that 
>> were in the process' memory only?
>>
>> Any suggestion is appreciated, I like tiddlywiki but I need things to be 
>> reliably synced to the disk that I back up nightly.
>> Cheers,
>> Enrico
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywiki/e17c92bb-92b6-49cd-b4d7-78ad98bf014co%40googlegroups.com.

Reply via email to