[Bug] Lost updates - backup failed

Hello, I just lost my file which represents 5 days of work.
I used to leave Lunacy open and continue working on the evolution of my project, without saving my work with the “Save” command.

Because for me, I thought that Lunacy was saving automatically?
Indeed, when you close Lunacy with a current project without “save”, the window closes without any particular save message. When you reopen Lunacy, the window opens with the recent file(s) AND ESPECIALLY with the latest modifications in progress!!!

Bad luck for me, last night there was a crash last night and it closed the Lunacy window for me.
Suddenly, when I open the file I find myself with an obsolete file of 5 days.

I looked at the logs and I have a question:

  • Can you rebuild the .stekch file from the logs? because there are all the modifications and the images are present?

Thank you for your reply,

I can provide you the file in txt, if necessary


Nb: Here is an excerpt from the error message:

22:53:15.925 Error > WebSocketException The remote party closed the WebSocket connection without completing the close handshake. / at System.Net.WebSockets.ManagedWebSocket.ReceiveAsyncPrivate[TResult](Memory1 payloadBuffer, CancellationToken cancellationToken) at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder1.StateMachineBox1.System.Threading.Tasks.Sources.IValueTaskSource<TResult>.GetResult(Int16 token) at Microsoft.AspNetCore.Http.Connections.Client.Internal.WebSocketsTransport.StartReceiving(WebSocket socket) at System.IO.Pipelines.Pipe.GetReadResult(ReadResult& result) at System.IO.Pipelines.Pipe.GetReadAsyncResult() at Microsoft.AspNetCore.SignalR.Client.HubConnection.HandshakeAsync(ConnectionState startingConnectionState, CancellationToken cancellationToken) at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsyncCore(CancellationToken cancellationToken) at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsyncCore(CancellationToken cancellationToken) at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsyncInner(CancellationToken cancellationToken) at Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsync(CancellationToken cancellationToken) at Lunacy.API.Client.LunacyApiPushClient.Connect(HubConnection connection, CancellationToken token) ----> IOException Unable to read data from the transport connection: Une tentative de connexion a échoué car le parti connecté n’a pas répondu convenablement au-delà d’une certaine durée ou une connexion établie a échoué car l’hôte de connexion n’a pas répondu.. / at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token) at System.Net.Security.SslStream.EnsureFullTlsFrameAsync[TIOAdapter](TIOAdapter adapter) at System.Net.Security.SslStream.ReadAsyncInternal[TIOAdapter](TIOAdapter adapter, Memory1 buffer)
at System.Net.Http.HttpConnection.ReadBufferedAsyncCore(Memory1 destination) at System.Net.Http.HttpConnection.RawConnectionStream.ReadAsync(Memory1 buffer, CancellationToken cancellationToken)
at System.Net.WebSockets.ManagedWebSocket.EnsureBufferContainsAsync(Int32 minimumRequiredBytes, CancellationToken cancellationToken, Boolean throwOnPrematureClosure)
at System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder1.StateMachineBox1.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
at System.Net.WebSockets.ManagedWebSocket.ReceiveAsyncPrivate[TResult](Memory`1 payloadBuffer, CancellationToken cancellationToken)
----> SocketException Une tentative de connexion a échoué car le parti connecté n’a pas répondu convenablement au-delà d’une certaine durée ou une connexion établie a échoué car l’hôte de connexion n’a pas répondu. /
22:53:15.926 Push Error > Failed. reconnecting after 500 to EU_Prod

Bug fixed
In fact, the file had somehow lost sync with the file saved by Lunacy. I had my log file with all the modifications made but my work file displayed old data; those that dated from my physical recording.

Lunacy makes automatic backups in temporary directories BUT I invite you to “Save” your work.

Step by step resolution:

  1. Go to C:\Users\xxxx\AppData\Local\Icons8\Lunacy\ and verify that you have the following directories:
    has. Logs: contains all the actions performed and bug information (for me, it helped me to know the time and day of the crash)
    b. Documents: directory that contains all the updates of the projects carried out which are classified by directory and date; This directory consists of two files: Index and Undo

  2. Go to C:\Users\xxxx\AppData\Local\Icons8\Lunacy\Documents\xxxxxxxxx directory and copy Index and Undo files

  3. Create a new project in Lunacy and close Lunacy; a new directory is created in C:\Users\xxxx\AppData\Local\Icons8\Lunacy\Documents\

  4. It’s almost over

  5. Go to the C:\Users\xxxx\AppData\Local\Icons8\Lunacy\Documents\yyyyyyy directory and paste the Index and Undo files from step 2 (those from the directory before the bug)

  6. Open Lunacy and voila, I found 95% of my work

Best wishes

1 Like

Thanks for figuring this one out – that was a tough one! We’re still trying to find out what causes this issue, so the solution that you’ve found really comes in handy :+1: