No Downtime - Again!

3 Likes

There are, explicitly, respawning mining sites in the newbie systems. Added because the systems are always mined out.

If I had to make a guess: There is no asteroid respawn code.

There is the mentioned job to add ore to each asteroid in the database.

There is spawn code, which goes through the database, and creates each of the asteroids at a specific location in space, with the amount of ore that the database says it has in it.

Doesn’t need to check if the asteroid exists, because after downtime, none of them do.

So if you just rerun it, you’ll end up with duplicate asteroids (or it will just break)

So you would need to despawn all the asteroids before you run it. Or you have to update the database, then go through each asteroid, update its contents to match the database (because state would generally flow from the simulation to the database, rather than the other way) and create the ones which don’t exist.

I mean it’s doable, but it’s a bunch of work to do for a limited number of tests, when you’re planning on changing it anyway.

1 Like

Thats… exactly the circular reasoning I wasnt after.

Never mind. I guess the reason is “mysterious CCP decision”

Right, so… dont change it?

You know what, never worry.

I guess CCP enjoy people tinfoiling about why CCP does things. Thats why they never explain anything.

What about the asteroid belts and stuff? They reset during downtime, so if downtime is removed, when will they reset?

They said never, and when I asked why, they said because they only respawn at downtime.

1 Like

I don’t see the point in this. Everyone is fine with downtime for 20 to 30 minutes per day. It is important that databases have downtime as fault finding and creating a backup is easier.

2 Likes

They usually take less than five minutes. :mantelpiece_clock:

For the regular asteroid belts: Confirmed.

1 Like

That system needs to be reworked to not depend on a DB job during downtime, before we make fewer downtimes the norm.

2 Likes

Well if stuff is not going to Re-spawn

Then just maybe you should not take away the DT, until all this code is functioning correctly…

Ya Think

I am sorry I do not want this game to turn into " Star Citizen " daaaaa

3 Likes

Right, I think this is a waste of time, effort could be focused elsewhere. I suppose it is okay to do this if it’s to collect data on how the system copes without or with fewer downtimes.

It might be worth checking if the databases become bloated with no downtime, In my experience most databases perform more efficiently once deleted index/table storage space has been reclaimed. I’d Imagine the process for reclaiming storage space needs to be done when the system is offline.

1 Like

This is a test.

So they can identify problems.

They know it’s not ready to just remove downtime forever.

However, there’s two different workstreams here. There’s the game design ones (how do we deal with respawning asteroids), and there’s the technical ones (where are there memory leaks which we have to squash)

This is for the technical work, not the game design work. One doesn’t depend on the other, except for the final rollout.

And the technical work requires tests at scale. It’s hard to test at the scale that TQ runs at, without actually doing it live.

This is a short duration test, ignoring one downtime. not permanent yet.

8 Likes

That’s not something which is going to happen at downtime.

Not unless you want a far longer downtime to do consolidation. 5 minutes isn’t going to be enough to consolidate the tables of that size.

They’re using an enterprise class database, so it can do consolidation online. Performance will suffer, of course, but it’s possible. With the amount of changes we pump at it, I suspect it’s less of a benefit than you might think.

2 Likes

Please feed, water, & caffeinate the hamsters they are a little sluggish. Docking & un-docking is especially noticeable. I almost fell like we have gone back to 2014-2016 times.

If they have, nothing to do with this.

As it hasn’t happened yet. As today is Wednesday. And the test is happening at Thursday’s downtime.

I’m not talking about consolidation.

I’ve googled: What is Database Bloat?

Answer: Database bloat is disk space that was used by a table or index and is available for reuse by the database but has not been reclaimed. Bloat is created when updating tables or indexes. … Running the VACUUM command regularly on tables prevents them from growing too large.

So, lets say we have the databases for the market. as you know records will be created when we put stuff on the market and deleted once the stack of items in the sell order sell through.

My point is that the storage space used to store the market order which has sold through within the table may still be claimed. So when another user comes to put an order on the market instead of efficiently using the space which no longer contains a market order, the database will create a new space and store the data in a new record within the table.

So lets say there are 10,000 unclaimed spaces for deleted records after 23 hours of game operation, without downtime if a user queries the market then the database will waste time looking in those 10,000 records. I believe part of the downtime process involves purging these storage spaces so the database doesn’t waste time searching these records.

I hope I’ve explained this well, if there is a dev that can confirm this we can move the convo forward.

I’m a DBA (well, sysadmin. But I’ve been trained as a DBA too), so I do know what you’re talking about.

TQ runs on an MS SQL server cluster. So it doesn’t actually have a Vaccum alternative. There’s background processes to deal with unused space, and consolidate it into larger unused chunks.

To remove it completely would be shrink database. Only really beneficial to save space. And expensive time wise.

Database bloat from space is nowhere near the concern you’re thinking when you’re not using postgres. Even with it, it’s not so much of a concern, especially with a table like market data, which isn’t really variable length rows.

4 Likes

Veldspar only - and harder work as the rocks are spaced out a lot further. Even new players need pyrite and mexallon for some of their basic tasks.