For users of the NWNX ODBC module who have MySQL as your database platform this new module might (should :))be of interest for you. Based on the MySQL library this module connects directly to your MySQL database server and executes/fetches without the use of an ODBC layer, which gives you a major speed increase. To make it even easier for current NWNX ODBC users: this module is completely compatible with your current ODBC module. Just overwrite the nwnx_odbc.dll file with the new module and everything works directly on your MySQL database without any script changes (ps. first you need to configure the module in the ini-file, to learn more about this read the included readme file).
A new version is released at NWNX.org: NWNX ODBC 0.8.8. Future releases will always be released on that site, and support will be given on the forum on the same site.
Posted by incorrect update ( 202.87.xxx.xxx ) at 2004-11-03 06:28:00
You may wish to recheck what you last uploaded. There seems to be a few problems espically when I compare it to your original upload.
I may be missing something, but here goes.
The following files are now missing. Without them I doubt anyone will get this working.
A) nwnx_mysql.ini - Your setup file everyone needs to alter so that they can connect it to their own database.
B) libmySQL.dll - The mysql library itself.
C) Readme.txt - The user file has been replaced with your compiler instruction file.
Also your nwnx_odbc.dll has dropped in size from 44k to only 7k and doesn't appear to work anymore. You haven't drastically changed the code so it may be a incomplete/test build?
Heres some error lines recieved from the nwnx.txt file of nwnx2. The function calls don't seem to exist in the build?
* Library ODBC!SPACER does not exist.* Library ODBC!EXEC does not exist.* Library ODBC!FETCH does not exist.
Posted by incorrect update ( 202.87.xxx.xxx ) at 2004-11-03 06:28:00
You may wish to recheck what you last uploaded. There seems to be a few problems espically when I compare it to your original upload.
I may be missing something, but here goes.
The following files are now missing. Without them I doubt anyone will get this working.
A) nwnx_mysql.ini - Your setup file everyone needs to alter so that they can connect it to their own database.
B) libmySQL.dll - The mysql library itself.
C) Readme.txt - The user file has been replaced with your compiler instruction file.
Also your nwnx_odbc.dll has dropped in size from 44k to only 7k and doesn't appear to work anymore. You haven't drastically changed the code so it may be a incomplete/test build?
Heres some error lines recieved from the nwnx.txt file of nwnx2. The function calls don't seem to exist in the build?
* Library ODBC!SPACER does not exist.* Library ODBC!EXEC does not exist.* Library ODBC!FETCH does not exist.
I uploaded a new version of the MySQL module:
* fixed the memory leak problem
* log file should be in the right place
Currently I am developing an even faster way to do persistency in a NWN PW. Before it will be release, this new module will be heavily player tested on my server first. If you like you are all welcome to have a look at my PW. I will keep you informed when it's going live.
When it proved to be stable I will release it to the public with documentation so that people can start using it, probably with a simple module along which shows you the new capabilities.
I tried setting up NWNX ODBC and got it working perfectly, but with an Access database. So, I replaced nwnx_odbc.dll with nwnx_mysql.dll (and renamed it to nwnx_odbc.dll), but I can't get it to work. The database names, user, password, host is all set up correctly.
However, I am no expert on MySQL, so I may do something wrong. I tried setting the user to full rights, but...
NWNX and nwnx_mysql seems to be working, since the nwnx_mysql return
actually it does write a log file, puts it in nwn directory calle mysqlnwn.txt I think from memory. I missed it at first way back as well. But, it does have bugs still, you will want to wait until those are ironed out.Makzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
Posted by J69 ( 207.81.xxx.xxx ) at 2004-09-07 21:28:00
Works well, is faster.
But has the added problem of no log file (nwnx_odbc.txt) of the result sets. So if your having SQL problems, with incorrect queries you have to search allot harder to find answers. The old DLL was great in pin pointing areas. So with this system you should use the normal nwn_odbc.dll to do all your testing. Then when you go prod use this DLL and rename it.
If a log was added that would be awsome. Unless I'm missing something and it creates a log I cant find.
More update, the module while it has had a MAJOR improvement in memory/performance, has some bugs in it in relation to write to or read from the DB under certain circumstances. I have given Jeroen a copy of my log, and some other code to look at, and a table set from MySQL. I am sure he will sort this out and we will all benefit from his great work.
Makz.Makzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
Posted by J69 ( 204.174.xxx.xxx ) at 2004-08-26 15:57:00
Just an update, in case Jeroen doesn't get a chance to say. I have had 2 newer versions of this from him since my claims were in fact substantiated. The latest version I am now running, seems to work at around the same memory useage over 24 hrs as using the ODBC driver. A MARKED improvement, thank you Jeroen.
Makz.Makzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
It worked great. I had some serious problems getting ODBC to correctly work with its DSN. I simply renamed 1 file, changed capitalized a letter in the username and put in the name of my database and everything loaded and runs perfectly. I hope I notice a speed difference as previously we did not use this module, but either way I am happy with it already. Nice work as usual.
Posted by Silk at 2004-07-23 09:47:00 Voted 10.00 on 07/21/04
We actually have an unbelievable amount of database traffic. Persistent Chests, Persistent Merchants, Persisitent Corpses, All Quests across all avlis servers (6 at the moment), etc.
I forgot which version of MySQL we're using, but i'll take a look tonight unless another member of my team posts here.
We're using Windows XP Pro. I forgot the setup, but I'll check it out.
Ok thanks Silk, how much of your world is being put in and out of the DB? ie: quests, banking, play stats, subraces, storage of items, etc? and, do you do anything other than a standard setup of MySQL? and lastly, do you use Windows XP pro? and if so, programs cache priority or server cache priority, and swap file yes or no?
Thanks.
Makz.Makzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
Posted by Silk at 2004-07-21 11:47:01 Voted 10.00 on 07/21/04
Uber Fast!
Posted by Silk at 2004-07-21 11:45:00 Voted 10.00 on 07/21/04
We're running this on all Avlis servers with a large amount of traffic and we are not seeing the issue you're talking about.
The Memory is increasing in use Jeroen by 1-2MB per player as they log on. Over a period of 8 hrs we reached 1.93GB and the server crashed, then flushed again, and started it's climb again. What Salandra meant is that each player looks like they are getting one session in memory each time they log on. As soon as I went back to using the ODBC for MySQL again, we went back to not having that happen.
BTW I use MySQL ODBC 3.51 and MySQL 4.0.19 if that makes any difference? Normal use in a 24 HR period for us, with players up into the high 40's of low 50's for hours at a time, gets us to about 450MB of RAM used, and then I usually reload for my updates.
Thanks.
Makz.Makzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
What does she mean with a session per player? If she means that there is a connection between the player and the database, then she is wrong. As there is only one connection between the module and the database server.
Plus, I haven't noticed that much increase in memory usage on my system and other systems.
Ignore my previous comment somewhat, my ignorance of DB useage was in that. Ok, I told my wife the great Salandra, who is a DB expert, who said, silly, the DB is keeping seperate sessions for each player now. D'OH, ok, so, should I allow a page file now? that is slower than mem of course, I see a 5 second timeout set in MySQL, that is meant to flush previous sessions I believe? however, I don't see that happening. Just looking for a little guidance here, as she is not a MySQL person however.
Thanks.
Makz.Makzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
Ok, running it, and seems good, I have only one comment, it uses a LOT of RAM and PF. Before this, I used maybe 550MB in a day of running, using over 1GB of RAM and only been up about 3 hrs. Any ideas? BTW I don't use a swap file at all, never needed it with 2GB of RAMMakzimia De Graf
DM/Creator
Island of Fredian a PW
Home of ATS/Salandra's crafting
Posted by Kavon ( 64.252.xxx.xxx ) at 2004-07-13 15:51:00
Awesome! Now hopefully we can get this running on linux some time :)
Posted by Orleron at 2004-07-13 14:03:55 Voted 10.00 on 07/13/04
One of the most useful additions yet to NWNX!
You must be Logged In to post comments in this section.