knah / VRCMods

A collection of various VRChat mods aimed at improving user experience or fixing issues
GNU General Public License v3.0
245 stars 138 forks source link

[Favcat] Collection was modified #167

Closed Kieaer closed 2 years ago

Kieaer commented 3 years ago
[14:10:27.817] [FavCat] [ERROR] System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
  at System.Collections.Generic.Dictionary`2+ValueCollection+Enumerator[TKey,TValue].MoveNext () [0x00013] in <e1319b7195c343e79b385cd3aa43f5dc>:0 
  at LiteDB.Engine.TransactionMonitor.Dispose () [0x0002d] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.Engine.LiteEngine.Dispose (System.Boolean disposing) [0x00016] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.Engine.LiteEngine.Dispose () [0x00000] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.LiteDatabase.Dispose (System.Boolean disposing) [0x0000b] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.LiteDatabase.Dispose () [0x00000] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at FavCat.Database.LocalStoreDatabase.Dispose () [0x00034] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at FavCat.FavCatMod.OnApplicationQuit () [0x0000a] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at MelonLoader.MelonHandler+<>c.<OnApplicationQuit>b__34_0 (MelonLoader.MelonBase x) [0x00000] in <67e16b0234254e2183a98652371f8451>:0 
  at MelonLoader.MelonHandler+<>c__DisplayClass52_0.<InvokeMelonMethod>b__1 (MelonLoader.MelonMod x) [0x00000] in <67e16b0234254e2183a98652371f8451>:0 
  at MelonLoader.MelonHandler.InvokeMelonMethod[T] (System.Collections.Generic.List`1[T]& melons, MelonLoader.MelonHandler+InvokeMelonMethodDelegate`1[T] method, System.Boolean remove_failed) [0x00032] in <67e16b0234254e2183a98652371f8451>:0 
[14:10:27.819] [UI_Expansion_Kit] [ERROR] Free-floating Task failed with exception: System.AggregateException: One or more errors occurred. ---> LiteDB.LiteException: There is no more active transaction for this cursor: SELECT $
FROM _files
  at LiteDB.Engine.QueryExecutor+<>c__DisplayClass10_0+<<ExecuteQuery>g__RunQuery|0>d.MoveNext () [0x002e4] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.BsonDataReader.Read () [0x00023] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.LiteQueryable`1+<ToDocuments>d__26[T].MoveNext () [0x0005f] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at System.Linq.Enumerable+SelectEnumerableIterator`2[TSource,TResult].MoveNext () [0x00029] in <fbb5ed17eb6e46c680000f8910ebb50c>:0 
  at LiteDB.LiteStorage`1+<Find>d__5[TFileId].MoveNext () [0x000c7] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at FavCat.Database.DatabaseImageHandler+<>c__DisplayClass4_0+<<TrimCache>b__0>d.MoveNext () [0x000f1] in <c1da4255d56c4351a8ebcd050378920f>:0 
   --- End of inner exception stack trace ---
---> (Inner Exception #0) LiteDB.LiteException: There is no more active transaction for this cursor: SELECT $
FROM _files
  at LiteDB.Engine.QueryExecutor+<>c__DisplayClass10_0+<<ExecuteQuery>g__RunQuery|0>d.MoveNext () [0x002e4] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.BsonDataReader.Read () [0x00023] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at LiteDB.LiteQueryable`1+<ToDocuments>d__26[T].MoveNext () [0x0005f] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at System.Linq.Enumerable+SelectEnumerableIterator`2[TSource,TResult].MoveNext () [0x00029] in <fbb5ed17eb6e46c680000f8910ebb50c>:0 
  at LiteDB.LiteStorage`1+<Find>d__5[TFileId].MoveNext () [0x000c7] in <c1da4255d56c4351a8ebcd050378920f>:0 
  at FavCat.Database.DatabaseImageHandler+<>c__DisplayClass4_0+<<TrimCache>b__0>d.MoveNext () [0x000f1] in <c1da4255d56c4351a8ebcd050378920f>:0 <---

This error occurs randomly. Some days it works if I run it again, but some days I have to try over 40 times before it works.

Kieaer commented 3 years ago

Full log is here -> Latest.log

knah commented 3 years ago

Based on logs, this looks like something that would only happen when the game is closed, and shouldn't affect it while it's running. As to why it closes immediately on startup - that I don't know. You have some non-VRCMG mods, and I mildly suspect that the Pimax eye tracker mod is obsolete. You can join the VRCMG discord to get an up-to-date eye+face tracking mod that also supports Pimax.

Kieaer commented 3 years ago

@knah Like #169 there are many cases where an error occurs immediately after starting even though all mods have been removed and only two have been installed and run. eye+face tracking mod isn't work and no update. my pimax eye tracker mod is still unstable but work (no listed in vrcmelonassistent)

Kieaer commented 2 years ago

Any updates?

Kieaer commented 2 years ago

VRC Build 1162 same problem

knah commented 2 years ago

As I mentioned before, log entries from FavCat are a result of the game closing too soon after launching. I don't know what causes it to close, and it' most likely not FavCat itself.