Open pathwayx99 opened 9 months ago
The same happens to me. Single-user setup, it happens anytime I add an icon and try to save Group. This is the log coming from docker:
warn: Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer[100]
Unhandled exception rendering component: LiteDB ENSURE: request page must be less or equals lastest page in data file
System.Exception: LiteDB ENSURE: request page must be less or equals lastest page in data file
at LiteDB.Constants.ENSURE(Boolean conditional, String message)
at LiteDB.Engine.Snapshot.GetPage[T](UInt32 pageID, FileOrigin& origin, Int64& position, Int32& walVersion)
at LiteDB.Engine.Snapshot.GetPage[T](UInt32 pageID)
at LiteDB.Engine.Snapshot.AddFreeList[T](T page, UInt32& startPageID)
at LiteDB.Engine.Snapshot.AddOrRemoveFreeDataList(DataPage page)
at LiteDB.Engine.DataService.<>c__DisplayClass3_0.<<Insert>g__source|0>d.MoveNext()
at LiteDB.Engine.BufferWriter..ctor(IEnumerable`1 source)
at LiteDB.Engine.DataService.Insert(BsonDocument doc)
at LiteDB.Engine.LiteEngine.InsertDocument(Snapshot snapshot, BsonDocument doc, BsonAutoId autoId, IndexService indexer, DataService data)
at LiteDB.Engine.LiteEngine.<>c__DisplayClass7_0.<Insert>b__0(TransactionService transaction)
at LiteDB.Engine.LiteEngine.AutoTransaction[T](Func`2 fn)
at LiteDB.Engine.LiteEngine.Insert(String collection, IEnumerable`1 docs, BsonAutoId autoId)
at LiteDB.LiteCollection`1.Insert(T entity)
at LiteDB.LiteFileStream`1.WriteChunks(Boolean flush)
at LiteDB.LiteFileStream`1.Flush()
at LiteDB.LiteFileStream`1.Dispose(Boolean disposing)
at System.IO.Stream.Close()
at LiteDB.LiteStorage`1.Upload(TFileId id, String filename, Stream stream, BsonDocument metadata)
at Fenrus.Helpers.ImageHelper.SaveImageFromBase64(String base64) in /app/Helpers/ImageHelper.cs:line 49
at Fenrus.Components.PageGroup.Save() in /app/Components/Pages/PageGroup/PageGroup.razor.cs:line 124
at Fenrus.Components.PageGroup.<BuildRenderTree>b__39_4() in /app/Components/Pages/PageGroup/PageGroup.razor:line 14
at Microsoft.AspNetCore.Components.EventCallbackWorkItem.InvokeAsync[T](MulticastDelegate delegate, T arg)
at Microsoft.AspNetCore.Components.ComponentBase.Microsoft.AspNetCore.Components.IHandleEvent.HandleEventAsync(EventCallbackWorkItem callback, Object arg)
at Microsoft.AspNetCore.Components.RenderTree.Renderer.DispatchEventAsync(UInt64 eventHandlerId, EventFieldInfo fieldInfo, EventArgs eventArgs)
fail: Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost[111]
Unhandled exception in circuit '_Dwz6g2JA7Oev4TxFAIjRc5t0zu7Fg11I0KAby7bNbw'.
System.Exception: LiteDB ENSURE: request page must be less or equals lastest page in data file
at LiteDB.Constants.ENSURE(Boolean conditional, String message)
at LiteDB.Engine.Snapshot.GetPage[T](UInt32 pageID, FileOrigin& origin, Int64& position, Int32& walVersion)
at LiteDB.Engine.Snapshot.GetPage[T](UInt32 pageID)
at LiteDB.Engine.Snapshot.AddFreeList[T](T page, UInt32& startPageID)
at LiteDB.Engine.Snapshot.AddOrRemoveFreeDataList(DataPage page)
at LiteDB.Engine.DataService.<>c__DisplayClass3_0.<<Insert>g__source|0>d.MoveNext()
at LiteDB.Engine.BufferWriter..ctor(IEnumerable`1 source)
at LiteDB.Engine.DataService.Insert(BsonDocument doc)
at LiteDB.Engine.LiteEngine.InsertDocument(Snapshot snapshot, BsonDocument doc, BsonAutoId autoId, IndexService indexer, DataService data)
at LiteDB.Engine.LiteEngine.<>c__DisplayClass7_0.<Insert>b__0(TransactionService transaction)
at LiteDB.Engine.LiteEngine.AutoTransaction[T](Func`2 fn)
at LiteDB.Engine.LiteEngine.Insert(String collection, IEnumerable`1 docs, BsonAutoId autoId)
at LiteDB.LiteCollection`1.Insert(T entity)
at LiteDB.LiteFileStream`1.WriteChunks(Boolean flush)
at LiteDB.LiteFileStream`1.Flush()
at LiteDB.LiteFileStream`1.Dispose(Boolean disposing)
at System.IO.Stream.Close()
at LiteDB.LiteStorage`1.Upload(TFileId id, String filename, Stream stream, BsonDocument metadata)
at Fenrus.Helpers.ImageHelper.SaveImageFromBase64(String base64) in /app/Helpers/ImageHelper.cs:line 49
at Fenrus.Components.PageGroup.Save() in /app/Components/Pages/PageGroup/PageGroup.razor.cs:line 124
at Fenrus.Components.PageGroup.<BuildRenderTree>b__39_4() in /app/Components/Pages/PageGroup/PageGroup.razor:line 14
at Microsoft.AspNetCore.Components.EventCallbackWorkItem.InvokeAsync[T](MulticastDelegate delegate, T arg)
at Microsoft.AspNetCore.Components.ComponentBase.Microsoft.AspNetCore.Components.IHandleEvent.HandleEventAsync(EventCallbackWorkItem callback, Object arg)
at Microsoft.AspNetCore.Components.RenderTree.Renderer.DispatchEventAsync(UInt64 eventHandlerId, EventFieldInfo fieldInfo, EventArgs eventArgs)
I installed Fenrus in a docker image a couple of days ago (like what I see!) and proceeded to build my custom dashboard. I have a multi-user setup, so I created some system groups and some user groups and populated my dashboard. All good.
However, as of today (I fiddled a lot with new icons etc), any item I try to change/add with a custom icon (uploaded via the "browse" functionality) will not work. The icon is uploaded normally, I can save out of the item, but when I try to save the group it does nothing. The UI continues to appear responsive from that moment on (ie overlays etc work), but any clicks do nothing. I have to reload the page. If I do, either the new item doesn't exist, or if it was a change, the old icon remains.
Note this does not happen if I choose an icon from the built-in list.