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

AcidIsland Island Reset Error #326

Closed
robert-beckley opened this issue Nov 3, 2018 · 14 comments
Closed

AcidIsland Island Reset Error #326

robert-beckley opened this issue Nov 3, 2018 · 14 comments
Assignees

Comments

@robert-beckley
Copy link

Description
Islands are not being deleted upon reset

Steps to reproduce the behavior:
/ai reset
https://youtu.be/CsI6fN044eE

Expected behavior
When a player issues /AI-SB reset their island is deleted from the world leaving the space open for a new island.

Screenshots
See Video

Server Information:
Spigot 1.13.2
Bungeecord also used

[Please complete the following information:]

  • Database being used YAML
  • OS: CentOS
  • Java Version: Unknown
  • BentoBox version: 0.13.0 - alpha 6 (present from alpha 4)
  • Addons installed? [Do '/bentobox version' and copy/paste from the console]
    image
  • Other plugins? [Do '/plugins' and copy/paste from the console]
    image

Additional context
This is only affecting Acid island Island resets work fine in SkyBlock
I seem to get 2 errors a big one and a small one i got killed twice on the small error
https://pastebin.com/52CpCn3b
https://pastebin.com/rTe8Cgbm

AI SCHEMS.zip

@tastybento tastybento self-assigned this Nov 4, 2018
@tastybento tastybento added Type: Bug Status: Under investigation Investigating the interest and the feasability of the issue. Status: Cannot replicate Could not replicate the issue on a fresh install. More details are needed. labels Nov 4, 2018
@tastybento
Copy link
Member

Thanks for the report and video - you are a most excellent reporter!

So the issue is actually in regards to the pasting of your schem. I would guess that if you look at the new island, you'll find it is not actually all there (I'm not sure, just a guess). The issue is actually a bug with the server code. When a block is being pasted, the server is choking on what ever state it's being told to be set to. I don't know which block it is exactly but it's some kind of inventory holder, e.g. a chest, or a furnace or something like that.

As you shared the schems, I have a look at them and see if I can figure it out. In the meantime, you too can have a go by removing inventory holders and seeing if you can find out which one it is.

Did you make the schem on server version 1.13.2?

@tastybento
Copy link
Member

Okay, the error is in the end-island schem. I'm now trying to find out which block.

@tastybento
Copy link
Member

Well, it looked like it was a chest in one of the "towers" but rather than try to fix the schem, I put in defensive code so that if a schem tries to write to a larger index in an inventory than it has it'll just put the item in the last slot. This fixed the issue. I recommend you check your schem to see if everything looks okay after this fix is in there.

@robert-beckley
Copy link
Author

Awesone Work tastybento

@Poslovitch Poslovitch removed Status: Cannot replicate Could not replicate the issue on a fresh install. More details are needed. Status: Under investigation Investigating the interest and the feasability of the issue. labels Nov 4, 2018
@Poslovitch
Copy link
Member

@tastybento Where is the commit that fixes that?

@Poslovitch Poslovitch changed the title AI Island Reset Error AcidIsland Island Reset Error Nov 4, 2018
tastybento added a commit that referenced this issue Nov 4, 2018
#326

Error was that double chests get pasted in two single blocks but the
full inventory is stored for each block. This code just ignores any
inventory slots greater than what the chest can handle.
@tastybento
Copy link
Member

Committed.

@Poslovitch
Copy link
Member

Great, thanks!
@robert-beckley Can you please download this dev build and tell us if the fix is working on your side ? https://ci.codemc.org/job/BentoBoxWorld/job/bentobox/474/

@robert-beckley
Copy link
Author

robert-beckley commented Nov 5, 2018

It is no longer creating the error in console but the physical island is still not deleted.

I used https://github.com/BentoBoxWorld/bentobox/releases/tag/0.14.0 to test

@tastybento
Copy link
Member

Huh. I can't replicate that. What do you see if you run /acid delete (your name)? If you do it on your island, it should just disappear.

Also, share your config.yml. What's the size of your islands? It may be that the deletion is just taking a long time?

@robert-beckley
Copy link
Author

robert-beckley commented Nov 6, 2018

Configs:
Config.zip

The island size is just what it generates when making a new island so i dont think its the plugin choking as the islands persist after server restart.

/acid delete ALT ACCOUNT resulted in the island being deleted but the ALT ACCOUNT was left in spectator mode and not teleported to spawn the MAIN ACCOUNT was teleported to my island upon deletion of the ALTACCOUNT island.

I Think this may be due to the ALT ACCOUNT being registered to more than one island. (Diffrent bug with protection that i have spoken to @Poslovitch about)

@robert-beckley
Copy link
Author

Okay so update, After the last post I went to go and replicate the bug. Here is what i found.

New Video:
https://youtu.be/Lh_iOi-ZerY
Had a few issues and one unexpected error.

The database error:

[00:59:36 INFO]: robert_beckley issued server command: /acid delete RobsAlt
[00:59:37 INFO]: robert_beckley issued server command: /acid delete RobsAlt
[00:59:37 ERROR]: [BentoBox] Could not delete yml database object! 8928d126-82b0-4608-a887-028830a5669b.yml - plugins/BentoBox/database/Island/8928d126-82b0-4608-a887-028830a5669b.yml
[00:59:37 WARN]: [BentoBox] During island deletion player RobsAlt could not be sent home so was placed into spectator mode.

The Big error from the /ai unexpected issue:
https://pastebin.com/jxKZqkDj

All Console since joining and while recording:
https://pastebin.com/eQwZqu7t

@tastybento tastybento added the Status: Under investigation Investigating the interest and the feasability of the issue. label Nov 10, 2018
@tastybento
Copy link
Member

In regards to the unexpected error, it looks like the database of islands is basically corrupted and needs to be deleted. This could be because the previous bug was preventing islands from being deleted so they are still in the database. I expect that if you do a clean start, you'll see everything working okay. I'll add some defensive code into the plugin to try to avoid generating errors and show some "helpful" text, but in these situations, the yml files in the island database folder are causing the issue.

tastybento added a commit that referenced this issue Nov 10, 2018
When an island cannot be added to the grid, it should show some helpful
console error.

Related to #326
@tastybento
Copy link
Member

Closing for now because there is not much more I can do on this. Hopefully you can confirm no issues with a clean install.

@Poslovitch Poslovitch removed the Status: Under investigation Investigating the interest and the feasability of the issue. label Nov 11, 2018
@robert-beckley
Copy link
Author

still getting
[BentoBox] Could not delete yml database object! f168818f-aabc-49b4-8c91-92444f38c38e.yml - plugins/BentoBox/database/Island/f168818f-aabc-49b4-8c91-92444f38c38e.yml

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

No branches or pull requests

3 participants