[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: php4 & phpmyadmin problem




Here also the ltrace output:
------------
7425 memcpy(0x8115299, "\n        <td class="navNormal" n"..., 2573) = 0x8115299
7425 __ctype_b_loc()                             = 0x400500cc
7425 __ctype_b_loc()                             = 0x400500cc
7425 strcmp("ap::buff::read", "ap::buff::writev") = -5
7425 strcmp("ap::buff::write", "ap::buff::writev") = -118
7425 strcmp("ap::buff::writev", "ap::buff::writev") = 0
7425 strcmp("ssl", "ssl")                        = 0
7425 memcpy(0x8114cc1, "\n        <td class="navDrop" now"..., 678) = 0x8114cc1
7425 memcpy(0x8114f67, "                <td nowrap="nowr"..., 191) = 0x8114f67
7425 memcpy(0x8115026, "\n\n", 2)                = 0x8115026
7425 memcpy(0x8115028, "<br />\n", 7)            = 0x8115028
7425 --- SIGSEGV (Segmentation fault) ---
7425 chdir("/etc/apache")                        = 0
7425 sigemptyset(0xbfff1c64)                     = 0
7425 sigaction(11, 0xbfff1c60, 0xbfff1bd0)       = 0
7425 getpid()                                    = 7425
7425 kill(7425, 11)                              = 0
7425 --- SIGSEGV (Segmentation fault) ---
7425 +++ killed by SIGSEGV +++
-------------------

Interesting. Seems that a memcpy makes the error.

Lukas
Hi Almut,

first of all, thanks for your reply. I did what you said, now I sit here
with loads of output. After checking it, I guess the interesting stuff
is there (at the end of the log):
---------SNIP---------------
3819  writev(4, [{"fca\r\n<table border=\"0\" cellpaddi"..., 4049},
{"6ad\r\n", 5}, {"\n        <td class=\"navNormal\" n"..., 1709},
{"\r\n", 2}], 4) = 5765
3819  getcwd("/usr/share/phpmyadmin", 4096) = 22
3819  lstat64("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
3819  lstat64("/usr/share", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
3819  lstat64("/usr/share/phpmyadmin", {st_mode=S_IFDIR|0755,
st_size=8192, ...}) = 0
3819  lstat64("/usr/share/phpmyadmin/libraries", {st_mode=S_IFDIR|0755,
st_size=4096, ...}) = 0
3819  lstat64("/usr/share/phpmyadmin/libraries/relation.lib.php",
{st_mode=S_IFREG|0644, st_size=33556, ...}) = 0
3819  open("/usr/share/phpmyadmin/libraries/relation.lib.php", O_RDONLY) = 8
3819  fstat64(8, {st_mode=S_IFREG|0644, st_size=33556, ...}) = 0
3819  fstat64(8, {st_mode=S_IFREG|0644, st_size=33556, ...}) = 0
3819  lseek(8, 0, SEEK_CUR)             = 0
3819  lseek(8, 0, SEEK_SET)             = 0
3819  read(8, "<?php\n/* $Id: relation.lib.php,v"..., 8192) = 8192
3819  read(8, "] . \': \'\n             . (($cfgRe"..., 8192) = 8192
3819  brk(0)                            = 0x857c000
3819  brk(0x85a4000)                    = 0x85a4000
3819  brk(0)                            = 0x85a4000
3819  brk(0)                            = 0x85a4000
3819  brk(0x859a000)                    = 0x859a000
3819  brk(0)                            = 0x859a000
3819  read(8, "settings\n *\n * @access  public\n "..., 8192) = 8192
3819  read(8, "teAlterTable($col, $col, $types["..., 8192) = 8192
3819  read(8, ">\' . \"\\n\";\n        $reloptions[\'"..., 8192) = 788
3819  read(8, "", 8192)                 = 0
3819  close(8)                          = 0
3819  --- SIGSEGV (Segmentation fault) @ 0 (0) ---
3819  chdir("/etc/apache")              = 0
3819  rt_sigaction(SIGSEGV, {SIG_DFL}, {SIG_DFL}, 8) = 0
3819  getpid()                          = 3819
3819  kill(3819, SIGSEGV)               = 0
3819  sigreturn()                       = ? (mask now [RTMIN])
3819  --- SIGSEGV (Segmentation fault) @ 0 (0) ---
-----------------

Before this, it opens other files in /usr/share/phpmyadmin/libraries,
but works ok. Maybe someone could help here? ;)

CHeers

Lukas

Almut Behrens schrieb:

  
On Wed, Jun 08, 2005 at 07:51:59PM +0200, Lukas Demetz wrote:
 

    
Hi there,

today I upgraded one of our servers to Debian 3.1, without bigger
problems. Let me list you the old vs. new versions of some interesting
packages:
apache 1.26 -> 1.33
php4 4.1 -> 4.3 (module)

As now, everything works smoothly (nice work guys! :) ), however, I
noticed a strange behaviour using phpMyAdmin (2.6.2, same as before).
Everytime I try to list the content of a table, I get an empty table. In
addition, there is an error entry in /var/log/apache/error.log:
--------
[notice] child pid 28099 exit signal Segmentation fault (11)
--------
   

      
To narrow down on the problem, it might help to have an strace of what
exactly is happening immediately before the apache process segfaults. 
To get one, just attach strace to one of the apache children (use 'ps axf'
to find out which of the apache processes are children, and their PID,
and then pass that PID to 'strace -f -o /tmp/apache.trace -p <PID>' --
you need to run strace under the UID of the webserver or as root, btw),
and then simply reload the webpage until that child segfaults...

In the strace output, look for what's happening before the process gets
the SIGSEGV, somewhere at the end.  If what you find doesn't make any
sense to you, you might want to post a sensibly trimmed section of the
strace output here for us to look at...

Cheers,
Almut


 

    
  

-- 
Lukas Demetz
Digiem Snc
http://www.digiem.net

Reply to: