"num_emerge_threads > 1" results in mapgen glitches at mablock borders due to lack of synchronization #850

Open
opened 2021-08-20 04:46:52 +00:00 by AliasAlreadyTaken · 10 comments

This bug (and not biome_lib) is responsible for cut off trees and 1 block high planes underground and 1 block spaced air in the nether.

Related:

#254
#682
#741
#687
#728
#730

Most likely, MOST of the construction tasks originate from this issue.

https://gitea.your-land.de/your-land/bugtracker/issues?q=&type=all&sort=&state=open&labels=30&milestone=0&assignee=0

The problem had been reported over a year ago:

https://github.com/minetest/minetest/issues/9357

This bug (and not biome_lib) is responsible for cut off trees and 1 block high planes underground and 1 block spaced air in the nether. Related: #254 #682 #741 #687 #728 #730 Most likely, MOST of the construction tasks originate from this issue. https://gitea.your-land.de/your-land/bugtracker/issues?q=&type=all&sort=&state=open&labels=30&milestone=0&assignee=0 The problem had been reported over a year ago: https://github.com/minetest/minetest/issues/9357
AliasAlreadyTaken added the
1. kind/bug
3. source/mod upstream
labels 2021-08-20 04:47:54 +00:00
Member
An older upstream issue: https://github.com/minetest/minetest/issues/5618
flux added
3. source/engine
and removed
3. source/mod upstream
labels 2022-05-29 02:52:27 +00:00
flux added the
2. prio/elevated
label 2022-08-05 23:56:24 +00:00
flux changed title from num_emerge_threads > 1 create 1 block high flats to "num_emerge_threads > 1" results in mapgen glitches at mablock borders due to lack of synchronization 2022-08-06 00:17:13 +00:00
Member

@AliasAlreadyTaken the new server is very fast - perhaps there wouldn't be a huge problem if we set num_emerge_threads = 1? mapgen would still happen in a separate thread.

@AliasAlreadyTaken the new server is very fast - perhaps there wouldn't be a huge problem if we set `num_emerge_threads = 1`? mapgen would still happen in a separate thread.

This is happening even after num_emerge_threads = 1, or that was never set? Or there were lot of similar errors created in the past, when that value was higher?

This is happening even after `num_emerge_threads = 1`, or that was never set? Or there were lot of similar errors created in the past, when that value was higher?
Member

This is happening even after num_emerge_threads = 1, or that was never set? Or there were lot of similar errors created in the past, when that value was higher?

correct, this happens even when num_emerge_threads = 1, though we've gone back to the default. it depends on the order in which chunks are generated.

> This is happening even after `num_emerge_threads = 1`, or that was never set? Or there were lot of similar errors created in the past, when that value was higher? correct, this happens even when `num_emerge_threads = 1`, though we've gone back to the default. it depends on the order in which chunks are generated.
Author
Owner

Means: There is no point in keeping that value at 1 ?

There are works underway to move the lua mapgen stuff to some async env

Means: There is no point in keeping that value at 1 ? There are works underway to move the lua mapgen stuff to some async env
Member

Means: There is no point in keeping that value at 1 ?

There are works underway to move the lua mapgen stuff to some async env

i don't think the lua mapgen stuff will help with this problem. most of the affected trees are schematics registered as decorations.

> Means: There is no point in keeping that value at 1 ? > > There are works underway to move the lua mapgen stuff to some async env i don't think the lua mapgen stuff will help with this problem. most of the affected trees are schematics registered as decorations.

Question is, if setting the value to more than 1 would not make things worse than now (i.e. the underlying problem occurring more often)

Question is, if setting the value to more than 1 would not make things worse than now (i.e. the underlying problem occurring more often)
Member

Question is, if setting the value to more than 1 would not make things worse than now (i.e. the underlying problem occurring more often)

my current understanding of the problem is that it's completely independent of the number of mapgen threads.

> Question is, if setting the value to more than 1 would not make things worse than now (i.e. the underlying problem occurring more often) my current understanding of the problem is that it's completely independent of the number of mapgen threads.
Member

then again, i feel like it's been really common in the last couple weeks? so i dunno.

then again, i feel like it's been *really* common in the last couple weeks? so i dunno.

Well, how common it is is heavily influenced by how much people are exploring (and finding blocks that were generated for them or generated in past and more or less unnoticed). I personally am exploring quite a lot in last couple of weeks and people like Chache also likely have exploration-heavy playstyle. So this could be the cause why those errors are now encountered more often?

Well, how common it is is heavily influenced by how much people are exploring (and finding blocks that were generated for them or generated in past and more or less unnoticed). I personally am exploring quite a lot in last couple of weeks and people like Chache also likely have exploration-heavy playstyle. So this could be the cause why those errors are now encountered more often?
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: your-land/bugtracker#850
No description provided.