TellMeWhen

TellMeWhen

24M Downloads

[CF 1572] LUA Error

tmw-issue-import opened this issue ยท 18 comments

commented

8.5.3-1-g8049e99c-alpha

 

39x [string "safecall Dispatcher[1]"]:9: script ran too long
[string "safecall Dispatcher[1]"]:9: in function <[string "safecall Dispatcher[1]"]:5>
(tail call): ?
TellMeWhen\TellMeWhen-8.5.3.lua:2669: in function `UpdateNormally'
TellMeWhen\TellMeWhen-8.5.3.lua:2790: in function `Update'
TellMeWhen\TellMeWhen-8.5.3.lua:2798: in function `?'
ElvUI\Libraries\AceTimer-3.0\AceTimer-3.0-17.lua:55: in function <ElvUI\Libraries\AceTimer-3.0\AceTimer-3.0.lua:50>

Locals:
func = <function> defined @TellMEwhen\Components\Core\Group.lua:424
(*temporary) = true
(*temporary) = "script ran too long"
method = <function> defined @TellMEwhen\Components\IconModules\IconModule_IconContainer\IconContainer.lua:35
arg1 = <table> {
lmbGroup = <table> {
}
IsImplemented = true
IsEnabled = true
implementationData = <table> {
}
hasSkinned = true
icon = TellMeWhen_GlobalGroup24_Icon1 {
}
container = TellMeWhen_GlobalGroup24_Icon1IconModule_IconContainer_MasqueIconContainer {
}
}
xpcall = <function> defined =[C]:-1
call = <function> defined safecall Dispatcher[1]:3
eh = <function> defined @TellMEwhen\TellMeWhen.lua:459

 

Might have something to do with my the [Stacks] tag in my RB icon keeps saying 0 stacks when I know that's not the case? Also see references to Masque or Elv so this might not even be related to TMW in the end.


Posted by CurseForge user Jalopyy | Imported from CurseForge issue #1572 | Raw

commented

Is there any extra information you need for this?


Posted by CurseForge user Jalopyy

commented

Did the error happen *after* you were loaded into the arena, or was the error already there when the loading screen finished (i.e. it happened during the loading screen, not after it)?


Edited Oct 7, 2018

Posted by CurseForge user Cybeloras

commented

Try g6bc49450 and see if that does anything to fix the issue. It was just a shot in the dark, so I'm not sure if it will or not.


Posted by CurseForge user Cybeloras

commented

I honestly have no way of telling if it happened in the loading screen or after, that I'm aware of? How would I know?


Posted by CurseForge user Jalopyy

commented

This seems to fix it. I'll update if something changes. 


Posted by CurseForge user Jalopyy

commented

Just wondering if the error message is already there right when the loading screen is done, or if its happening at some point after that when you're able to move your character, cast spells, etc.


Posted by CurseForge user Cybeloras

commented

The former, then. It's in my bugsack the second I load in.


Posted by CurseForge user Jalopyy

commented

For me this issue was with empty TMW frame with inside conditions when frame wasn't even enabled or anyhow selected as icon type. 


Posted by CurseForge user cordankos

commented

cordankos: ...what?

 

Jaloppy: assuming this is fixed consistently for you now. Open a new issue if it keeps happening.


Posted by CurseForge user Cybeloras

commented

 i have very similar error when i enter arena. is there a way to fix it?

 

1x [string "safecall Dispatcher[1]"]:9: script ran too long
[string "safecall Dispatcher[1]"]:9: in function <[string "safecall Dispatcher[1]"]:5>
(tail call): ?
TellMeWhen\TellMeWhen-8.5.4.lua:2658: in function `UpdateNormally'
TellMeWhen\TellMeWhen-8.5.4.lua:2790: in function `Update'
TellMeWhen\TellMeWhen-8.5.4.lua:2798: in function `?'
ElvUI\Libraries\AceTimer-3.0\AceTimer-3.0-17.lua:55: in function <ElvUI\Libraries\AceTimer-3.0\AceTimer-3.0.lua:50>

Locals:
func = <function> defined @TellMEwhen\Components\Core\Group.lua:424
(*temporary) = true
(*temporary) = "script ran too long"
method = <function> defined @TellMEwhen\Components\Core\Icon.lua:810
arg1 = TellMeWhen_Group27_Icon40 {
0 = <userdata>
LastUpdate = 0
ComponentsLookup = <table> {
}
Update_Method = "auto"
EventHandlersSet = <table> {
}
Modules = <table> {
}
attributes = <table> {
}
ID = 40
GUID = ""
position = <table> {
}
Enabled = false
Type = ""
NextUpdateTime = 0
TempGUID = "TMW:icon:1Rxi5T3w0BBb"
Name = ""
group = TellMeWhen_Group27 {
}
typeData = <table> {
}
lmbButtonData = <table> {
}
Components = <table> {
}
Events = <table> {
}
SettingsPerView = <table> {
}
viewData = <table> {
}
Conditions = <table> {
}
UnitConditions = <table> {
}
States = <table> {
}
}
xpcall = <function> defined =[C]:-1
call = <function> defined safecall Dispatcher[1]:3
eh = <function> defined @TellMEwhen\TellMeWhen.lua:459


Posted by CurseForge user sensorhs

commented

Get the latest alpha version.

 

https://wow.curseforge.com/projects/tellmewhen/files/2638522

 

If this doesn't fix it, then make a new ticket because it is likely a new error entirely.


Posted by CurseForge user Jalopyy

commented

8.5.3

 

1x [string "safecall Dispatcher[1]"]:9: script ran too long
[string "safecall Dispatcher[1]"]:9: in function <[string "safecall Dispatcher[1]"]:5>
(tail call): ?
TellMeWhen\TellMeWhen-8.5.3.lua:2669: in function `UpdateNormally'
TellMeWhen\TellMeWhen-8.5.3.lua:2790: in function `Update'
TellMeWhen\TellMeWhen-8.5.3.lua:2798: in function `?'
ElvUI\Libraries\AceTimer-3.0\AceTimer-3.0-17.lua:55: in function <ElvUI\Libraries\AceTimer-3.0\AceTimer-3.0.lua:50>

Locals:
func = <function> defined @TellMEwhen\Components\Core\Group.lua:424
(*temporary) = true
(*temporary) = "script ran too long"
method = <function> defined @TellMEwhen\Components\Core\Icon.lua:810
arg1 = TellMeWhen_GlobalGroup19_Icon33 {
GUID = ""
LastUpdate = 0
ComponentsLookup = <table> {
}
Update_Method = "auto"
EventHandlersSet = <table> {
}
attributes = <table> {
}
ID = 33
0 = <userdata>
Name = ""
typeData = <table> {
}
Enabled = false
Type = ""
NextUpdateTime = 0
TempGUID = "TMW:icon:1RZ8SG4sFDec"
group = TellMeWhen_GlobalGroup19 {
}
Modules = <table> {
}
position = <table> {
}
normaltex = <unnamed> {
}
lmbButtonData = <table> {
}
Components = <table> {
}
Events = <table> {
}
SettingsPerView = <table> {
}
viewData = <table> {
}
Conditions = <table> {
}
UnitConditions = <table> {
}
States = <table> {
}
}
xpcall = <function> defined =[C]:-1
call = <function> defined safecall Dispatcher[1]:3
eh = <function> defined @TellMEwhen\TellMeWhen.lua:459

 

So it's not just the alpha version.


Posted by CurseForge user Jalopyy

commented

Where were you when these errors happened? Were you in combat? Out of combat? What zone?


Edited Sep 9, 2018

Posted by CurseForge user Cybeloras

commented

In arena I believe, so in combat. I do believe it also happens in combat, but out of arena. Don't think it happens out of combat entirely. Will keep track from now on.


Posted by CurseForge user Jalopyy

commented

Its just really strange to me. I can no longer get "script ran too long" to trigger for me whatsoever no matter what I do.

 

It used to be that when any addon ran code for longer than 200ms while in combat, execution would be terminated with that error. TMW tries to limit each update to an absolute max of 50ms (which is still crazy high, but it helps prevent the errors in weird situations where there might be a random spike).

 

Even if I run some loop that takes 5 seconds to execute while in combat (I even tried specifically while in arena, and while engaged with a raid boss), the error doesn't happen - it just freezes my game for 5 seconds.

 

Its curious in your case because the stack traces you posted are showing that at the time you got these errors, InCombatLockdown() returned false. See https://github.com/ascott18/TellMeWhen/blob/master/TellMeWhen.lua#L2790. This suggests that you somehow got these errors while NOT in combat, which is extra bizarre because Blizzard's time limits have NEVER applied while not in combat.

 

When this does happen to you again, could you post the error and then be sure to clear out BugSack (I assume you're using BugSack) - it does some wonky things with the way it groups error messages that causes some detail to be lost unless you clear it out.


Posted by CurseForge user Cybeloras

commented

https://pastebin.com/kHjAStnB

 

1) I was out of combat and had 0 bugs in my Bugsack 

2) I tested out what would happen if I hit a target dummy in Zuldazar, no errors

3) I queued for an Arena Skirmish

4) Accepted the queue out of combat

5) Upon entering the arena, I received the above bug (Raging Blow icon still reported 2 stacks) 

6) Upon entering combat, my stacks immediately dropped to 0 after using a single charge, and the icon would not correct itself even if I had >0 charges.

 

Doesn't seem to happen in every arena, as it the error corrected itself as I left the arena and didn't happen on the next skirmish queue. And FWIW the above skirmish happened in Ruins of Lordaeron.

 

Also worth noting this was on the latest alpha version - 8.5.4-1-ge91a75f4-alpha


Edited Sep 10, 2018

Posted by CurseForge user Jalopyy

commented

https://pastebin.com/Hfr7bDMU

 

Another one, also in Ruins of Loraeron. I queued at least 5 games between this on varying maps with no error - it's possible this error is intrinsically linked with that specific map.


Posted by CurseForge user Jalopyy

commented

https://pastebin.com/Ku980Lmq

 

This is the export info for the icon that gets buggy when this error happens as well.


Posted by CurseForge user Jalopyy