Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Digtrons losing entire sections of parts at random #35

Open
GreenXenith opened this issue Jan 2, 2019 · 4 comments
Open

Digtrons losing entire sections of parts at random #35

GreenXenith opened this issue Jan 2, 2019 · 4 comments
Labels

Comments

@GreenXenith
Copy link
Contributor

GreenXenith commented Jan 2, 2019

Digtrons seem to loose entire sections of parts. First it happened to one player with a decently sized digtron (~50 digging heads lost at random), then it happened to a player with ~100 digging heads. So I assumed that it just wasn't smart for people to run huge digtrons at laggy times. But then someone with 4 digtron heads lost them (with only one other person online, so likely no lag). No debug.txt output showing anything went wrong at any of these times. Interestingly, the large digtrons lost all of the front diggers, where the 4-digger digtron lost the second section of diggers.
I am looking for possible causes, but opened this in case it helped.

@GreenXenith
Copy link
Contributor Author

Info from the 4-digtron user:

I had interupted the cycle so that i could look into a cave opening, and on resume, it didn't dig the sides.

Perhaps there is a race condition somewhere? But as far as I know, this was not the case for the other two losses.

@FaceDeer
Copy link
Member

FaceDeer commented Jan 3, 2019

Did this just start happening with the latest commits, or is it a longstanding issue? Are you on a recent 5.0 version of Minetest, or still back on 0.4.16? I'll try to reproduce it locally. I've already started work on a branch where I'm doing general cleanup and optimization so that might help too, I've discovered that Lua can do strange things when its garbage collection gets overwhelmed.

@GreenXenith
Copy link
Contributor Author

I've never experienced it until I started using it on my server (past month).

or still back on 0.4.16?

Latest stable, 0.4.17.1

@FaceDeer
Copy link
Member

I was finally able to reproduce this bug on my local machine. After a whole bunch of tinkering I think I found a way to stop it, or at least the manifestation of it that I was getting; there was apparently a way to get incomplete digtron layouts read into memory when a digtron was adjacent to unloaded blocks. I've put a stop to that and when I did the bug stopped reproducing locally again.

If this was all that was causing this then I'm going to find a way to travel back in time and punch myself in the neck. But at least most of the optimization work I did in the past while was stuff that was good to do anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants