Spigot CoreProtect 2.17.5

Fast, efficient block logging, rollbacks, and restores

  1. Hi,

    So I have had this plugin for a few months, and today someone went on an oped account and had a field day with worldedit. Anyway to undo the worldedit damages?

    Thanks
     
  2. Intelli

    Supporter

    If you're using the standard version of WorldEdit, you can just rollback the user who did the griefing.

    If you're using ASyncWorldEdit, and don't have the block logging bridge plugin installed, then you're out of luck.
     
  3. Got This outprint :

    ```
    [13:03:29] [Thread-12/WARN]: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    [13:03:29] [Thread-12/WARN]: at sun.reflect.GeneratedConstructorAccessor121.newInstance(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.lang.reflect.Constructor.newInstance(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2334)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2371)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2163)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
    [13:03:29] [Thread-12/WARN]: at sun.reflect.GeneratedConstructorAccessor91.newInstance(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.lang.reflect.Constructor.newInstance(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
    [13:03:29] [Thread-12/WARN]: at java.sql.DriverManager.getConnection(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.sql.DriverManager.getConnection(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at net.coreprotect.database.Database.getConnection(Database.java:39)
    [13:03:29] [Thread-12/WARN]: at net.coreprotect.consumer.Process.processConsumer(Process.java:28)
    [13:03:29] [Thread-12/WARN]: at net.coreprotect.consumer.Consumer.run(Consumer.java:48)
    [13:03:29] [Thread-12/WARN]: at java.lang.Thread.run(Unknown Source)
    [13:03:29] [Thread-12/WARN]: Caused by: java.net.SocketException: Permission denied: connect
    [13:03:29] [Thread-12/WARN]: at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    [13:03:29] [Thread-12/WARN]: at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.PlainSocketImpl.connect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.SocksSocketImpl.connect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.Socket.connect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.Socket.connect(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.Socket.<init>(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at java.net.Socket.<init>(Unknown Source)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:254)
    [13:03:29] [Thread-12/WARN]: at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
    [13:03:29] [Thread-12/WARN]: ... 17 more
    ```

    Is it means I have something wrong with my database ?
    How can I fix it ?
     
  4. Is there any way to change the log timestamps to actual dates instead of x hours ago?
     
  5. Could you add player drops logs?
     
  6. Donate for this plugins??¿? link?
     
  7. I have run into an issue I am not sure how to resolve. CoreProtect works great and has for a long time, with over 430 million block changes recorded. It works in all the worlds I have, but one. It logs block change in that world, it even acts like it is doing a rollback and shows x number of blocks changed, and after that it shows up in the log as a strike thru, as if it had been rolled back. But the changes never show up in the world, but it works in every other world just fine.

    Here is output from log, which I just found (updated this post) which guess I need to look at what might be wrong in the DB causing this.

    Code (Text):
    [18:28:46] [Server thread/INFO]: MODERATOR issued server command: /co rollback u:USERNAME t:1.96h r:2
    [18:28:46] [Server thread/WARN]: java.lang.NullPointerException
    [18:28:46] [Server thread/WARN]:     at net.coreprotect.database.Lookup$2.run(Lookup.java:1448)
    [18:28:46] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71)
    [18:28:46] [Server thread/WARN]:     at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350)
    [18:28:46] [Server thread/WARN]:     at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723)
    [18:28:46] [Server thread/WARN]:     at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374)
    [18:28:46] [Server thread/WARN]:     at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654)
    [18:28:46] [Server thread/WARN]:     at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557)
    [18:28:46] [Server thread/WARN]:     at java.lang.Thread.run(Unknown Source)
    [18:28:46] [Thread-132/INFO]: [CoreProtect] Rollback or restore aborted.
    RESOLVED:

    Okay, I figure out the issue. For whatever reason, another world loaded at some point, had the same "wid" in co_world as the world that I was having issues with. While I could have just removed the other world from the database, it may have resolved it, but I didn't discover it until I had removed the world with the issue noted above and restarted server to have it generate a new ID, which rollbacks worked fine on new blocks placed. So, I went in an updated co_block to update WID with the new id from the old one to the new one. Worked.

    Thanks ME. :)
     
    #67 RoelandCache, Dec 16, 2015
    Last edited: Dec 16, 2015
  8. Which plugin is this that provides logging for asyncworldedit?
     
  9. #69 corporabruno, Dec 19, 2015
    Last edited: Dec 19, 2015
  10. BlocksHub. It should be mentioned somewhere on the project page.
     
  11. Can you add support for multiple servers on the same database?
     
  12. im running 35+ servers on the same database. no problems.
     
  13. I meant to use a config saying the name of the server without creating new tables. Also there is a purge system?
     
  14. what?
    [18:18:54] [Async Chat Thread - #8/ERROR]: Could not pass event AsyncPlayerChatEvent to CoreProtect v2.12.0
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[server8.jar:git-Spigot-f928e7a-e91aed8]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server8.jar:git-Spigot-f928e7a-e91aed8]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [server8.jar:git-Spigot-f928e7a-e91aed8]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) [server8.jar:git-Spigot-f928e7a-e91aed8]
    at net.minecraft.server.v1_8_R3.PlayerConnection.chat(PlayerConnection.java:1057) [server8.jar:git-Spigot-f928e7a-e91aed8]
    at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:995) [server8.jar:git-Spigot-f928e7a-e91aed8]
    at net.minecraft.server.v1_8_R3.PacketPlayInChat$1.run(PacketPlayInChat.java:39) [server8.jar:git-Spigot-f928e7a-e91aed8]
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_45]
    at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_45]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_45]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_45]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_45]
    Caused by: java.lang.NullPointerException
    at net.coreprotect.listener.PlayerListener.onPlayerChat(PlayerListener.java:692) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_45]
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_45]
    at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_45]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[server8.jar:git-Spigot-f928e7a-e91aed8]
    ... 11 more
     
  15. someone might've sent a message and left the server immediately after, or perhaps the server lagged out and someone timed out or sent messages... can't really tell without the rest of your log, which you should paste in hastebin.com and paste the link here.

    Either way, not a huge deal, unless this is spammed multiple times in your server.

    Also, update Spigot while you're at it.
     
    • Agree Agree x 1
  16. Im glade your moving to spigot... Spigots better for distributing plugins.
     
  17. @Intelli whenever i do a random explosion, it doesnt say #explosion removed grass it only says No block data found for this location, im using the newest version, this is weird because it always said earlier #explosion remove (block), can you fix this? (Im using spigot 1.8.3)
     
  18. That's why. Block explosions use a different event, and this change occurred in 1.8.3.

    Please update spigot.
     
  19. @RoboMWM To which version do i need to update my server? i also tried using an older version but it still didnt work (the version of the plugin)
     
  20. @RoboMWM I updated my server to spigot 1.8.7, but it still DOESNT work i dont get it i really need this to be fixed