Firmware 2.3.0 and matching latest plugin set. Did update and Unfiltered Vol 1 crashes during initialization and fails to load.
Dan explained in another post we have reached the limit on āloading allā plugins. Donāt load all at boot and change config to load āon demandā or āaskā for each patch is the suggested route.
Yep, exactly. Best practice now is to pre-load your favorites on boot, and then load any other plugin on demand.
The reason it happens on Unfiltered Volume1 is because that plugin requires a large temporary buffer to be loaded (~64MB IIRC), and by the time the MetaModule has loaded all the other plugins alphabetically up until that point, there is not enough memory available to load that plugin. Itās possible to play ātetrisā and figure out an exact loading order that works, but I donāt recommend doing this, as there are more and more plugins getting ported and itāll soon be impossible to have them all loaded at the same time, no matter what order you do it in. Auto-loading when you open a patch is pretty reliable and is the way to go instead of loading all plugins at startup.
Feels like this is going to be a recurring point of confusion. I wonder if it would be helpful to have a custom alert message that triggers when the module runs out of memory on initial plugin loading, like āYouāve got too many plugins set to load on startup. Go to the plugin menu and disable some.ā
Yeah, we probably need a better warning message. There are two paths to this happening: clicking āLoad Allā, and pre-loading all plugins.
I debated having a pop-up warning/caution when you click āLoad Allā, just saying āIf you get an error, try loading just the plugins you needā, and we could have a custom message if the preloader fails due to memory.
I think Unfiltered will release an update that uses less memory, so that will stave off this particular issue. But as we keep adding more plugins, itāll just happen again with some other plugin.
Ok, I might have a solution. I just opened a PR from a branch that seems to be working well:
It lazily loads the modules, so less memory is needed at plugin load time. It works and you can load all the plugins at boot now with this.