Closed IonCharge closed 10 years ago
Have you tried to create the Database manually and give that "dynmap" user full rights on that database? On my site its working great.... extremely slow compared with standard method like @mikeprimm prophesied in another issue... but it's working^^
Yes. I created the user and database in phpmyadmin. Based off the log from my sql server, a connection was not even attempted.
As for the issue of being slow, I have a 2x quad core xeon running and some 15k RPM SAS drives. Im not too worried as I was merely experimenting and ran into the issue. I am also running the following dynmap verision: core=2.0.0-SNAPSHOT-1968, plugin=2.0.0-alpha-1-309
What says your MC-Server console on start and which server software are you using (bukkit, spigot..etc)?
And pls if you copy and paste take it in
<pre>
TEXT
</pre>
tags for better reading :)
I am running a forge modded server, specifically FTB Monster:
When trying to run with sql I get an assortment of errors such as:
2014-06-12 20:02:52 [SEVERE] Encountered an unexpected exception NullPointerException java.lang.NullPointerException at org.dynmap.forge.DynmapPlugin.saveWorlds(DynmapPlugin.java:1800) at org.dynmap.forge.DynmapPlugin.onDisable(DynmapPlugin.java:1385) at org.dynmap.forge.Proxy.stopServer(Proxy.java:20) at org.dynmap.forge.DynmapMod.serverStopping(DynmapMod.java:121) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:545) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:201) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:181) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:112) at cpw.mods.fml.common.Loader.serverStopping(Loader.java:767) at cpw.mods.fml.common.FMLCommonHandler.handleServerStopping(FMLCommonHandler.java:324) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:490) at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583) 2014-06-12 20:02:52 [SEVERE] This crash report has been saved to: /home/starwarsman13/ftb_server/./crash-reports/crash-2014-06-12_20.02.52-server.txt
When enabling sql I also get this error (it doesn't happen with sql disabled):
2014-06-12 20:03:06 [WARNING] [ForgeModLoader] Zip file sqlite-jdbc-3.7.15-M1.jar failed to read properly, it will be ignored java.util.zip.ZipException: zip file is empty at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.(ZipFile.java:215) at java.util.zip.ZipFile. (ZipFile.java:145) at java.util.jar.JarFile. (JarFile.java:153) at java.util.jar.JarFile. (JarFile.java:117) at cpw.mods.fml.common.discovery.JarDiscoverer.discover(JarDiscoverer.java:41) at cpw.mods.fml.common.discovery.ContainerType.findMods(ContainerType.java:42) at cpw.mods.fml.common.discovery.ModCandidate.explore(ModCandidate.java:71) at cpw.mods.fml.common.discovery.ModDiscoverer.identifyMods(ModDiscoverer.java:137) at cpw.mods.fml.common.Loader.identifyMods(Loader.java:353) at cpw.mods.fml.common.Loader.loadMods(Loader.java:484) at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:99) at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:350) at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:69) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:445) at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583)
Please edit your comment and put the output in
<pre>
TEXT
</pre>
tags like
<pre>
THIS IS AN EXAMPLE
</pre>
Done, I didn't even know tags were supported on github. I guess you learn something new each day!
Here are a few more logs:
Time: 6/12/14 8:40 PM Description: Exception in server tick loop java.lang.NullPointerException at org.dynmap.forge.DynmapPlugin.saveWorlds(DynmapPlugin.java:1800) at org.dynmap.forge.DynmapPlugin.onDisable(DynmapPlugin.java:1385) at org.dynmap.forge.Proxy.stopServer(Proxy.java:20) at org.dynmap.forge.DynmapMod.serverStopping(DynmapMod.java:121) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:545) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:201) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:181) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:112) at cpw.mods.fml.common.Loader.serverStopping(Loader.java:767) at cpw.mods.fml.common.FMLCommonHandler.handleServerStopping(FMLCommonHandler.java:324) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:490) at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583)
Time: 6/12/14 8:43 PM Description: Exception in server tick loop while scanning for the next token found character '\t' that cannot start any token in "", line 27, column 1: dbfile: dynmap.db ^ at org.dynmap.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:358) at org.dynmap.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:179) at org.dynmap.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:563) at org.dynmap.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161) at org.dynmap.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146) at org.dynmap.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230) at org.dynmap.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.dynmap.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.dynmap.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.dynmap.snakeyaml.composer.Composer.composeDocument(Composer.java:123) at org.dynmap.snakeyaml.composer.Composer.getSingleNode(Composer.java:106) at org.dynmap.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121) at org.dynmap.snakeyaml.Yaml.loadFromReader(Yaml.java:480) at org.dynmap.snakeyaml.Yaml.load(Yaml.java:423) at org.dynmap.ConfigurationNode.load(ConfigurationNode.java:86) at org.dynmap.DynmapCore.initConfiguration(DynmapCore.java:389) at org.dynmap.forge.DynmapPlugin.onEnable(DynmapPlugin.java:1307) at org.dynmap.forge.Proxy.startServer(Proxy.java:15) at org.dynmap.forge.DynmapMod$APICallback.apiListenerAdded(DynmapMod.java:44) at org.dynmap.DynmapCommonAPIListener.register(DynmapCommonAPIListener.java:56) at org.dynmap.forge.DynmapMod.postInit(DynmapMod.java:102) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:545) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:201) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:181) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:112) at cpw.mods.fml.common.Loader.initializeMods(Loader.java:704) at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:107) at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:355) at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:142) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:445) at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583)
Time: 6/12/14 8:51 PM Description: Exception in server tick loop while parsing a block mapping in "", line 26, column 3: type: sqlite ^ expected , but found BlockEntry in " ", line 27, column 3: - dbfile: dynmap.db ^ at org.dynmap.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:575) at org.dynmap.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161) at org.dynmap.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146) at org.dynmap.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230) at org.dynmap.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.dynmap.snakeyaml.composer.Composer.composeMappingNode(Composer.java:237) at org.dynmap.snakeyaml.composer.Composer.composeNode(Composer.java:160) at org.dynmap.snakeyaml.composer.Composer.composeDocument(Composer.java:123) at org.dynmap.snakeyaml.composer.Composer.getSingleNode(Composer.java:106) at org.dynmap.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121) at org.dynmap.snakeyaml.Yaml.loadFromReader(Yaml.java:480) at org.dynmap.snakeyaml.Yaml.load(Yaml.java:423) at org.dynmap.ConfigurationNode.load(ConfigurationNode.java:86) at org.dynmap.DynmapCore.initConfiguration(DynmapCore.java:389) at org.dynmap.forge.DynmapPlugin.onEnable(DynmapPlugin.java:1307) at org.dynmap.forge.Proxy.startServer(Proxy.java:15) at org.dynmap.forge.DynmapMod$APICallback.apiListenerAdded(DynmapMod.java:44) at org.dynmap.DynmapCommonAPIListener.register(DynmapCommonAPIListener.java:56) at org.dynmap.forge.DynmapMod.postInit(DynmapMod.java:102) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:545) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:201) at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:181) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.common.eventbus.EventHandler.handleEvent(EventHandler.java:74) at com.google.common.eventbus.SynchronizedEventHandler.handleEvent(SynchronizedEventHandler.java:45) at com.google.common.eventbus.EventBus.dispatch(EventBus.java:313) at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:296) at com.google.common.eventbus.EventBus.post(EventBus.java:267) at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:112) at cpw.mods.fml.common.Loader.initializeMods(Loader.java:704) at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:107) at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:355) at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:142) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:445) at net.minecraft.server.ThreadMinecraftServer.run(SourceFile:583)
Okay, wait. I'll try to reproduce this error.... I've to set up a Forge server first Could you eventually recheck it with Bukkit? I know that it works with latest Bukkit and Dynmap-Head.jar. Just to identify if Bukkit can connect to your MySQL Server^^
Allright, Log 2 seems to be related to a "tabulator" YAML doesn't like tabulators XD
Ok, the tab errors are my fault. I probably should have set Notepad++ to use the YAML markup when making modifications to the configuration file. But what about the other 2 errors?
Since I am running with a 1.6.4 server. I will try to run the latest 1.6.4 bukkit server in a few moments. I just need some time to set it up as I have to FTP all the files to the server.
So... firstly I don't see any MySQL Option in Dynmap Forge Build. Do you eventually have loaded the wrong .jar?
Did you select the latest development version for 1.6.4? It is located here: http://www.minecraftforum.net/topic/1543523-dynmap-dynamic-web-based-maps-for-minecraft/ and states with forge on the site.
EDIT: here is the specific link to the jar: http://mikeprimm.com/dynmap/builds/DynmapForge/Dynmap-HEAD-forge-9.11.1.jar
Well sry, I tried 1.7.2 ~.~... wait
Okay, seems to be something Dynmap related... I think mike have to fix that... I've used standard config and dynmap only on that forge build^^, I've also tried with local and remote MySQL Server, SQlite and it's like your errors, and checked also the syntax and so on ... But I've no plan of Java coding, so I can't fix it^^ But be happy, you're not alone :-P
So I just tried he mysql connection with craftbukkit and it works:
After re-trying with forge it still doesn't work. I hope this can be fixed in a future update!
Also thanks for validating. I was starting to go crazy thinking there was something wrong with my MySQL server.
No problemo and you're welcome^^
On Forge, by default, the SQLite and MySQL JDBC drivers are not present (unlike in Bukkit, and by extension, MCPC-Plus). You might need to pull those down manually to be added as libraries (I think these is a way for Forge mods to pull them down, but I haven't looked in to how to do that just yet).
For SQLite, pull down https://bitbucket.or...-jdbc-3.7.2.jar For MySQL, pull down http://central.maven...java-5.1.14.jar
If you put the appropriate file in the mods directory, things should work.
So I did some research. Bukkit by default has the SQL driver implemented.
It seems that Forge requires a separate driver, specifically: the mysql-x.x.x.JAR. This JAR can be downloaded from: http://dev.mysql.com/downloads/connector/j/ , under platform select platform independednt and download the zip. Once downloaded extract the .JAR file and rename it to mysql.jar
This JAR file then needs to be added to the 'mods' folder of forge minecraft. Now mysql works perfectly. I don't know if you can implement this so Dynmap + the mysql.jar can take up only 1 jar file. This also needs to be done with sqlite as well.
So far everything seems to work as expected. I will post an update soon with detailed findings and instructions.
I thought that was what I said in my previous post :)
yea it does work. I installed this yesterday with no issues.you have to create the database first though, then it will create all necessary tables and columns and im running the forge version.
I recently noticed that in the dynmap configuration file that the options of using sqlite or a mysql database have been added as an alternative to using the default filetree scheme.
While tinkering around with these options I realized that both sqlite and mysql seem to be fundamentally broken. When trying to use either of the two options, dynmap never created a database. On my mysql server, it never even connected given the proper credentials.
I have attached an image pointing out the exact location in the configuration file.