Last modified: 2012-05-15 14:26:27 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T3946, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 1946 - Cannot perform page edits with Media Wiki
Cannot perform page edits with Media Wiki
Status: RESOLVED WORKSFORME
Product: MediaWiki
Classification: Unclassified
Page editing (Other open bugs)
1.4.x
Other other
: High blocker with 1 vote (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2005-04-22 15:55 UTC by Nick Lutz
Modified: 2012-05-15 14:26 UTC (History)
0 users

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Nick Lutz 2005-04-22 15:55:25 UTC
Upon edit of any page, upon click of the "Save button" the edit fails. No error
is returned to the browser (IE, FireFox, Netscape).  An error is found under the
Apache logs as follows:<br><br>
[Fri Apr 22 11:11:42 2005] [notice] child pid 2433 exit signal Illegal
instruction (4)<br><br>
This problem can be reproduced at will.<br>
Closer examination with the tusc analyzer shows:<br><br>
readlink("/opt", "", 1024)                                                    
ERR#22 EINVAL<br>
readlink("/opt/mediawiki-1.4.1", "", 1024)                                    
ERR#22 EINVAL<br>
readlink("/opt/mediawiki-1.4.1/includes", "", 1024)                           
ERR#22 EINVAL<br>
readlink("/opt/mediawiki-1.4.1/includes/normal", "", 1024)                    
ERR#22 EINVAL<br>
readlink("/opt/mediawiki-1.4.1/includes/normal/UtfNormal.php", "", 1024)      
ERR#22 EINVAL<br>
open("/opt/mediawiki-1.4.1/includes/normal/UtfNormal.php", O_RDONLY, 0666)     =
11<br>
fstat(11, 0x67e82fd0)                                                          =
0<br>
fstat(11, 0x67e830d0)                                                          =
0<br>
lseek(11, 0, SEEK_CUR)                                                         =
0<br>
lseek(11, 0, SEEK_SET)                                                         =
0<br>
close(11)                                                                      =
0<br>
  Received signal 10, SIGBUS, in user mode, [caught], partial siginfo<br>
    Siginfo: si_code: I_NONEXIST, faulting address: 0x67e92f28, si_errno: 0<br>
    PC: 0xc25b7a9f, instruction: 0x6bd33fc1<br>
exit(4) [implicit]      WIFSIGNALED(SIGILL)<br><br>
The version page shows this:<br><br>
    MediaWiki (http://wikipedia.sf.net/): 1.4.2 <br>
    PHP (http://www.php.net/): 4.3.8 (apache2handler) <br>
    MySQL (http://www.mysql.com/): 4.1.10a-max<br><br>

My Workaround is to use another system with older versions of everything.<br><br>
    MediaWiki (http://wikipedia.sf.net/): 1.4.1<br>
    PHP (http://www.php.net/): 4.2.3 (apache2filter)<br> 
    MySQL (http://www.mysql.com/): 4.0.24-max<br><br>

Any help would be appreciated.
Comment 1 Nick Lutz 2005-04-22 18:19:36 UTC
I do run other MySQL and PHP applications on the same machine without error. 
Not that this adds a great deal of information, it does show that at least MySQL
and PHP are working to a degree.
Comment 2 Tomer Chachamu 2005-04-24 15:37:57 UTC
Try upgrading these seperately. Upgrade PHP first (least likely to be
problematic), then MySQL. Next, try to upgrade Mediawiki. Make sure the MySQL
version is correct in Localsettings.php.

Also, check if other queries also fail e.g. registering, logging in, adding to
watchlist, recentchanges, allpages, viewing watchlist.
Comment 3 Nick Lutz 2005-04-25 13:18:39 UTC
Try upgrading these seperately.

Upgrade PHP first (least likely to be problematic)
Then MySQL. 
Next, try to upgrade Mediawiki. 

> Done.  Have tried several versions.

Make sure the MySQL

version is correct in Localsettings.php. 

>The only versioning I can find is for MediaWiki and that is correct.

Also, check if other queries also fail e.g. registering, logging in, adding to
watchlist, recentchanges, allpages, viewing watchlist.

> Unable to reproduce the problem in any area other than Edit Saves!  All other
areas look find.

As mentined before, if I use very old versions of PHP and Apache, the problem
goes away.  The problems creep up on me when using new versions of Apache and PHP.
Comment 4 Nick Lutz 2005-05-04 18:45:40 UTC
I'm currently working directly with HP technical support on this issue.  I'm not
sure where the fault lies at this point.  I'm tending to believe it is an HP
Apache Threading problem.  HP is currently examining the core files produced
when an edit/save is attempted.

This problem cannot be reproduced in older versions of Apache and PHP, yet the
older versions of PHP do not allow file tests and such as required by index.php.

if( !file_exists( 'LocalSettings.php' ) ) {... <== won't work on earlier
versions of PHP

As strange as it sounds, my other 8 PHP applications are all working well on the
same version of Apache/PHP that is troublesome to MediaWiki.  Any help would be
appreciated. I'll report back on what HP finds upon their analysis of the problem.
Comment 5 Nick Lutz 2005-05-04 18:46:49 UTC
Oh yes - another somewhat important piece of info:

I've upgraded to MW 1.4.4 and the problem still occurs.
Comment 6 Nick Lutz 2005-05-06 00:06:54 UTC
I've since built my own httpd and php module on the aforementioned HP platform.
 The MediaWiki works without fail now.  The primary difference between my build
and the HP build of Apache:  My is a non-threaded "prefork" Apache binary unlike
the threaded "worker MPM" Apache binary.  

This problem is solved.  The culprit; HP threading?  I've sent the appropriate
data back to HP and will post their reply.  Since I'm not very familiar with
BugZilla, I'm going to leave this issue open and post the reply from HP on this
problem.  If I close this issue, I'm not sure if I can get back in to add
commentary.

Bottom line:  Version numbers are not that important - but build options are. 
HP supplied threaded Apache2 is not MediaWiki compatible (and would suspect
other applications may break also).

More to follow...
Comment 7 Brion Vibber 2005-05-06 00:20:45 UTC
PHP explicitly recommends against the threaded model for Apache2 as it's known to break things.

Either use prefork Apache, or the CGI interface for PHP instead of the Apache module.
Comment 8 Nick Lutz 2005-05-11 14:47:47 UTC
After a bit of discussion, debugging, and consultation with the HP staff, they have found a fix.  It 
appears to be a thread stack size problem.  Increasing the thread stack size to 262144 seemed to do the 
trick.  The case number at HP for this problem is:  3210446197.

Also see:

http://httpd.apache.org/docs-2.1/mod/mpm_common.html#threadstacksize

For a more detailed discussion on the ThreadStackSize directive.

I'm now closing this issue as the MediaWiki now works as designed.

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links