World of Warcraft

80
View All Posts by This User Toggle Ignore / Unignore This User
  • 0. Memory allocation block too big UI crash   06/08/2008 11:07:52 AM PDT
quote reply
Recently, I've been experiencing a pretty frequent LUA bug that looks like this:

memory allocation error: block too big:
<in C code>: in function `GetRegions'
CowTip-r68121\Appearance\Appearance.lua:382: in function `SetFont'
CowTip-r68121\Appearance\Appearance.lua:272: in function `Show'

Following this error is a more or less complete UI crash (various UI elements, but not necessarily all of them at once - all of which are mods in my case) cease functioning, and often WoW crashes completely shortly afterwards. If I'm lucky /camp will still work, and in rare cases I manage to shut down WoW gracefully.

Before this error happens (usually during raiding), I can see my UI memory usage go up constantly by pretty absurd amounts; however, memory monitoring mods (such as PerformanceFu) are not attributing the bulk of it to any mod. Talking about up to 100mb here over the course of a few hours of raiding.

Now, as you can see, this is apparently triggered by CowTip (a popular tooltip mod); however, with my limited knowledge I'd think this more looks like an issue in actual WoW code that is triggered by font management and apparently only really happens when many mods modify tooltips and lots of them are shown over time. The fact that UI memory usage mods are not attributing much of the memory used to any mod makes me think there might be some sort of leak on Blizzard's side of the UI code?

For now, I've stopped using CowTip; however, if my guess above is correct, I figured it might be worth posting here, since other mods/combination of mods or even the basic UI might affected in some way.
77
View All Posts by This User Toggle Ignore / Unignore This User
  • 1. Re: Memory allocation block too big UI crash   06/08/2008 11:18:03 AM PDT
quote reply
This issue has been discussed a bunch, on and off. Some theorizing and testing has come up with the conclusion that it's caused when one of the internal Lua data structures tries to allocate a larger memory block than is available -- this is a HUGE limit, so the problem is almost certainly caused by AddOn code doing something wrong (or perhaps just 'unique') which WoW doesn't handle well.

UI and Macros Forum MVP - Understand GC!
80
View All Posts by This User Toggle Ignore / Unignore This User
  • Eldre'Thalas
  • 2. Re: Memory allocation block too big UI crash   06/09/2008 11:34:54 AM PDT
quote reply
There's been an ongoing discussion of the issue on the WowAce forum here: http://www.wowace.com/forums/index.php?topic=12787.0
80
View All Posts by This User Toggle Ignore / Unignore This User
  • Darkspear
  • 3. Re: Memory allocation block too big UI crash   06/09/2008 11:42:25 AM PDT
quote reply
I don't mean to derail the thread, but im gonna do it any way : /

Since this topic was about addons crashing your UI, i thought it was relevant to post in here.

I use A LOT of addons, and it seems after playing for about 3-5 hours my UI will screw up. My cast bars cease to work, if i type something i can't send it to the server to display (i'll hit enter and it wont do anything), i can't click on anything. Any how, shorty after all these crazy bugs start happening i will error 132 out.

I use dot timers, deadly boss mods, prat, and mik's scrolling battle text. I suspect its one of these addons (if its not a hardware issue. i'm also looking into some memory settings), probably dot timers since its so out of date.

Any one else experiencing anything similar?
1
View All Posts by This User Toggle Ignore / Unignore This User
  • Sentinels
  • 4. Re: Memory allocation block too big UI crash   06/09/2008 11:50:09 AM PDT
quote reply
That actually sounds like an overheating issue to me....

Disable your addons and play, to get a baseline. But start working with the people in the tech support forum, they can give you a lot of advice on hardware issues.

Lopeppeppy Sprocket Erth'algos
UI & Macros Forum MVP

I apologize profusely for any inconvenience my murderous rampage may have caused.
80
View All Posts by This User Toggle Ignore / Unignore This User
  • Darkspear
  • 5. Re: Memory allocation block too big UI crash   06/09/2008 11:56:43 AM PDT
quote reply
I thought it might be an over heating problem too, but i can log right back in in under 30 sec. and its good for another 3-5 hrs or so. i would think after an over heating crash that it would crash again upon entry until it cools off some.
80
View All Posts by This User Toggle Ignore / Unignore This User
  • Eldre'Thalas
  • 6. Re: Memory allocation block too big UI crash   06/09/2008 12:17:41 PM PDT
quote reply
That sounds exactly like the symptom of this memory error actually. Addons stop being able to allocate memory for some reason and start bugging out. Sometimes if I catch it right away I can manage to reload my UI before it crashes, but usually a crash to the desktop is the end result.
80
View All Posts by This User Toggle Ignore / Unignore This User
  • 7. Re: Memory allocation block too big UI crash   06/09/2008 12:47:27 PM PDT
quote reply
After reading through the mentioned thread over at the wowace forums and some more here that were linked to me (I had searched for "memory" and "allocation" on this forum, but had no results, or I'd have used an existing topic), and, as far as I'm able to tell, this very much looks like a problem on Blizzard's side.

As a few people pointed out, it appears as this problem happens when there is a lot of memory allocation going on very rapidly. People are reporting about this happening almost exclusively at times when a lot of garbage producing addon activity is going on.

Frequently mentioned culprits appear CowTip as mentioned by me, ArkInventory with many inventory changes (such as retrieving mas mail), Recount during raiding (which in heavy aoe fights can blow up memory usage temporarily extremely fast), Auctioneer during AH scans (memory intensive for fairly obvious reasons) etc.

Some people are also observing the same issue that I see - namely, reported addon memory usage growing rapidly and with somewhat extreme values while this memory usage is not attributed to any addon and does not get freed by GC.

I can't really judge if this is related, but it certainly sounds like something weird, so I'll quote two things here in case Slouken or other Blizzard folks do want to check if there's something b0rked on their end.

One is a post in the above linked wowace thread by Xinhuan:

Q u o t e:

It might be useful to know that the following script can also cause a Block too big error, but it won't crash WoW. Tables seem to have a maximum limit of somewhere between 8 MB and 16 MB in Lua in WoW.

Code:
/run i = 0; abc = {}; while true do i = i + 1; abc[i] = i; end
/dump i

That will print the value of i when the block too big occurs, and this number should be 2^19 + 1. This is just before array tables are doubled in size from 8 MB to 16 MB.

Code:
/run i = 0; abc = {}; while true do i = i + 1; abc[i*100] = i; end

would change the table to hash style, and the limit is lower, but still a power of 2. You can GC the table by running /run abc = nil after your experiment, your wow will not crash or anything.

This points to clues that the GetRegions() call somehow manipulates internal tables of frames and regions to return results, since the Block too big error is occurring inside it for many cases. When the call doesn't return, something in memory got corrupted and wow eventually crashes.

The hypothesis is that Cowtip is generating lots and lots of fontstrings and regions on GameTooltip and when it exceeds a certain limit, the error occurs.


and the other is an addon designed (and successful at it) to crash WoW in relation to this error:

http://www.wowinterface.com/downloads/info8741-TooMuchData.html

Also notable - one player reported this error triggered by Blizzard code (presumably in conjunction with other addons):

Q u o t e:

[2008/05/22 19:01:19-2830-x3]: memory allocation error: block too big:
<in C code>: in function `SetAttribute'
Interface\FrameXML\SecureStateDriver.lua:98: in function Interface\FrameXML\SecureStateDriver.lua:79>:


Okay, I'm done with my Wall Of Text. I hope this is helping drawing Blizzard's attention towards this issue.
Forum Nav : Jump To This Forum
Blizzard Entertainment