IntellectualSites / IntellectualSites/FastAsyncWorldEdit

IndexOutOfBoundsException: Index 4 out of bounds for length 4

Open
#3,612 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Requires Testing
Dominant language
Java
Stars
806
Forks
394
Avg merge
22h 19m
Merged PRs (30d)
14

Description

Server Implementation

Paper

Server Version

1.21.10

Describe the bug

OOB Excepption

[19:18:49] [AsyncNotifyKeyedQueue - 258/ERROR]: Error occurred executing player action
java.lang.ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4
	at java.base/java.util.ImmutableCollections$ListN.get(ImmutableCollections.java:725) ~[?:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.registry.state.AbstractProperty.getValue(AbstractProperty.java:98) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.world.block.BlockState.getState(BlockState.java:330) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.world.block.BaseBlock.getState(BaseBlock.java:163) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.command.tool.BlockDataCyler.handleCycle(BlockDataCyler.java:79) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.command.tool.BlockDataCyler.actPrimary(BlockDataCyler.java:128) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.extension.platform.PlatformManager.lambda$handleBlockInteract$2(PlatformManager.java:470) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.sk89q.worldedit.extension.platform.AbstractPlayerActor.lambda$runAction$0(AbstractPlayerActor.java:717) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.fastasyncworldedit.core.util.task.AsyncNotifyKeyedQueue.lambda$run$0(AsyncNotifyKeyedQueue.java:48) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.fastasyncworldedit.core.util.task.AsyncNotifyKeyedQueue.lambda$call$0(AsyncNotifyKeyedQueue.java:58) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328) ~[?:?]
	at FastAsyncWorldEdit-Paper-2.15.3.jar/com.fastasyncworldedit.core.util.task.KeyQueuedExecutorService$KeyRunner.lambda$run$0(KeyQueuedExecutorService.java:150) ~[FastAsyncWorldEdit-Paper-2.15.3.jar:?]
	at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(ForkJoinTask.java:1753) ~[?:?]
	at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(ForkJoinTask.java:1745) ~[?:?]
	at java.base/java.util.concurrent.ForkJoinTask$InterruptibleTask.exec(ForkJoinTask.java:1662) ~[?:?]
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:511) ~[?:?]
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1450) ~[?:?]
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2019) ~[?:?]
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187) ~[?:?]
[19:18:51] [AsyncNotifyKeyedQueue - 258/ERROR]: Error occurred executing player action
java.lang.ArrayIndexOutOfBoundsException: null
To Reproduce

Not sure yet

Expected behaviour

No Exception

Screenshots / Videos

No response

Error log (if applicable)

https://mclo.gs/ZQbo0qX#L5524

Fawe Debugpaste

https://athion.net/ISPaster/paste/view/04082c3ff3064d48a1704d2bdb2523ab

Are you interested in contributing a fix?

No

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the stack trace at AbstractProperty.java:98 and follow the call through BlockState.getState, BaseBlock.getState, and BlockDataCyler.handleCycle. Use the linked error log and debug paste to identify the player action and block state that trigger the out-of-bounds access. Done means the action no longer produces the exception, with the triggering case verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.