-
Notifications
You must be signed in to change notification settings - Fork 185
Persistence JSON deserialization fails with empty persistenceData #475
Copy link
Copy link
Closed
Description
Testing build from development after #474 merge.
While loading a log file with existing persistence JSON file saved by previous action build I get this strangeness in NLog logfile:
2025-10-01 23:13:54.9390|ERROR|
LogExpert.Core.Classes.Persister.Persister
Error loading persistence data from C:\Users\andis\Documents\LogExpert\C__Development_LogExpert_Snapshot-Debug_logs_logexpert.log.lxp Additional text found in JSON string after finishing deserializing object. Path 'FileName', line 29, position 13. Newtonsoft.Json.JsonSerializationException Newtonsoft.Json.JsonSerializationException: Additional text found in JSON string after finishing deserializing object. Path 'FileName', line 29, position 13.
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at LogExpert.Core.Classes.Persister.Persister.LoadInternal(String fileName) in C:\Development\LogExpert\src\LogExpert.Core\Classes\Persister\Persister.cs:line 266
Note the "Additional text found in JSON string after finishing deserializing object." part.
One side effect that is logged:
2025-10-01 23:13:55.1626|ERROR
LogExpert.Core.Classes.Log.LogfileReader
Cannot find buffer for line 0, file: C:\Development\LogExpert_Snapshot-Debug\logs\logexpert.log (MultiFile)
That is followed by NullReferenceException (as noted before) which is to be expected if persistenceData is null:
LogExpert.Core.Classes.Log.LogfileReader
System.NullReferenceException:
Object reference not set to an instance of an object.Object reference not set to an instance of an object. System.NullReferenceException System.NullReferenceException: Object reference not set to an instance of an object.
at LogExpert.UI.Controls.LogWindow.LogWindow.LoadPersistenceData() in C:\Development\LogExpert\src\LogExpert.UI\Controls\LogWindow\LogWindow.cs:line 2361
at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
--- End of stack trace from previous location ---
at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
at LogExpert.UI.Controls.LogWindow.LogWindow.OnLogFileReaderFinishedLoading(Object sender, EventArgs e) in C:\Development\LogExpert\src\LogExpert.UI\Controls\LogWindow\LogWindow.cs:line 704
at LogExpert.Core.Classes.Log.LogfileReader.OnLoadingFinished() in C:\Development\LogExpert\src\LogExpert.Core\Classes\Log\LogfileReader.cs:line 1807
at LogExpert.Core.Classes.Log.LogfileReader.MonitorThreadProc() in C:\Development\LogExpert\src\LogExpert.Core\Classes\Log\LogfileReader.cs:line 1446
I'll try deleting the .lxp file to recreate it and see if anything else pops up.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels