Hitching/Lockup on first open
Xorag opened this issue ยท 24 comments
Please include as much of the following information as possible to help me fix the bug:
Brief Description of Bug
The past couple of weeks I've noticed an issue where my game will hitch/drop frames briefly whenever I open my inventory for the first time after logging in on a given character. I suspect maybe its due to me having 15 toons with bags/banks and the saved data is just getting too big to parse quickly?
Steps to Reproduce
Have 15+ toons with recorded bags and bank. Log in to one of them and open the inventory while moving/running etc... and see if you have a brief hitch/lockup
Loaded Addons
A bunch but it seems to persist while only running baganator
Back Trace (LUA Error Output)
No errors recorded, simply a performance issue
Testing indicates that this issue is reproducible when the Pawn upgrade arrows are enabled.
Do you have Pawn enabled?
I can try to play around and do more testing, I also generally keep my inventories pretty clean and empty and the hitching is definitely way less pronounced with no other addons enabled, but with all of them enabled it is noticeably worse
Third update - it does appear to be tinyinspect. even with all of the options turned off it still seems to be having an effect on the inventory icon skinning/performance... It hasn't been updated since 10.0.2 but this is a fairly new problem for me in the past couple weeks, i'll try to roll back versions to see when it was introduced
No i've never used pawn and as a matter of policy I don't really like/use addons that modify item icons etc... I think the only thing I have that modifies item tooltips would be auctionator? to show sell/vendor prices and tinyinspect which does have those features but i've turned them all off.
Thanks!
I tried a half a dozen baganator versions solely with tinyinspect going back to the v1 release and it still persists.
if i disable baganator it does not happen with the default bag UI (with tinyinspect still enabled).
Maybe something API related changed because i'd swear this is a fairly recent issue and i have not changed any addons recently as far as i can remember.
You can run
/bgr c debugtimers true
To get elapsed times for each action that Baganator does
The 5 bags only covers the first 4 bags and backpack though, the "took 1 bags" line covers the reagent bag.
The later "took 5 bags" and "took 1 bags" line are a lot faster because Baganator preserves the layout and buttons.
The reload is faster because the item data TinyInspect is requesting is now in the clients cache and causes less of a delay to access it.
I think the noticeable performance hit is because both Baganator and TinyInspect request similar data (with TinyInspect requesting more than Baganator), so you get the item data request performance drop twice.
thats pretty wild, unfortunately tiny inspect is only updated once per expansion i think the dev is a chinese player but the region got shut down this year so no clue what will even happen with it, but the inspect and item listing has been one of my favorite features. I can't really say why this issue started happening but i'm hoping to avoid dumping it entirely
no i only have on "gems and enchants", "show character sheet", and "show inspect sheet". you have to uncheck the other sub-nodes before the parent nodes otherwise the sub-node options stay enabled. It's janky
(I'm guessing not, but I'm also guessing that unlike Baganator it doesn't switch most of the processing off when the extra details are not needed)
I'll look at modifying Baganator to cut down the performance drop further, but about 2/3 of the time was TinyInspect which I won't be able to alleviate.
Can you try placing --
at the start of this line and see if the issue disappears?
https://github.com/Auctionator/Baganator/blob/main/UnifiedBags/ItemButton.lua#L633
well...
if i remove the loading for:
ItemBorder.lua
ItemLevel.lua
In the tiny inspect TOC it seems to fix it.. with no appreciable impact to my desired addon functionality... lol
Yeah. I've tested with just TinyInspect enabled, and the bag loading time (for the Blizzard one-bag-view) doubles going from 52ms (with Baganator and TinyInspect disabled) to 102ms (only TinyInspect)
Yea like i said this addon has always been... strange, disabling options sort of doesn't really unless you uncheck boxes in a certain order but im fine with just excising their problematic code... i don't personally want it or use it anyway