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

Backup links #67

Closed
ziceptor opened this issue Dec 30, 2016 · 17 comments
Closed

Backup links #67

ziceptor opened this issue Dec 30, 2016 · 17 comments

Comments

@ziceptor
Copy link

I think you should look at the problem. I wrote about it on the forum. Many days ago. So, if you disable the live server (or computer). For example, lost electricity. Will lose links. If the administrator has overlooked this point and not tested the protection regions. The attackers can take advantage of this. This is solved by re-executing /fg link ...

Perhaps it should be reserved.

@gravityfox
Copy link
Member

After you link regions, you should remember to run /fg save.

Normally they're saved when the server is shutdown, but in failure they are not saved.

So yeah.

@ziceptor
Copy link
Author

ziceptor commented Dec 30, 2016

It does not depend on /fg save !!! Run the test and see for yourself.

@ziceptor
Copy link
Author

It is not about rebooting or halting the sponge. The physical shutdown of the server (computer). Not a regular shutdown of the server. Therefore a sponge is also wrong ends. Therefore, it is necessary to have a backup links. That would automatically handle the problem.

@gravityfox
Copy link
Member

One: I don't quite understand your english.

Two: If there was a file system failure, or other data LOSS, your regions should have disappeared alongside your links. The regions stayed, but the links didn't. This implies that there were no storage integrity issues.

Three: It seems to load links fine under normal start conditions, which means that it is not a bug in the link loading code. (There used to be)

Four: I need logs. I need you to add all your links. Then I need you to use /fg save. The server will output a lot of console messages when you run that command. I need all of it. Then, kill the server in a way that breaks the links. Then start the server again. I need the entire startup log.

@ziceptor
Copy link
Author

One: Bad English, sorry.
Two: Regions and handlers in place. Lost connection between them. File system is normal.
Three: Don't know.
Four: Okay.

@ziceptor
Copy link
Author

ziceptor commented Jan 2, 2017

It is impossible to reproduce. But I'm sure the behavior will be the same as last time:
https://forums.spongepowered.org/t/api-5-x-6-x-foxguard-the-flexible-world-protection-solution/9952/641?u=ziceptor

You can do a backup. This would solve the problem. You decide. There is a problem! Rare, but there. In your power to solve it.

@gravityfox
Copy link
Member

Backups don't fix anything. You should be backing up your entire world anyway.

@gravityfox
Copy link
Member

gravityfox commented Jan 2, 2017

I'm leaving this closed because of several reasons.

  1. It's a problem only you seem to have, for some mysterious reason.
  2. It's not reproducible.
  3. You should be making backups anyway.
  4. Given that there wasn't an actual CRASH, and the fact that your regions didn't also disappear, I am going to make the assumption that you simply didn't save your links after you made them, and that they were lost because the server did not shut down normally. There is literally no other explanation.

@ziceptor
Copy link
Author

ziceptor commented Jan 3, 2017

  1. I am professionally engaged in programming and administration for 14 years.
  2. /fg I perform ALWAYS save for the end regions.
  3. If the problem is reproducible it's hard doesn't mean it doesn't exist.
  4. Backups are made. But this is not enough. I wrote why.
  5. Errors should not be afraid. Do them all! You can close your eyes and pretend that all is well.... And it is possible to create a mechanism which gives the administrator confidence in the health.
  6. The Council of a series of "Use another OS", intrigued.
  7. Lightning-fast closure of the issue, without trying to understand the problem, the same is intriguing.
  8. Good luck in improving yourself. I hope the criticism respond adequately ;)

@gravityfox
Copy link
Member

Even if there was a major issue, you're not giving me enough information to fix the problem.

Automated backups are not the solution. That is something that users should do, if they feel the need to. Minecraft certainly makes no backups, and Minecraft world corruption is a lot more irrecoverable.

If you have so much experience in programming and administration, I implore you to tell me what exactly went wrong.

I can't go on a wild goose chase with insufficient information to fix it.

@ziceptor
Copy link
Author

ziceptor commented Jan 3, 2017

We have an unknown reason for the loss of the link. We are unable to fix it. But we can store the links in the config and to verify the integrity of the database (mapdb). As a product developer, you must decide which method is more optimal.

@gravityfox
Copy link
Member

SO TWO THINGS. A short one and a long one.

  1. I refuse to store links in a config file.
  2. MapDB does internal integrity checks. It refuses to open databases in the case of failure. Which means that your regions would not load at all. The fact that the regions loaded WITHOUT their links means that there was no file corruption. For the record, FoxGuard does not keep database files open, so that a crash during server operation does not lead to data corruption. This implies that the links were never saved in the first place, which is entirely possible. However that would be an actual code bug, and be reproducible.

@ziceptor
Copy link
Author

ziceptor commented Jan 3, 2017

  1. mapDB has bugs like any other project. As well it has performance issues on Windows. The problem might be due to mapDB. https://github.com/jankotek/mapdb/issues
  2. We in Russia have a saying - no harm in trying. Well, I accept your position. You are a developer.

Thanks for the discussion.

@gravityfox
Copy link
Member

gravityfox commented Jan 3, 2017

The performance issues seem to be a problem with pushing commits to the database using java file access. Windows is known to have stupid problems related to file access. That might not be something that can be fixed at all. I know that oracle sure as hell has given up fixing some of them.

I can try things, but I need to know where to start. I'm not going on a wild goose chase. I need to know what went wrong.

It's a little like Schrodinger's cat. You're telling me that the cat in your box died, and that I should leave food in the box for the cat, when in reality neither of us have any idea whether the cat ACTUALLY died or whether it was actually starvation that killed it.

Don't get me wrong here. I understand that SOMETHING broke. I'm not denying that you lost data. I just have no clue what it was that went wrong, and I really can't do anything about it unless you give me more information.

@ziceptor
Copy link
Author

ziceptor commented Jan 4, 2017

give me more information

I'm working on it.

@d4rkfly3r
Copy link
Member

d4rkfly3r commented Apr 18, 2018

So, after much time researching about this, this is our conclusion:

We determined that this error is caused by MapDB not being able to use Random Access Files. This only seems to really occur when the server is being run off of an NFS, which doesn't support this. I am unsure if you are using an NFS, and if you aren't then it probably is something like the server being out of storage space, or not having permissions. There is nothing that we can really do about this, although the upcoming FoxGuard releases no longer use MapDB, so should not have this problem.

If you are using a server hosting company, and you are getting this error, and they say that they are not using NFS to back it, please ask for all the details of whatever they are using and report it.

Thanks for your patience, and we apologize for the inconvenience this has caused.

This was referenced Apr 18, 2018
@ziceptor
Copy link
Author

No, I didn't use NFS.

The easiest way to reproduce the problem. Create an intentional load on the file system (I have NTFS). For example, data migration. At peak loads we get the result.

I no longer use this plugin.

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

No branches or pull requests

3 participants