We're starting by capping the number of Inspects that can be sent in a 10-second time frame. It'll likely be 5 Inspects, but that could change in either direction.

Keep in mind that this change is intended to help those using addons which are sending a lot of these requests from lagging or disconnecting. If you're not actually using such addons, and therefore not sending a large number of queries to our database, the change won't affect you either way. You're not lagging or disconnecting because someone else in a raid or major city is unknowingly spamming such requests.

It's important to understand that this wasn't really the fault of addon authors. This needed to be fixed because we were allowing something we really shouldn't have. Many addons pull Inspect data when mousing over characters and there was nothing on our end to throttle the rate at which that data could be pulled. So if you're standing in Dalaran with one of these mods and slide your mouse across the screen and over several characters within a very small amount of time, your client is spamming the database with Inspect queries. We're correcting that issue on our end.

=========================================================

After the next set of rolling restarts, Blizzard will be implementing server-side throttling of inspection requests from addons. This may cause any addon that uses player inspection to not function properly after the restarts.

This throttle is being activated in order to reduce server load from some addons that use the inspection system. Currently any addon can request inspection data from the server as often as they want, and this problem seems to have gotten worse with the new patch.

Most addons will continue to function properly, however keep this in mind as you play with your addons. If you are an addon developer, you may want to restructure your addon so that it no longer expects an event reply for an inspection request. With most throttled API calls, a throttled request will simply disappear into the void with no response.

UPDATE: It appears that the rolling restarts may be delayed until the next maintenance window, but the next set of restarts should activate the throttle mechanism.

__________________
"There's only one thing that I know how to do well and I've often been told that you only can do what you know how to do well, and that's be you-- be what you're like-- be like yourself. And so I'm having a wonderful time, but I'd rather be whistling in the dark..."

Before there's too much speculation, I should specify that although there is an issue with server traffic at the moment and Blizzard are taking action to resolve it on their end, GearScore and addons like it that use the inspection API will continue to function, but they may need to be a bit more conservative about the number of inspect calls they are making.

__________________
"There's only one thing that I know how to do well and I've often been told that you only can do what you know how to do well, and that's be you-- be what you're like-- be like yourself. And so I'm having a wonderful time, but I'd rather be whistling in the dark..."

It's not the end of GearScore and the like. The problem is that so many players use it as a staple of who's "good" nowadays that it's bogging down the process. As Cladhaire said, they'll just have to throttle their checks now to reasonable levels. I think everyone will notice a drastic improvement in performance while in Dalaran as well.

GearScore will still be a requirement to play WoW, sorry to say.

__________________

Originally posted by Mirrikat45 so says the 1/2 million downloads per week.......

Impossible statistics = FAIL!! But don't point this out, or your post will be deleted!

In the short term, gearscore is probably going to break other addons. 99% chance, in fact. I've had users report that gearscore blocks the inspect API, failing to properly relinquish it correctly until it finishes a round of profiling. After this change, that block could span multiple timeout attempts. I hope they change that architecture sooner than later, to relinquish control of the inspect API after each transaction like a good little addon.

In the long term, I wonder what changes are coming to the actual API calls. It would be fantastic to receive success/ignore codes after requesting inspect data, have functions to check the current status/timer on the inspect API, and generally have proper facilities in place to "play nice" with the blizzard servers.

My addon is completely reliant on the inspect API. While It's designed as a single-threaded-apartment-model system, and therefore timeout safe, I'd still appreciate a guesstimate (or official #) for when to expect potential bug reports to come in.

I'm also extremely curious what the server-side numbers are going to be. I would hate to burst the server every 1/5/10 seconds if it's just going to have to parse & ignore the requests; it would also suck to make requests every 29 seconds if the timeout is 30 seconds :P

My addon is completely reliant on the inspect API. While It's designed as a single-threaded-apartment-model system, and therefore timeout safe, I'd still appreciate a guesstimate (or official #) for when to expect potential bug reports to come in.

No, it'll happen when it happens.

I'm also extremely curious what the server-side numbers are going to be. I would hate to burst the server every 1/5/10 seconds if it's just going to have to parse & ignore the requests; it would also suck to make requests every 29 seconds if the timeout is 30 seconds :P

As I understand it the numbers will probably change over time as they tweak to get it to reasonable values. There's not all that much more I can say other than that.

__________________
"There's only one thing that I know how to do well and I've often been told that you only can do what you know how to do well, and that's be you-- be what you're like-- be like yourself. And so I'm having a wonderful time, but I'd rather be whistling in the dark..."

My addon is completely reliant on the inspect API. While It's designed as a single-threaded-apartment-model system, and therefore timeout safe, I'd still appreciate a guesstimate (or official #) for when to expect potential bug reports to come in.

I'm also extremely curious what the server-side numbers are going to be. I would hate to burst the server every 1/5/10 seconds if it's just going to have to parse & ignore the requests; it would also suck to make requests every 29 seconds if the timeout is 30 seconds :P

Keep in mind that any sort of throttling to the inspect UI will also 'break' the default one. I'd be surprised if it was 30 seconds, probably will end up around 5 - 10 seconds.

I hope gearscore bites the dust, or at least the in game version of it.

Please, this is not the place for a GearScore discussion. At all.

__________________
"There's only one thing that I know how to do well and I've often been told that you only can do what you know how to do well, and that's be you-- be what you're like-- be like yourself. And so I'm having a wonderful time, but I'd rather be whistling in the dark..."

I'm not a addon developer (hell, last time I touched lua was in mirc...) but I am an experienced programmer in other languages, so please excuse me if this is a stupid point...

The server has to send item data to the client so it can draw the correct armour every time you see a player. I'm just going to assume this is a simple skin id array. Why can't the server send an item id array, that the client looks up and loads the correct item data. This way, addons like gearscore won't need to do an inspect request, but access the cached item data instead.

Surely this would only increase server -> client player data by a small %, but allow the continued use of inspect-based addons without touching the inspect api at all?

I'm not a addon developer (hell, last time I touched lua was in mirc...) but I am an experienced programmer in other languages, so please excuse me if this is a stupid point...

The server has to send item data to the client so it can draw the correct armour every time you see a player. I'm just going to assume this is a simple skin id array. Why can't the server send an item id array, that the client looks up and loads the correct item data. This way, addons like gearscore won't need to do an inspect request, but access the cached item data instead.

Surely this would only increase server -> client player data by a small %, but allow the continued use of inspect-based addons without touching the inspect api at all?

Think of a zone like Dalaran, the majority of the players that are loaded you will never inspect, or Ironforge or Orgrimmar. A little bit of data adds up and you would have to add gems as well as non-visible enchants too. The vast majority of it would end up being unused, especially if the player isn't running an inspect mod.

If I had to take a guess, the majority of Gearscores requests are due to poor coding causing it to unnecessarily send requests on the same player. While caching would help it, it's an issue that could be fixed by competent coding. Anyway, if you want to believe the Blizzard post, it's not specifically due to Gearscore either. Tooltip mods do inspection requests on mouseover, various UFs do it on target, etc.

Think of a zone like Dalaran, the majority of the players that are loaded you will never inspect, or Ironforge or Orgrimmar. A little bit of data adds up and you would have to add gems as well as non-visible enchants too. The vast majority of it would end up being unused, especially if the player isn't running an inspect mod.

I've spent the last 3 days solid writing stream and data parsing for flv/amf, mp4 and ogg files. The main thing I've learnt from this, is the amazing extents you can go to with reducing data sizes. Packing a 4 byte integer into 1 byte using the high bit as a "is there another byte to this" flag, that sort of thing.

I've not noticed Gearscore pay attention to gems or enchants in its scoring, though I could be wrong.

Having a hefty delay in the inspect api, and proving item id data minus gem and enchant data for general use, plus someone adapting and improving addons to take advantage of the above (the inspect api throttling should be motivation enough), should in theory continue to reduce server load even further and not increase data transmission.

Another small thought: At least some enchant data must be transmitted already, for the graphical effects to be shown, making my points above even more valid.

This is not a permanent solution. It's a stop-gap solution to solve a problem. Anything else will require a client patch. This does not just affect addons, it affects the default user interface.

__________________
"There's only one thing that I know how to do well and I've often been told that you only can do what you know how to do well, and that's be you-- be what you're like-- be like yourself. And so I'm having a wonderful time, but I'd rather be whistling in the dark..."

This is not targeted at specific addons. It's being done to solve an issue that they are experiencing on the server-side of things. This is not the appropriate place for you to express whatever hate you seem to have towards any particular kind of addon.

If you do not have any constructive opinions about the actual news post, then don't bother posting here.

__________________
"There's only one thing that I know how to do well and I've often been told that you only can do what you know how to do well, and that's be you-- be what you're like-- be like yourself. And so I'm having a wonderful time, but I'd rather be whistling in the dark..."