Question Help understanding how to troubleshoot VAM error messages

kdrummer

New member
Messages
7
Reactions
2
Points
3
I'm not really good at SW development, so I'm having a tough time understanding the breadcrumbs that error messages leave behind. Really hoping that someone can "teach me how to fish", so to speak since this sort of thing keeps happening all the time, especially after downloading so many scenes/packages from the hub.

Some things that jump out at me
  • Each time I open a package with failures, a new .dll file gets added to my top-level VAM directory. There are hundreds of these and I'm not sure if I can/should delete them
  • Many of these plugins showing errors may have been updated since the scene was released, so would that typically cause these compile issues?
    • For example, I deleted ToumeiHitsuji.DiviningRod.4, but the same issue happened with xxx.3. Didn't try beyond that.
    • Re-downloading the plugin didn't fix anything, telling me that the plugin is not corrupted
I'd really appreciate any insights that more experienced members might be able to share!

Here's an example of the error message type I'm tracking down:
!> Compile of ToumeiHitsuji.DiviningRod.4:/Custom/Scripts/ToumeiHitsuji/DiviningRod/DiviningRod.cs failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_ToumeiHitsuji_DiviningRod_4__Custom_Scripts_ToumeiHitsuji_DiviningRod_DiviningRod_cs_9fa4ab0298c9b0806b58f27d1bfc6237_0.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSource (System.String source) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of ToumeiHitsuji.DiviningRod.4:/Custom/Scripts/ToumeiHitsuji/DiviningRod/DiviningRod.cs failed. Errors:
!> Compile of everlaster.TittyMagic.9:/Custom/Scripts/everlaster/TittyMagic/TittyMagic.cslist failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_everlaster_TittyMagic_9__Custom_Scripts_everlaster_TittyMagic_TittyMagic_cslist_52c14f22083da50d3cbd7e6998ce5e97_3.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSources (System.String[] sources) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of everlaster.TittyMagic.9:/Custom/Scripts/everlaster/TittyMagic/TittyMagic.cslist failed. Errors:
!> Compile of AcidBubbles.Timeline.243:/Custom/Scripts/AcidBubbles/Timeline/VamTimeline.AtomAnimation.cslist failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_AcidBubbles_Timeline_243__Custom_Scripts_AcidBubbles_Timeline_VamTimeline_AtomAnimation_cslist_296f798c9305fcf528e67bd1729823c4_5.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSources (System.String[] sources) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of AcidBubbles.Timeline.243:/Custom/Scripts/AcidBubbles/Timeline/VamTimeline.AtomAnimation.cslist failed. Errors:
 
Run Vam_update.exe and check core integrity, maybe something is broken.
If you have hundreds of lines in error I suggest you get a new clean VAM folder to start fresh. Run that clean VaM and if there's no errors you can move in some of the VARs you have on the old VaM folder and rescan the packages or restart VaM. Do this incrementally until you find if there's a package creating all that mess.
 
Upvote 0
Run Vam_update.exe and check core integrity, maybe something is broken.
If you have hundreds of lines in error I suggest you get a new clean VAM folder to start fresh. Run that clean VaM and if there's no errors you can move in some of the VARs you have on the old VaM folder and rescan the packages or restart VaM. Do this incrementally until you find if there's a package creating all that mess.

Thank you for the suggestions. I've done the core integrity check and gone with a virgin install, but the issues remain. I've even gone partway through the incremental merge approach. The trouble/complication comes when considering that I have 1600+ VARs, making it a huge time commitment to add each one individually (or in small chunks), open each one, then pray the latest VAR didn't somehow break one of the previously "installed" VARs. Maybe this actually is the only approach to take and I just need way more patience, but I'm hoping to gain a bit more insight into how to follow the breadcrumbs to isolate/resolve each issue instead of committing an entire weekend to rebuilding my entire library just to experience one scene, only to find that a previously tested VAR is now broken.
 
Upvote 0
Did you say that you tried a clean VAM without your 1600+ VARs and still there were errors? As in starting only with the file vam_updater.exe without anything else, running it until it downloads all it's needed?
 
Upvote 0
Did you say that you tried a clean VAM without your 1600+ VARs and still there were errors? As in starting only with the file vam_updater.exe without anything else, running it until it downloads all it's needed?

There are no errors without adding VARs to the virgin install. However, I thought I had a user scenario that was fairly repeatable with only MacGruber's Benchmark 3, but it's not kicking back errors anymore so I'll have to keep digging. Basically, I could get Benchmark 3 to run once, then it would kick an error. When this would happen, I couldn't figure out what to delete or modify to get the benchmark to open without errors. Point being, if any VAR starts causing issues at any point, I'd like to understand how to investigate beyond a thorough re-scrubbing of every single VAR that I have. Any information helpful for back-tracing error messages would be appreciated.

!> Compile of MacGruber.Benchmark.3:/Custom/Scripts/MacGruber/Benchmark/Benchmark.cslist failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_MacGruber_Benchmark_3__Custom_Scripts_MacGruber_Benchmark_Benchmark_cslist_8d8082746176af8a854cfc8779bb149b_0.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSources (System.String[] sources) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of MacGruber.Benchmark.3:/Custom/Scripts/MacGruber/Benchmark/Benchmark.cslist failed. Errors:
!> Compile of MacGruber.LogicBricks.10:/Custom/Scripts/MacGruber/LogicBricks/MacGruber_ScreenFade.cslist failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_MacGruber_LogicBricks_10__Custom_Scripts_MacGruber_LogicBricks_MacGruber_ScreenFade_cslist_27c3f0fcfd3cf2ba81af82e989a27f2f_2.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSources (System.String[] sources) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of MacGruber.LogicBricks.10:/Custom/Scripts/MacGruber/LogicBricks/MacGruber_ScreenFade.cslist failed. Errors:
!> Compile of MacGruber.LogicBricks.10:/Custom/Scripts/MacGruber/LogicBricks/MacGruber_Relay.cslist failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_MacGruber_LogicBricks_10__Custom_Scripts_MacGruber_LogicBricks_MacGruber_Relay_cslist_22fbce4c7bdf9424703096b1d140c352_4.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSources (System.String[] sources) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of MacGruber.LogicBricks.10:/Custom/Scripts/MacGruber/LogicBricks/MacGruber_Relay.cslist failed. Errors:
!> Compile of MacGruber.Essentials.11:/Custom/Scripts/MacGruber/Essentials/MacGruber_SkyMagicLoader.cs failed. Exception: System.IO.IOException: Sharing violation on path MVRPlugin_MacGruber_Essentials_11__Custom_Scripts_MacGruber_Essentials_MacGruber_SkyMagicLoader_cs_390905106c8b7f4a88b4ebca41050803_11.dll
at System.IO.File.Delete (System.String path) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileShared (System.Func`3 compileMethod, System.CodeDom.Compiler.CompilerParameters parameters, System.String[] sourceOrFiles) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.McsMarshal.CompileSource (System.String[] source) [0x00000] in <filename unknown>:0
at DynamicCSharp.Compiler.ScriptCompiler.CompileSources (System.String[] sourceContent, System.String[] extraReferences) [0x00000] in <filename unknown>:0
at DynamicCSharp.ScriptDomain.CompileAndLoadScriptSource (System.String source) [0x00000] in <filename unknown>:0
at MVRPluginManager.SyncPluginUrlInternal (.MVRPlugin mvrp, Boolean isFromConfirmDenyResponse) [0x00000] in <filename unknown>:0
!> Compile of MacGruber.Essentials.11:/Custom/Scripts/MacGruber/Essentials/MacGruber_SkyMagicLoader.cs failed. Errors:

Here's my basic framework for troubleshooting:
  1. Create a virgin install in new location
    1. Copy the /Keys folder for proper access level
    2. Open VAM.exe, set security preferences to enable plugins, etc.
    3. Confirm no errors
    4. Close VAM
  2. Create Experiment
    1. Create copy of Virgin Install folder, rename with experiment name
    2. Manually copy VAR to correct location in the Experiment folder -OR- download directly from the hub within VAM.
    3. Run the scene
    4. Check for errors
  3. Repeat the experiment process with any suspected deviations
 
Upvote 0
As you posted a screenshot with errors from Macgrubers' Benchmark, hopefully he can check that and advise you better on why those errors are occuring for his tool and maybe this can point a possible culprit source.
He's very active in this section, perhaps a call for @MacGruber will alert him here 👨‍🚒
 
Upvote 0
hm, so do I understand this right, this is a clean VaM install with only the Benchmark plus the dependencies VaM automatically downloads for it?

Just listing some random things:
  1. You did not install my Benchmark via the Hub-Browse window within VaM using the "Download All" button? That's the only way it should be installed, making sure you got everything you need. My Benchmark has some "protection" against not being installed correctly, like when noob-people think VAR are just ZIP files unpack or modify them. (However, it should not throw cryptic errors like that)
  2. Maybe you installed VaM in an admin-protected folder, like C:\Program Files
  3. Maybe you run an old version of VaM?
  4. Maybe you have two instances of the same VaM.exe running at the same time? Maybe after an earlier run VaM did not die correctly....maybe reboot your machine to make sure?
  5. The error says "Sharing violation on path XXX". I think VaM is trying to delete the DLL it just compiled from my script files, as it is no longer needed after it was loaded? Possibly you have some file or folder open in another way blocking that somehow?
 
Upvote 0
I feel like this is going way off on a tangent, but I think there's starting to be gold to mine. @MacGruber, I really appreciate the thoughtful suggestions!

hm, so do I understand this right, this is a clean VaM install with only the Benchmark plus the dependencies VaM automatically downloads for it?

Just listing some random things:
  1. You did not install my Benchmark via the Hub-Browse window within VaM using the "Download All" button? That's the only way it should be installed, making sure you got everything you need. My Benchmark has some "protection" against not being installed correctly, like when noob-people think VAR are just ZIP files unpack or modify them. (However, it should not throw cryptic errors like that)
I actually did download it from the Hub-Browse and "Download All" button.
  • Maybe you installed VaM in an admin-protected folder, like C:\Program Files
It's not, but thanks for the insight!
  • Maybe you run an old version of VaM?
Running latest: 1.20.77.9
  • Maybe you have two instances of the same VaM.exe running at the same time? Maybe after an earlier run VaM did not die correctly....maybe reboot your machine to make sure?
I don't think there were multiple versions actively running, but the concept that a process could not properly be terminated could definitely explain why I was constantly seeing the issue one day, then the issue disappeared the next day (reboot uncertain)

  • The error says "Sharing violation on path XXX". I think VaM is trying to delete the DLL it just compiled from my script files, as it is no longer needed after it was loaded? Possibly you have some file or folder open in another way blocking that somehow?
THIS: This is the kind of thing that I'm looking to understand from these error messages! I've tried deleting these DLLs with no effect, but I assume they are all uniquely created and don't get referenced when loading the scene again. Assuming I've rebooted and haven't opened anything else before running VAM, any tips/thoughts on where to backtrace what is calling this? I took a deeper dive into the .var and noticed the .cs files referenced in the .cslist file, but that's where the water gets too deep for me. I also don't know the parent process that's calling the .cslist file in the first place because that's likely what is creating those DLLs. Maybe I'm getting unnecessarily stuck in the weeds. Just trying to find a way out.
 
Upvote 0
I've tried deleting these DLLs with no effect
You should not see these DLLs in the first place? They are just temporary. I still think this may be some kind of access right issues. Make sure you install VaM in just a plain folder. Like to your harddrive, create a new folder "VaM" at the top level and let VaM install there.

I also don't know the parent process that's calling the .cslist file
That's VaM itself, which is using an open source compiler named DynamicCSharp to compile the plugins.

Another thing to try is to check Unity's error log. Not all errors are shown inside VaM. Go to %appdata%\..\LocalLow\MeshedVR\VaM\output_log.txt
 
Upvote 0
Back
Top Bottom