We have
uncovered the issue and working for update in next release. Specifically this is with MySQL 5 (and we
suspect MySQL 4, MySQL 3 was OK). There is a fix - technically not
too difficult if you know MySQL.
What is
happening?
MySQL v5
now uses the InnoDB engine by default which will automatically add foreign keys
to the tables when they are created by MPNews. These key constraints will cause the
errors you see posting messages.
What is the
fix?
We need to
do two things. First, we need to
remove the foreign keys. You can do
this in the MySQL admin interface by editing the tables to remove the foreign
keys from tables groupmessages, groupthreads, headers, and servergroups. Or you can run the following SQL queries
to do the same thing (change "mpnews" below to your database
name):
ALTER TABLE
`mpnews`.`groupmessages` DROP FOREIGN KEY `groupmessages_ibfk_1`, DROP FOREIGN
KEY `groupmessages_ibfk_2`;
ALTER TABLE
`mpnews`.`groupthreads` DROP FOREIGN KEY
`groupthreads_ibfk_1`;
ALTER TABLE
`mpnews`.`headers` DROP FOREIGN KEY `headers_ibfk_1`;
ALTER TABLE
`mpnews`.`servergroups` DROP FOREIGN KEY `servergroups_ibfk_1`, DROP FOREIGN KEY
`servergroups_ibfk_2`;
The second
thing is to specify the correct database.
As you noted when you select MySQL as a database type, it sets the type
as a MySQL v1 database. Instead,
you need a custom database type with the following (exactly as shown for your
DB):
CUSTOM DATABASE
TYPE (exactly as shown, change version number if you have a different
version):
MySql.Data.MySqlClient.MySqlConnection, MySql.Data, Version=5.1.5.0,
Culture=Neutral, PublicKeyToken=c5687fc88969c44d
CONNECTION
STRING:
Server=localhost;Database=MPNews;UserID=MPNews;Password=MPNews
Once you
restart MPNews, you should be working normally.
We will
document further and update in future release to resolve.
Chris