[INACTIVE][ADMN] SimpleSave v3.25 Simple automatic saving! [000] - Backups!

Discussion in 'Inactive/Unsupported Plugins' started by desmin88, Mar 11, 2011.

  1. Offline

    desmin88

  2. Offline

    MangoStarr

    I don't suppose this has permissions, eh??

    I'd like to give a user of mine the ability to save the world.
     
  3. Offline

    desmin88

    @MangoStarr
    I'm not supporting any permissions until their is built-in permissions into Bukkit.
    However, you can use another plugin, to give people permissions to use the console command save-all.
     
  4. Offline

    ScorchRaserik

    Can you make newer backups overwrite older backups? Whenever I reach the cap, it just stops, and I didn't realize it until I needed a backup and found out that the last backup I had was two weeks ago.
     
  5. Offline

    desmin88

    @ScorchRaserik
    It deletes the oldest backups. I have this tested and proven.
     
  6. Offline

    ScorchRaserik

    Have you tested it for multiverse? Cuz right now, I have 4 worlds, my backup history length set to 20, and my interval set at 360 (6 hours). I installed this on May 13th, I start the server every day before I leave for school at 10:00AM, then it auto-shuts off at 11:00PM and I have 5 backups on each world (for a total of 20 backups) dated May 13th at 4:00PM and 10:00PM, May 14th at 4:00PM and 10:00PM, and May 15th at 4:00 PM.

    Do I need to set the backup folder's security settings?
     
  7. Offline

    proJohnRH

    Good update!

    I would request a final backup after players log out if you have the server set to skip backups when no players are online. That is, if no players are online, then do one more backup before skipping the preceding ones. The idea being that the last thing players did on the server will be backed up, but you still won't be overwriting old backups with new duplicates.
     
  8. Offline

    desmin88

    @proJohnRH
    I'll try and implement that, yes.
    @ScorchRaserik
    I've tested it with multiple worlds and don't have this error.

    Progress Update!
    All features are included into 3.0 except one.
    The "Handle is Invalid" error is gone!
    I'm still implementing backup or save after last player leaves.
    If you want your suggestion to be in 3.0, post now!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 11, 2016
  9. Offline

    iPeez

    I would like to say how much I love this plugin, and I really wish I could donate some money to you, but my account is kind of short on money at the moment. :/
    Anyway Thanks a lot for this plugin and all the work you put into it!
     
  10. Offline

    desmin88

    @iPeez
    Thank you! Glad you enjoy the plugin :)
     
  11. Offline

    belfedia

    hoping a 3.0 version near, i have sometimes strange bugs

    Code:
    2011-05-20 16:45:41 [INFO] [SimpleSave] Début de sauvegarde du monde
    2011-05-20 16:45:44 [INFO] [SimpleSave] Fin de sauvegarde du monde
    2011-05-20 16:58:02 [INFO] [SimpleSave] Début de sauvegarde du monde
    2011-05-20 16:58:05 [INFO] [SimpleSave] Fin de sauvegarde du monde
    2011-05-20 17:08:44 [INFO] [SimpleSave] Début de la copie du monde
    2011-05-20 17:08:44 [INFO] Disabling level saving..
    2011-05-20 17:08:44 [INFO] ConsoleCommandSender: Disabling level saving..
    2011-05-20 17:08:44 [INFO] Disabling level saving..
    2011-05-20 17:08:44 [INFO] ConsoleCommandSender: Disabling level saving..
    2011-05-20 17:08:44 [INFO] [SimpleSave] Début de sauvegarde du monde
    2011-05-20 17:08:44 [SEVERE] java.io.IOException: Stream Closed
    2011-05-20 17:08:44 [SEVERE]     at java.io.RandomAccessFile.seek(Native Method)
    2011-05-20 17:08:44 [SEVERE]     at net.minecraft.server.RegionFile.a(SourceFile:342)
    2011-05-20 17:08:44 [SEVERE]     at net.minecraft.server.RegionFile.a(SourceFile:279)
    2011-05-20 17:08:44 [SEVERE]     at net.minecraft.server.ChunkBuffer.close(SourceFile:259)
    2011-05-20 17:08:44 [SEVERE]     at java.util.zip.DeflaterOutputStream.close(DeflaterOutputStream.java:166)
    2011-05-20 17:08:44 [SEVERE]     at java.io.FilterOutputStream.close(FilterOutputStream.java:160)
    2011-05-20 17:08:44 [SEVERE]     at net.minecraft.server.ChunkRegionLoader.a(SourceFile:64)
    2011-05-20 17:08:44 [SEVERE]     at net.minecraft.server.ChunkProviderServer.saveChunk(ChunkProviderServer.java:160)
    2011-05-20 17:08:44 [SEVERE]     at net.minecraft.server.ChunkProviderServer.saveChunks(ChunkProviderServer.java:190)
    2011-05-20 17:08:44 [SEVERE]     at org.bukkit.craftbukkit.CraftWorld.save(CraftWorld.java:557)
    2011-05-20 17:08:44 [SEVERE]     at org.desmin88.simplesave.Backup.backup(Backup.java:36)
    2011-05-20 17:08:44 [SEVERE]     at org.desmin88.simplesave.SimpleSave$BackupMethod.run(SimpleSave.java:120)
    2011-05-20 17:08:44 [SEVERE]     at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-05-20 17:08:44 [SEVERE]     at java.lang.Thread.run(Thread.java:636)
    2011-05-20 17:08:46 [SEVERE] java.io.IOException: Stream Closed
    2011-05-20 17:08:46 [SEVERE]     at java.io.RandomAccessFile.seek(Native Method)
    2011-05-20 17:08:46 [SEVERE]     at net.minecraft.server.RegionFile.a(SourceFile:342)
    2011-05-20 17:08:46 [SEVERE]     at net.minecraft.server.RegionFile.a(SourceFile:279)
    2011-05-20 17:08:46 [SEVERE]     at net.minecraft.server.ChunkBuffer.close(SourceFile:259)
    2011-05-20 17:08:46 [SEVERE]     at java.util.zip.DeflaterOutputStream.close(DeflaterOutputStream.java:166)
    2011-05-20 17:08:46 [SEVERE]     at java.io.FilterOutputStream.close(FilterOutputStream.java:160)
    2011-05-20 17:08:46 [SEVERE]     at net.minecraft.server.ChunkRegionLoader.a(SourceFile:64)
    2011-05-20 17:08:46 [SEVERE]     at net.minecraft.server.ChunkProviderServer.saveChunk(ChunkProviderServer.java:160)
    2011-05-20 17:08:46 [SEVERE]     at net.minecraft.server.ChunkProviderServer.saveChunks(ChunkProviderServer.java:190)
    2011-05-20 17:08:46 [SEVERE]     at org.bukkit.craftbukkit.CraftWorld.save(CraftWorld.java:557)
    2011-05-20 17:08:46 [SEVERE]     at org.desmin88.simplesave.Backup.backup(Backup.java:36)
    2011-05-20 17:08:46 [SEVERE]     at org.desmin88.simplesave.SimpleSave$BackupMethod.run(SimpleSave.java:120)
    2011-05-20 17:08:46 [SEVERE]     at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-05-20 17:08:46 [SEVERE]     at java.lang.Thread.run(Thread.java:636)
    2011-05-20 17:08:46 [INFO] [SimpleSave] Fin de sauvegarde du monde
     
  12. Offline

    Maxis010

    That is caused when the Save and Back-Up attempt to run at the same time, the error itself is harmless, just annoying
     
  13. Offline

    Kainzo

    Now thread safe using BukkitScheduler!

    Until the tick is resolved - I would have a work around for users who do not wish to use the Scheduler - maybe a toggle Milliseconds or Scheduler.
     
  14. Offline

    desmin88

    @Kainzo
    Thad made no sense what so ever. Please explain more clearly.
     
  15. Offline

    Kainzo

    The tick system (Scheduler) is horridly flawed at the moment. The ticks degrade overtime, it is not a reliable source to be a scheduler. For servers under 20 players, it generally is good to go, for anything over 40-50 players, the tick system will vary from 5-15 ticks per second rather than 20/ticks a sec.

    As i said previously - in order to have this plugin more configurable, you should have an option to either run off the scheduler or milisecond
     
  16. Offline

    desmin88

    @Kainzo
    Heres the issue, in order to do that, I'd have to make my plugin double the size, use a complex system of threading and generally stuff which is very complicated. Really, tick degradation should not be too bad on good servers and won't affect it much.
     
  17. Offline

    Kainzo

    It's not up to the servers if tick degradation happens. We're running the best hardware out right now and we still see a severe amount of tick loss - its the code. It's not a reliable method and will be bogged down exponentially the more players that are online.

    Try it out sometime.
    20 players = 20/20ticks
    30 players = 15/20
    40 players = 10/20 ticks
    60 players = 8/20 ticks
    80+ players = 5/20 ticks

    Roughly. This is with or without plugins generally.
     
  18. Offline

    desmin88

    Version 3.0 released. Tell me of any bugs you guys have, but I should have them all ironed out.
    @Kainzo
    BukkitScheduler does not accept MS, and I'm not going to rewrite my entire plugin to change this. Sorry.
     
  19. Offline

    PhantomGamers

    Yay for 3.0! :D
     
  20. Offline

    desmin88

    @PhantomGamers
    Thanks!
    Please report any bugs.
    I have a hotfix coming soon with errors I found...

    Please download 3.01 if you've already downloaded 3.0, fixes nasty little bug.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 11, 2016
  21. Offline

    PhantomGamers

    I hadn't seen any bugs myself, but I don't use the command that the hotfix fixed.
     
  22. Offline

    desmin88

    @PhantomGamers
    I know, but some people requested it in 3.0 :p and if it doesn't work, well, then blah.
     
  23. Offline

    PhantomGamers

    Haha, I getcha. It's fine.
    I was just saying why I didn't notice the bug myself :)

    EDIT:
    Code:
    2011-05-20 19:58:03 [INFO] [SimpleSave] Beginning world backup
    2011-05-20 19:58:03 [INFO] java.io.FileNotFoundException: world\players\_tmp_.dat (The system cannot find the file specified)
    2011-05-20 19:58:03 [INFO] 	at java.io.FileInputStream.open(Native Method)
    2011-05-20 19:58:03 [INFO] 	at java.io.FileInputStream.<init>(Unknown Source)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyFile(FileUtils.java:290)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyDirectory(FileUtils.java:265)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyDirectory(FileUtils.java:263)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:230)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:156)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:125)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.Backup.backup(Backup.java:41)
    2011-05-20 19:58:03 [INFO] 	at org.desmin88.simplesave.SimpleSave$BackupMethod.run(SimpleSave.java:132)
    2011-05-20 19:58:03 [INFO] 	at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-05-20 19:58:03 [INFO] 	at java.lang.Thread.run(Unknown Source)
    2011-05-20 19:58:03 [INFO] [SimpleSave] Ending world backup
    
    I think the bottom errors were the same ones that were there before, which you said you couldn't fix, but the FileNotFound part seems new.
     
  24. Offline

    desmin88

    @PhantomGamers
    Are you trying to use multiworld? Also, as a test, make sure every single folder in your world folder has a file in it, if not, just make an empty .txt file and try.
     
  25. Offline

    PhantomGamers

    Ah okay, I was using Multiworld and the players folder didn't have a file in it.
    I added a text file and put a couple of words of text in it and put the file in all of the empty folders, it works now.

    I noticed another issue though, if a player leaves while a backup is taking place.
    Code:
    2011-05-21 01:54:53 [INFO] [SimpleSave] Beginning world backup
    2011-05-21 01:54:53 [INFO] java.io.FileNotFoundException: world\players\PhantomGamers.dat (The process cannot access the file because it is being used by another process)
    2011-05-21 01:54:53 [INFO] 	at java.io.FileInputStream.open(Native Method)
    2011-05-21 01:54:53 [INFO] 	at java.io.FileInputStream.<init>(Unknown Source)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyFile(FileUtils.java:290)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyDirectory(FileUtils.java:265)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyDirectory(FileUtils.java:263)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:230)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:156)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:125)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.Backup.backup(Backup.java:41)
    2011-05-21 01:54:53 [INFO] 	at org.desmin88.simplesave.SimpleSave$BackupMethod.run(SimpleSave.java:132)
    2011-05-21 01:54:53 [INFO] 	at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-05-21 01:54:53 [INFO] 	at java.lang.Thread.run(Unknown Source)
    2011-05-21 01:54:53 [INFO] SimpleSave: Deleting old backups
    2011-05-21 01:54:53 [INFO] [SimpleSave] Ending world backup
    
    By the way, did you change the version number in the plugin?
    Because I just downloaded it fresh and it still says
    Code:
    2011-05-21 01:57:33 [INFO] SimpleSave: 3.0 Initialized
    instead of
    Code:
    2011-05-21 01:57:33 [INFO] SimpleSave: 3.01 Initialized
     
  26. Offline

    BigRenegade

    @desmin88

    Got the following error while running bukkit RB 798 and Simple Save 3.01:

    Code:
    2011-05-21 02:02:47 [SEVERE] Error occurred while enabling SimpleSave v3.0 (Is it up to date?): tried to access class org.desmin88.simplesave.SimpleSave$CCSFilter from class org.desmin88.simplesave.SimpleSave
    java.lang.IllegalAccessError: tried to access class org.desmin88.simplesave.SimpleSave$CCSFilter from class org.desmin88.simplesave.SimpleSave
        at org.desmin88.simplesave.SimpleSave.onEnable(SimpleSave.java:52)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:125)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:750)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:131)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:109)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:218)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:205)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:145)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:265)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    2011-05-21 02:02:47 [SEVERE] Error occurred while enabling SimpleSave v2.2.1 (Is it up to date?): org/desmin88/simplesave/SimpleSave$CCSFilter
    java.lang.IllegalAccessError: org/desmin88/simplesave/SimpleSave$CCSFilter
        at org.desmin88.simplesave.SimpleSave.onEnable(SimpleSave.java:52)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:125)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:750)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:131)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:109)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:218)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:205)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:145)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:265)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    
    This is not a complaint, just an FYI so you know what is happening. Simple Save 3.0 loads fine under RB798.
     
  27. Offline

    JacKlink01

    In the backup-date-format config option it is getting the mm's confused. You have "mm" set for month and minute... maybe month should be something else? like nn?
     
  28. Offline

    PhantomGamers

    I take that back, adding the files didn't do anything... apparently it just doesn't produce the error when you force a backup.
    Code:
    2011-05-21 03:00:34 [INFO] [SimpleSave] Beginning world backup
    2011-05-21 03:00:34 [INFO] java.io.FileNotFoundException: world\players\_tmp_.dat (The system cannot find the file specified)
    2011-05-21 03:00:34 [INFO] 	at java.io.FileInputStream.open(Native Method)
    2011-05-21 03:00:34 [INFO] 	at java.io.FileInputStream.<init>(Unknown Source)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyFile(FileUtils.java:290)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyDirectory(FileUtils.java:265)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.FileUtils.doCopyDirectory(FileUtils.java:263)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:230)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:156)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.FileUtils.copyDirectory(FileUtils.java:125)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.Backup.backup(Backup.java:41)
    2011-05-21 03:00:34 [INFO] 	at org.desmin88.simplesave.SimpleSave$BackupMethod.run(SimpleSave.java:132)
    2011-05-21 03:00:34 [INFO] 	at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
    2011-05-21 03:00:34 [INFO] 	at java.lang.Thread.run(Unknown Source)
    2011-05-21 03:00:34 [INFO] [SimpleSave] Ending world backup
    
    Still occurs during scheduled backups... even with the files.
    World is my main world though, it already has files in all of the folders. :S
     
  29. Offline

    desmin88

    @PhantomGamers
    I've located the problem, it's because I'm not copying the directory in the main thread, which should be threadsafe, but isn't. Also, 3.01 initialize statement isn't changed.
    @BigRenegade
    I have no idea how that happened because in all my testing, not once did that pop up. Does it happen under 766?
    @JacKlink01
    I'll fix that, MM's should be capitalized for month.
    EDIT:
    @PhantomGamers
    Is the save-off being ran right before a backup?
     
  30. Offline

    PhantomGamers

    No, it doesn't seem so. :eek:
     
  31. Offline

    desmin88

Share This Page