+-+-

+-User

Welcome, Guest.
Please login or register.
 
 
 
Forgot your password?

+-Stats

Members
Total Members: 281
Latest: [FUN] JPS-1
New This Month: 0
New This Week: 0
New Today: 0
Stats
Total Posts: 22224
Total Topics: 7142
Most Online Today: 66
Most Online Ever: 249
(November 01, 2009, 02:50:51 am)
Users Online
Members: 0
Guests: 68
Total: 68

64 bits should be enough for everybody

Started by CCP, October 22, 2010, 05:00:58 pm

« previous - next »

0 Members and 1 Guest are viewing this topic.

CCP

64 bits should be enough for everybody
22 October 2010, 2:15 pm

tl;dr: We are changing the inventory system to use 64-bit numbers. It's a massive change with no gameplay functionality added/changed/removed. Only behind the scene changes that can break stuff! :p  But this step is necessary for the growth of EVE.

For the last 6 months we have been refactoring the inventory system in the game to use 64-bit numbers.

What does that mean?

Well... every item in the game has an ID in the database. And items are not just things in your hangar, like a stack of Veldspar or a Raven, every skill in your head is for example an item, extractors on planets, agents, solar systems, regions, characters, etc... basically almost everything is an item in EVE Online. Before this upcoming change these IDs could go up to 2,147,483,647 but after the change it can go up to 9,223,372,036,854,775,807, which is 2^63 - 1 (yes 63… we almost never use one of the bits). just by looking at the numbers you can see how much better the new system is!

 



 

Why are we doing this (seriously)?

We exploded the 32-bit range many years ago. To work around that, we have been recycling item IDs a few months after people have deleted their stuff. For example when someone blows up your ship every item that is destroyed in the process is moved to a junkyard. The item IDs in the junkyard are then recycled after some time so the ID can be reused for some other item. Recycling item IDs has bit us in the butt in the past. Logs that points to a specific item ID become invalid (so our logs show nothing!), when new item types are added the new extra info tables may not be handled properly in the junkyard cleanup script and that has caused us problems, and earlier this year the junkyard cleanup script itself failed and caused us some headache, anyone remember the black Friday? Then seeing Incarna coming soon(TM) we expect the item growth to be even more than it is today, so we see this problem only becoming larger. The growth could also actually finish the available item IDs, leaving us with nothing to recycle and nobody could create items anymore.  After this change we will stop recycling item IDs which is a very good thing... and no I don't hate the environment I just don't like recycling. We don't need to keep track of IDs that are available and an extra benefit from this is that we will know when items were created without having to have separate bookkeeping for it.

So, what’s the risks in this?

This change has been living on small internal test servers since 15th of August, large internal tests servers from 2nd of September and on SiSi since 15th of September.  But even though we have been testing this change extensively, there might still be fallout since this change touches almost every system in the game.

On the deployment day we will be monitoring feedback, error logs, bug reports and general server health very carefully and be ready to react quickly to any issue.  So deployment day is an “all hands on deck” day until we’re sure we’re sailing the smooth seas of awesome.

It will take a long time to convert all the existing data, so we expect around 14 hours of downtime when we do the upgrade. This will be time well spent though, since we will be gaining 183 trillions item IDs each second. :p

That was all

   CCP Creber Cattus

 

Source: eveonline.com | devBlog

+-Recent Topics

Patch Notes - Version 21.06 by CCP
April 23, 2024, 08:28:13 pm

Patch Notes - Version 21.06 by CCP
April 23, 2024, 12:00:25 pm

Patch Notes - Version 21.06 by CCP
April 17, 2024, 07:11:34 pm

Patch Notes - Version 21.06 by CCP
April 17, 2024, 01:54:38 pm

Patch Notes - Version 21.06 by CCP
April 17, 2024, 05:39:33 am

Patch Notes - Version 21.06 by CCP
April 16, 2024, 09:48:50 pm

Patch Notes - Version 21.06 by CCP
April 16, 2024, 01:45:53 pm

Patch Notes - Version 21.06 by CCP
April 09, 2024, 07:48:07 pm

Patch Notes - Version 21.06 by CCP
April 09, 2024, 01:08:22 pm

Patch Notes - Version 21.06 by CCP
April 05, 2024, 01:24:07 pm

Powered by EzPortal