Page MenuHomePhabricator

Detect MySQL 4.1 errors and either work around or notify user of problem
Closed, ResolvedPublic

Description

There are problems when installing with with MySQL 4.1 due to changes in the
protocol. We need to either detect this condition and work around it, or notify the user
how to fix it.


Version: unspecified
Severity: major
URL: http://mail.wikipedia.org/pipermail/wikitech-l/2004-October/025689.html

Details

Reference
bz650

Revisions and Commits

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 7:09 PM
bzimport set Reference to bz650.
bzimport added a subscriber: Unknown Object (MLST).

ikeb wrote:

Brings up Database Error page with a "internal error" message.

richholton wrote:

(In reply to comment #1)

Brings up Database Error page with a "internal error" message.

Can you provide any details?

ikeb wrote:

I didn't perform the actual install so can't vouch for any errors observed
during that time. We're running MySQL 4.1.x and PHP 5. Apparently mediawiki is
not fully setup to work with mysql 4.1.x?

The '''Database Error''' page is arrived at when attempting to restore a deleted
page and thus following a deleted file link at the '''View and restore deleted
pages''' special page. The same '''Database Error''' page is arrived at when
attempting to follow a Deletion Log link at the '''Recent Changes''' page.

If this is not related specifically to the installation issue with the MySQL authentication
protocol, please file a separate bug. This however sounds like the log bug which has been
fixed already. Upgrade to 1.4.0 final when it is released later today, and run the updater to fix
the logging table.

1.4.0 released; kicking back to 1.5 blockers.

Fixed in CVS HEAD for 1.5.

Now prominently warns about MySQL 4.1 problems if old libraries detected.
Key length is shorter so create works.

  • Bug 2491 has been marked as a duplicate of this bug. ***

ben_mw wrote:

I guess re-opening this bug is too drastic a measure, but despite listing this bug (and mine, <a href="http://bugzilla.wikimedia.org/
show_bug.cgi?id=2491">2491</a>, as a duplicate) the recommendation from Ike Bottema "to either detect this condition and work
around it, or notify the user how to fix it" has not been implemented at all. Using the latest stable version, 1.4.5, I first get a happy
message about the database:

• Connected to database... 4.1.10-standard; enabling MySQL 4 enhancements

And then the installation ends with this:

<code>Sorry! The wiki is experiencing some technical difficulties, and cannot contact the database server.</code>

So this fix for 1.5 doesn't do people much good yet:

"Fixed in CVS HEAD for 1.5.

Now prominently warns about MySQL 4.1 problems if old libraries detected.
Key length is shorter so create works."

If I remember how I successfully installed last time, the error message just needs to be extended to tell installers to create the mysql
user accounts and passwords themselves.

The fix is for 1.5 and doesn't appear in 1.4.5.

Have you tried installing the current version pulled from CVS HEAD, or at least 1.5beta1?
Can you confirm correct or incorrect behavior there?

ben_mw wrote:

(In reply to comment #9)

The fix is for 1.5 and doesn't appear in 1.4.5.

Have you tried installing the current version pulled from CVS HEAD, or at least 1.5beta1?
Can you confirm correct or incorrect behavior there?

Sorry, after I was mostly done with my comment I realized the fix referred to 1.5 only. And
no, I haven't checked the CVS... I take it that it really is fixed there, but the thing is that the
current error message in the stable release is so unhelpful that even though I'd worked
around the bug a week or two ago, when I hit it again I was back at square one, looking at
my own bug report to try to remember how I worked around it-- simple really, the
databases and database user with password have to be created manually, even if root
access appears to work.

My point is that simply adding the below text to the current error message (a ten second fix)
would make it an easy work-around, instead of a "what the hell do I do now / file an
annoying duplicate bug report" moment.

Something like, "You'll have to create a database user yourself and enter the details here."

If 1.5 will be out soon forget it, but the Beta warnings scared me from putting it straight on
my site, despite the very attractive increased Sysop features, and I don't have the time to
have fun.

  • Bug 3052 has been marked as a duplicate of this bug. ***
epriestley added a commit: Unknown Object (Diffusion Commit).Mar 4 2015, 8:20 AM