NeatPlates

NeatPlates

7M Downloads

"Interface\AddOns\NeatPlatesHub\functions\Widgets.lua:475: script ran too long"

filliph opened this issue ยท 7 comments

commented

This happens seemingly entirely randomly. I've had it happen both on death and while being alive.

Message: Interface\AddOns\NeatPlatesHub\functions\Widgets.lua:475: script ran too long
Time: Sun Aug 23 14:16:53 2020
Count: 1
Stack: Interface\AddOns\NeatPlatesHub\functions\Widgets.lua:475: script ran too long
[string "@Interface\AddOns\PersoLootRoll\Core\Addon.lua"]:589: in function <Interface\AddOns\PersoLootRoll\Core\Addon.lua:588>
[string "=[C]"]: ?
[string "@Interface\AddOns\NeatPlatesHub\functions\Widgets.lua"]:475: in function <Interface\AddOns\NeatPlatesHub\functions\Widgets.lua:444>
[string "=(tail call)"]: ?
[string "@Interface\AddOns\NeatPlatesWidgets\AuraWidget.lua"]:311: in function <Interface\AddOns\NeatPlatesWidgets\AuraWidget.lua:252>
[string "@Interface\AddOns\NeatPlatesWidgets\AuraWidget.lua"]:457: in function <Interface\AddOns\NeatPlatesWidgets\AuraWidget.lua:450>
[string "@Interface\AddOns\NeatPlatesWidgets\AuraWidget.lua"]:478: in function `Expire'
[string "@Interface\AddOns\NeatPlatesWidgets\WidgetCore.lua"]:61: in function <Interface\AddOns\NeatPlatesWidgets\WidgetCore.lua:52>

Locals: msg = "Interface\AddOns\NeatPlatesHub\functions\Widgets.lua:475: script ran too long"
lvl = nil
origHandler = <function> defined @Interface\AddOns\TradeSkillMaster\LibTSM\Service\ErrorHandler.lua:693
self = <table> {
 Unit = <table> {
 }
 modules = <table> {
 }
 CancelTimer = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceTimer-3.0\AceTimer-3.0.lua:147
 Help = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:292
 ABBR = "PLR"
 UnregisterComm = <function> defined @Interface\AddOns\TomTom\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:153
 CHAT_MSG_WHISPER = <function> defined @Interface\AddOns\PersoLootRoll\Core\Events.lua:313
 TimerIsRunning = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:668
 lastLocked = <table> {
 }
 EVENT_VOTE = <function> defined @Interface\AddOns\PersoLootRoll\Core\Events.lua:673
 errorPrev = 0
 OnActiveChanged = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:366
 SetDefaultModulePrototype = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:409
 state = 1
 EVENT_ROLL_STATUS = <function> defined @Interface\AddOns\PersoLootRoll\Core\Events.lua:634
 CHANNEL_ALPHA = "alpha"
 IsEnabled = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:451
 ScheduleTimer = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceTimer-3.0\AceTimer-3.0.lua:94
 IsTracking = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:360
 versionNoticeShown = false
 errors = 0
 RegisterMessage = <function> defined @Interface\AddOns\TomTom\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:90
 UnregisterMessage = <function> defined @Interface\AddOns\TomTom\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:153
 ECHO_LEVELS = <table> {
 }
 EVENT_BID = <function> defined @Interface\AddOns\PersoLootRoll\Core\Events.lua:647
 hooks = <table> {
 }
 CheckState = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:307
 SendCommMessage = <function> defined @Interface\AddOns\DataStore\libs\AceComm-3.0\AceComm-3.0.lua:87
 RegisterErrorHandler = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:581
 EnableChatLinksHook = <function> defined @Interface\AddOns\PersoLootRoll\Core\Hooks.lua:259
 LogExport = <function> defined @Interface\AddOns\PersoLootRoll\Core\Addon.lua:560
 UnregisterAllComm = <function> defined @Interface\AddOns\TomTom\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:174
 SetEnabledState = <function> defined @Interface\AddOns\AckisRecipeList\libs\AceAddon-3.0\AceAddon-3.0.lua:424
 Hook = <function> defined @Interface\AddOns\AzeriteTooltip\libs\AceHook-3.0\AceHook-3.0.lua:274
 PLH = <table> {
 }
 GROUP_JOINED = <function> defined @Interface\AddOns\PersoLootRoll\Core\Events.lua:99
 EVENT_BID_WHISPER = <function> defined @Interface\AddOns\PersoLootRoll\Core\Events.lua:662
 OnEnable = <function> defined @Interface\AddOns\PersoLootRoll\Core\Ad
commented

Yeah, I've seen similar issues before. But as you say the issue seemingly occurs at random, and the affected row being different as well as it just cuts where it currently is in the execution when it times out.

If you are using the pandemic highlighting option you could try turning it off as that is the current suspect. But as the issue is sporadic it's hard to say for sure and fix it.

commented

I did have that option turned on, I turned it off now (assuming there's only one option to turn off, I didn't spot a second).

Have you heard of users disconnecting from the game 2-3 times with code WOW51900319 when the game is first loaded? When those disconnects started happening, I had made sweeping changes to my UI (from ElvUI to GW2_UI and from no plates to NeatPlates), so I can't be sure if the disconnects are related.

I figured I'd ask since the symptoms are similar (game freezing for a certain amount of time), although with the issue in the OP the game does continue running.

commented

Never seen any reports of disconnects when using Neatplates. But I have heard of some reports of freezes and then having this error after it unfreezes. Although this is like 1 or 2 people, so it's possible that the freeze caused the error, or that there's some rare combination of addons that cause this.

If it's a common occurrence for you, try turning of the addon and see if it goes away. I'd be very interested if it is somehow caused by Neatplates.

commented

Here's another occurrence. Screwed up a Torghast run :(

1x NeatPlatesHub\functions\Widgets.lua:553: script ran too long
[string "@NeatPlatesHub\functions\Widgets.lua"]:553: in function <NeatPlatesHub\functions\Widgets.lua:547>
[string "@NeatPlatesWidgets\AuraWidget.lua"]:316: in function <NeatPlatesWidgets\AuraWidget.lua:256>
[string "@NeatPlatesWidgets\AuraWidget.lua"]:466: in function <NeatPlatesWidgets\AuraWidget.lua:459>
[string "@NeatPlatesWidgets\AuraWidget.lua"]:487: in function `Expire'
[string "@NeatPlatesWidgets\WidgetCore.lua"]:61: in function <NeatPlatesWidgets\WidgetCore.lua:52>

Locals:
aura = <table> {
 type = "Magic"
 effect = "HARMFUL"
 duration = 5
 baseduration = 2.500000
 unit = "nameplate2"
 stacks = 0
 name = "Wake of Ashes"
 reaction = 1
 expiration = 586900.133000
 caster = "player"
 spellid = 255941
 texture = 1112939
}
spellid = "255941"
name = "Wake of Ashes"
r = 0
g = 0.400000
b = 1
(*temporary) = <table> {
 TextShowOnlyOnActive = false
 WidgetAuraSort = 1
 TextShowOnlyOnTargets = false
 WidgetPandemic = false
 ColorFriendlyBarMode = 1
 WidgetBuffEnrage = false
 ColorFriendlyStatusTextMode = 1
 UnitSpotlightLookup = <table> {
 }
 EnemySubtext = "None"
 StyleFriendlyBarsNoTotem = false
 EnableOffTankHighlight = false
 BorderBuffEnrage = 1
 OpacityFilterNonElite = false
 Theme = "Neon"
 StyleShowEnemyPowerBar = false
 SpellCastEnableFriendly = false
 ColorPartyAggro = <table> {
 }
 FriendlySubtext = "None"
 OpacityFilterPlayers = false
 StyleEnemyBarsInstanceMode = false
 UnitSpotlightOpacityEnable = true
 EmphasizedAuraScale = 2
 StyleFriendlyBarsOnPlayers = true
 OpacityFilterLookup = <table> {
 }
 ColorThreatTransition = <table> {
 }
 FriendlyNameColorMode = "Default"
 HighlightMouseoverScale = <table> {
 }
 ColorTarget = <table> {
 }
 ColorEnemyStatusTextMode = 1
 WidgetRangeMode = 1
 OpacityNonTarget = 0.500000
 EmphasizedSlots = 1
 FilterScaleLock = false
 StyleEnemyBarsOnElite = true
 StyleEnemyBarsNoTotem = false
 OpacitySpotlightSpellInt = false
 IntCastWhoEnable = true
 OpacityFilterFriendlyNPC = false
 UnitSpotlightColor = <table> {
 }
 CastbarDurationMode = "None"
 StyleEnemyBarsClickThrough = false
 StyleFriendlyBarsClickThrough = false
 ColorBuffPurgeable = <table> {
 }
 StatusTextRight = 7
 WidgetBuffFilter = 1
 HideAuraInHeadline = false
 HeadlineEnemyColor = 4
 TextColorNeutral = <table> {
 }
 WidgetArenaIcon = false
 WidgetAuraTrackCurse = true
 HighlightFocustMode = 1
 CustomColorList = ""
 WidgetEnableExternal = true
 AuraScale = 1
 WidgetQuestIcon = false
 ColorPandemic = <table> {
 }
 BorderBuffPurgeable = 1
 StatusTextCenterColor = true
 ColorFriendlyNameMode = 1
 TextColorGuildMember = <table> {
 }
 WidgetDebuffLookup = <table> {
 }
 StyleEnemyMode = 1
 HighlightTargetMode = 1
 HeadlineFriendlySubtext = "RoleGuildLevel"
 OpacityFilterNonPartyMembers = false
 WidgetBuffPurgeable = false
 WidgetThreatIndicator = true
 ThreatSoloEnable = true
 WidgetAuraScaleOptions = <table> {
 }
 SpellIconEnable = true
 ColorEnemyNameMode = 1
 StyleFriendlyBarsInstanceMode = false
 ColorFriendlyNPC = <table> {
 }
 OpacityFilterMini = false
 WidgetAuraTrackMagic = true
 ScaleFunctionMode = "ByThreat"
 TextColorFriendlyPlayer = <table> {
 }
 WidgetRangeScaleOptions = <table> {
 }
 WidgetThreatPercentage = false
 OpacityFullNoTarget = true
 ColorThreatWarning = <table> {
 }
 StatusTextLeftColor = true
 EmphasizedAuraPriority = <table> {
 }
 PreciseAuraThreshold = 10
 ColorHighHealth = <table> {
 }
 HeadlineFriendlyColor = 4
 StyleHeadlineMiniMobs = false
 SpacerSlots = 1
 StyleFriendlyBarsNoMinions = false
 FriendlyStatusTextMode = "HealthFunctionNone"
 OpacityFilterFriendlyPlayers = false
 WidgetDebuffPriority = <table> {
 }
 EmphasizedAuraList = ""
 StyleFriendlyBarsOnElite = false
 WidgetAbsorbIndicator = false
 CastBarWidth = 1
 ColorHealthBarMode = 3
 StyleFriendlyBarsOnActive = true
 FrameBarWidth = 1
 ColorFriendlyPlayer = <table> {
 }
 HeadlineEnemySubtext = "RoleGuildLevel"
 FriendlyBarColorMode = "ByReaction"
 ColorRangeFar = <table> {
 }
 StyleHeadlineOutOfCombat = false
 AltShortening = false
 ColorRangeClose = <table> {
 }
 FrameVerticalPosition = 0.700000
 TextUseBlizzardFont = false
 WidgetMyBuff = false
 TextColorPartyMember = <table> {
 }
 TextShowUnitTitle = false
 ColorHostileNPC = <table> {
 }
 StyleEnemyBarsOnActive = true
 UnitSpotlightGlowEnable = true
 WidgetAuraTrackDisease = true
 ColorAttackingOtherTank = <table> {
 }
 StyleForceBarsOnTargets = false
 OpacityFilterFriendlyPet = false
 ClassIconScaleOptions = <table> {
 }
 WidgetDebuff = true
 ClassColorPartyMembers = false
 ScaleIgnoreNonEliteUnits = false
 ScaleTargetSpotlight = false
 WidgetAbsorbMode = 1
 St
commented

Since these issues all seem to mention the expiration function I've changed this function to only update the affect aura instead of the entire aura widget as it did previously. And although this could lead to some visual issues with auras leaving empty slots in the widget, as they aren't re-sorted, I haven't come across any such issues during my testing as of yet.

And I've released a new version with this change in it to hopefully resolve this issue, and if it does resolve it but ends up causing side effects at least I know what to look at.

commented

I've been experiencing this as well.

This is what it captured, though it looks like it cuts off at the bottom

https://pastebin.com/BPnEGFMV

commented

Doing a bit of cleaning up and closing issues that are stale, or has been resolved by never confirmed to be resolved. If you believe this is in error, please comment and I'll re-open the issue again.