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

Map Art display corruption during run time #177

Open
cgw2023 opened this issue Dec 18, 2023 · 9 comments
Open

Map Art display corruption during run time #177

cgw2023 opened this issue Dec 18, 2023 · 9 comments
Labels
status: needs triage type: bug Something doesn't work as it was intended to. version: 1.20.2 Game version 1.20.2

Comments

@cgw2023
Copy link

cgw2023 commented Dec 18, 2023

Expected behavior

When player build Map art on Minecraft world and use map item to take a picture of the chunk, the map should keep the same at any time.

Observed/Actual behavior

During running of folia server without restart, the art get corrupted and showing some random and wired chunk map images.
image 1

Steps/models to reproduce

build map art on folia server, wait.

Plugin and Datapack List

[21:56:12 INFO]: Server Plugins (43):
[21:56:12 INFO]: Bukkit Plugins:
[21:56:12 INFO]: - AnnouncerPlus, AntiPopup, Attollo, AxInventoryRestore, AxShulkers, BetterRTP, BlockLocker, BlueMap, Chunky, ChunkyBorder
[21:56:12 INFO]: CMILib, CodFrame, CoreProtect, DecentHolograms, DeluxeMenus, DiscordSRV, DragonDropElytra, Essentials, EssentialsChat, EssentialsGeoIP
[21:56:12 INFO]: EssentialsProtect, EssentialsSpawn, FancyNpcs, floodgate, FoliaFlow, GreenChunk, GSit, HeadDrop, Kaiivoid, LuckPerms
[21:56:12 INFO]: Matrix, PlaceholderAPI, PlayerWarps, ProtocolLib, Residence, ShulkerRespawner, spark, TAB-Bridge, Vault, ViaBackwards
[21:56:12 INFO]: ViaVersion, VillagerOptimizer, zAuctionHouseV3

Folia version

This server is running Folia version git-Folia-"3843340" (MC: 1.20.2) (Implementing API version 1.20.2-R0.1-SNAPSHOT) (Git: 3843340 on dev/1.20.2)

Other

The new two commit of mojangapi and gradle and also rcon seems does not affect the result.

@cgw2023 cgw2023 added status: needs triage type: bug Something doesn't work as it was intended to. labels Dec 18, 2023
@kashike kashike added the version: 1.20 Game version 1.20 label Feb 11, 2024
@xKumorio
Copy link

[20:46:21 ERROR]: Not a string |
[20:46:21 ERROR]: Error loading saved data: map_1407 |
java.lang.IllegalArgumentException: Invalid map dimension: null |
at net.minecraft.world.level.saveddata.maps.MapItemSavedData.lambda$load$1(MapItemSavedData.java:156) ~|
[?:?] |
at java.util.Optional.orElseGet(Optional.java:364) ~[?:?] |
at net.minecraft.world.level.saveddata.maps.MapItemSavedData.load(MapItemSavedData.java:139) ~[?:?] |
at net.minecraft.world.level.storage.DimensionDataStorage.readSavedData(DimensionDataStorage.java:73) ~|
[?:?] |
at net.minecraft.server.level.ServerLevel.getMapData(ServerLevel.java:2322) ~[?:?] |
at net.minecraft.world.item.MapItem.getSavedData(MapItem.java:58) ~[?:?] |
at net.minecraft.world.item.MapItem.getSavedData(MapItem.java:65) ~[?:?] |
at net.minecraft.world.item.MapItem.inventoryTick(MapItem.java:322) ~[?:?] |
at net.minecraft.world.item.ItemStack.inventoryTick(ItemStack.java:815) ~[folia-1.20.4.jar:git-Folia-"e|
b42d90"] |
at net.minecraft.world.entity.player.Inventory.tick(Inventory.java:334) ~[?:?]
at net.minecraft.world.entity.player.Player.aiStep(Player.java:567) ~[?:?]
at net.minecraft.world.entity.LivingEntity.tick(LivingEntity.java:3081) ~[?:?]
at net.minecraft.world.entity.player.Player.tick(Player.java:273) ~[?:?]
at net.minecraft.server.level.ServerPlayer.doTick(ServerPlayer.java:870) ~[?:?]
at net.minecraft.server.network.ServerGamePacketListenerImpl.tick(ServerGamePacketListenerImpl.java:352
) ~[?:?]
at net.minecraft.network.Connection.tick(Connection.java:652) ~[?:?]
at io.papermc.paper.threadedregions.RegionizedWorldData.tickConnections(RegionizedWorldData.java:531) ~
[folia-1.20.4.jar:git-Folia-"eb42d90"]
at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1833) ~[folia-1.20.4.jar:git-
Folia-"eb42d90"]
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:447) ~[folia-1.20.4
.jar:git-Folia-"eb42d90"]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1647) ~[folia-1.20.4.jar:git-Fo
lia-"eb42d90"]
at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:40
7) ~[folia-1.20.4.jar:git-Folia-"eb42d90"]
at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionSchedule
r.java:404) ~[folia-1.20.4.jar:git-Folia-"eb42d90"]
at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool
.java:525) ~[folia-1.20.4.jar:git-Folia-"eb42d90"]
at java.lang.Thread.run(Thread.java:1583) ~[?:?]

@kashike kashike added version: 1.20.2 Game version 1.20.2 and removed version: 1.20 Game version 1.20 labels Apr 29, 2024
@cgw2023
Copy link
Author

cgw2023 commented May 13, 2024

Problem still exist:
This server is running Folia version git-Folia-"25ee657" (MC: 1.20.4) (Implementing API version 1.20.4-R0.1-SNAPSHOT) (Git: 25ee657)

The picture shown below should form a 4x4 continuous map art, but the right side 4 pictures are corrupted. Players report that it was found after server restart one day, but cannot tell which day. It happens occasionally, cannot reproduce 100%.

2024-05-13_16 22 18

@DreiPixel
Copy link

Is there any update to this? On a community server we are playing this now happened Twice that Mulitple map art got corrupted by being replaced with other maps or are just gone by not showing anything at all. the first time it happened the server crashed but the second time it was a normal restart.

@ocelotpotpie
Copy link

First suggestion would be to reproduce this on the 1.21.1 branch.

Lots of commits since 1.20.4 and we don't backport those updates.

@RealDestroy
Copy link

i dont have proof rn but this has happened on 1.21.1, its been pretty frustrating

@OGFulgur
Copy link

OGFulgur commented Nov 8, 2024

Haven't figured out what is happening yet, but this has happened on my 1.21.1 server. Don't know what to do about it.

@electronicboy
Copy link
Member

electronicboy commented Nov 8, 2024

Stuff like this is often due to things like map IDs being reused, used to be fairly common when the limit was muuuuch lower; wonder if there is a race or something here

edit: logic looks fine, make sure that you've not overrun IDs

@DreiPixel
Copy link

edit: logic looks fine, make sure that you've not overrun IDs

i very much doubt that anyone is hitting the map limit. since AFAIK the limit is 4,294,967,296 maps

@RealDestroy
Copy link

from some testing on 1.21.4 it seems 1 way to corrupt a locked map is to teleport before interacting with it in your inventory.

We tested by creating a locked map, not touching it after its creation and then teleporting, which corrupts it. If you click the map before teleporting the map remains ok.

This was tested on 1.21.1 and 1.21.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: needs triage type: bug Something doesn't work as it was intended to. version: 1.20.2 Game version 1.20.2
Projects
None yet
Development

No branches or pull requests

8 participants