[ZendTo] Re: Large Files and Rebuilding libphp5.so

Brian Ott Brian.Ott at oicr.on.ca
Thu Jan 5 15:30:12 GMT 2012


On Thu, Jan 05, 2012 at 09:07:52AM +0000, Jules wrote:
> On 04/01/2012 22:29, Brian Ott wrote:
> > Hey Jules,
> >
> > As a test I went ahead and followed these steps:
> > http://zend.to/phpfix.php
> >
> > I started from fresh the only thing I did NOT do was alter the fix:
> >
> > perl -i -pe 's/int zend_atoi/long zend_atoi/'
> > Zend/zend_operators.[ch];
> > perl -i -pe 's/\n/@@@@@@/g' Zend/zend_operators.c;
> > perl -i -pe 's/(long zend_atoi.*?)int retval/$1long retval/m'
> > Zend/zend_operators.c;
> > perl -i -pe 's/@@@@@@/\n/g' Zend/zend_operators.c;
> > perl -i -pe 's/atoi\(content_length\)/atol(content_length)/' `find
> > sapi -name '*.c'`
> > perl -i -pe 's/\(uint\)( SG\(request_info\))/$1/' `find sapi -name
> > '*.c'`;
> > perl -i -pe 's/uint post_data_length, raw/uint
> > IGNORE_post_data_length, IGNORE_raw/' main/SAPI.h;
> > perl -i -pe 's/} sapi_request_info/\tlong post_data_length,
> > raw_post_data_length;\n} sapi_request_info/' main/SAPI.h;
> > perl -i -pe 's/int read_post_bytes/long read_post_bytes/'
> > main/SAPI.h;
> > perl -i -pe 's/int boundary_len *= *0, *total_bytes *= *0/long
> > total_bytes=0; int boundary_len=0/' main/rfc1867.c;
> > perl -i -pe 's/int max_file_size *= *0,/long max_file_size = 0; int /'
> > main/rfc1867.c;
> >
> > I left that part out to make sure it wasn't something with Debians
> > version of PHP. Anyways I ran through and everything worked. I copied
> > over the libphp5.so file and tried to dropoff a file, everything went
> > well except of course the 4G file I uploaded failed.
> Well it would. You've just built the file you already had.
> >
> > So I suspect something within these edits is the problem, I remember
> > someone once asked you on this list before where you got this and you
> > said to check google. I tried looking but with no success. I'm going
> > to try and do it manually and see what happens.
> It's possible the PHP source has changed again so one of the patterns is 
> failing to match. Exactly what version of PHP are you trying to do it 
> with? Does Ubuntu use the same version now?
> 
> Jules.

I just checked Ubuntu 10.10 uses PHP5 5.3.3
Ubuntu 10.04 uses PHP5 5.3.2
Ubuntu 11.04 uses PHP5 5.3.5

Debian 6 (Squeeze) uses PHP5 5.3.3

So in theory the notes for Ubuntu 10 should be dead on accurate. 

> >
> >
> > On Wed, Jan 04, 2012 at 08:46:22PM +0000, Jules wrote:
> >>
> >> On 04/01/2012 16:44, Brian Ott wrote:
> >>> On Wed, Jan 04, 2012 at 03:31:39PM +0000, Jules wrote:
> >>>> Can you try switching on all the error_reporting in the Apache2 version
> >>>> of php.ini and then see if it produces any errors?
> >>>> Also, what does the error_log for your web server say? Either of those
> >>>> may show what's wrong.
> >>>>
> >>>> Jules.
> >>> Thanks Jules, this helps. I turned on PHP error logging. This is what
> >>> I see:
> >> All the "Undefined index" notices are harmless and can be ignored.
> >>> Notice: Undefined index: MySQLrecipientQuery in
> >>> /opt/zendto/lib/MySQL.php on line 37
> >>>
> >>> Notice: Undefined index: maxsubjectlength in
> >>> /opt/zendto/lib/NSSDropbox.php on line 206
> >>>
> >>> Notice: Undefined index: authLDAPAdmins in
> >>> /opt/zendto/lib/NSSLDAPAuthenticator.php on line 67
> >>>
> >>> Notice: Undefined index: authLDAPBindDn in
> >>> /opt/zendto/lib/NSSLDAPAuthenticator.php on line 76
> >>>
> >>> Notice: Undefined index: authLDAPBindPass in
> >>> /opt/zendto/lib/NSSLDAPAuthenticator.php on line 77
> >>>
> >>> Notice: Undefined index: authLDAPMemberKey in
> >>> /opt/zendto/lib/NSSLDAPAuthenticator.php on line 79
> >>>
> >>> Notice: Undefined index: authLDAPMemberRole in
> >>> /opt/zendto/lib/NSSLDAPAuthenticator.php on line 80
> >>>
> >>> Notice: Undefined index: uname in /opt/zendto/lib/NSSDropbox.php on
> >>> line 1144
> >>>
> >>> Notice: Undefined index: uname in /opt/zendto/lib/NSSDropbox.php on
> >>> line 1180
> >>>
> >>> Notice: Undefined index: zendto-session in
> >>> /opt/zendto/lib/NSSDropbox.php on line 1093
> >>>
> >>> Notice: Use of undefined constant REMOTE_ADDR - assumed 'REMOTE_ADDR'
> >>> in /opt/zendto/lib/NSSDropbox.php on line 1045
> >>>
> >>> Notice: Undefined index: action in /opt/zendto/www/index.php on line
> >>> 50
> >>>
> >>> Notice: Undefined index: action in /opt/zendto/www/index.php on line
> >>> 50
> >>>
> >>>> On 04/01/2012 15:23, Brian Ott wrote:
> >>>>> On Wed, Jan 04, 2012 at 09:15:41AM +0000, Jules wrote:
> >>>>>> On 03/01/2012 19:43, Brian Ott wrote:
> >>>>>>> On Tue, Jan 03, 2012 at 04:36:03PM +0000, Jules wrote:
> >>>>>>>> On 03/01/2012 15:17, Brian Ott wrote:
> >>>>>>>>> On Tue, Jan 03, 2012 at 03:07:22PM +0000, Jules wrote:
> >>>>>>>>>> Are you sure your MySQL server is actually running? Not a clue how to
> >>>>>>>>>> start it in Debian, but you should check that the mysqld is actually
> >>>>>>>>>> running.
> >>>>>>>>> MySQL is running in debian you use '/etc/init.d/mysql start'
> >>>>>>>>>
> >>>>>>>>> root      1322     1  0  2011 ?        00:00:00 /bin/sh
> >>>>>>>>> /usr/bin/mysqld_safe
> >>>>>>>>> mysql     1554  1322  0  2011 ?        00:03:17 /usr/sbin/mysqld
> >>>>>>>>> --basedir=/usr --datadir=/var/lib/mysql --user=mysql
> >>>>>>>>> --pid-file=/var/run/mysqld/mysqld.pid
> >>>>>>>>> --socket=/var/run/mysqld/mysqld.sock --port=3306
> >>>>>>>>> root      1555  1322  0  2011 ?        00:00:00 logger -t mysqld -p
> >>>>>>>>> daemon.error
> >>>>>>>>>
> >>>>>>>>> ps shows its running, but I would have thought that isn't the issue
> >>>>>>>>> since it still states at the end 'build successful' I'm not sure why
> >>>>>>>>> exactly it needs MySQL daemon running while building libphp5 (due to
> >>>>>>>>> my ignorance).
> >>>>>>>> Because it likes to test things, and the lack of mysqld is what is
> >>>>>>>> causing the build to fail:
> >>>>>>>>
> >>>>>>>> Timed out waiting for mysql server to be available
> >>>>>>>>
> >>>>>>>> appears in the error log you included.
> >>>>>>>>
> >>>>>>>> Whether that will actually help, I don't know, but it might get rid of
> >>>>>>>> that reason for it failing, so you can see later tests run.
> >>>>>>>>
> >>>>>>>> Jules.
> >>>>>>> Thanks for the reply Jules, I went back and made sure I had things
> >>>>>>> setup right. I followed the instructions again and I was able to build
> >>>>>>> all the new .deb packages with the command ' dpkg-buildpackage
> >>>>>>> -rfakeroot -uc -b -j2'
> >>>>>>>
> >>>>>>> Everything seemed OK nothing alarming was set off, once it completed
> >>>>>>> building I followed the exact instructions:
> >>>>>>>
> >>>>>>> cd debian/libapache2-mod-php5/usr/lib/apache2/modules
> >>>>>>> mv /usr/lib/apache2/modules/libphp5.so
> >>>>>>> /usr/lib/apache2/modules/libphp5.so-UBUNTU
> >>>>>>> cp libphp5.so /usr/lib/apache2/modules/
> >>>>>>>
> >>>>>>> (this is the same in Debian)
> >>>>>>>
> >>>>>>> -rw-r--r-- 1 root root 8.0M Jan  3 14:08 libphp5.so
> >>>>>>>
> >>>>>>> The file is there and it looks good but I'm still experiencing the
> >>>>>>> same symptoms. I cannot login or hit the verify page while trying to
> >>>>>>> do a dropoff. Is there any debugging I could do or turn on? I'm
> >>>>>>> curious as to why this new one does this but the old one is fine. I'm
> >>>>>>> doing this on php version 5.3.3.
> >>>>>> Have you configured the authenticator in preferences.php correctly?
> >>>>>> Unless you have set that up (and added a user if you're using local
> >>>>>> authentication) you won't be able to login. Check /var/zendto/zendto.log
> >>>>>> as well.
> >>>>>>
> >>>>>> Jules
> >>>>> Yes, to mention we are using LDAP, with the default libphp5.so file
> >>>>> that comes with debian when installing it through apt, everything
> >>>>> works. I can login with LDAP credentials, I can have users who are not
> >>>>> logged in 'dropoff' files etc. The problem then is large file sizes,
> >>>>> so I followed the instructions on zendto.com about modifying php5 to
> >>>>> support larger file sizes. I've rebuilt the libphp5.so according to
> >>>>> the website, and now using that modified one I get these issues where
> >>>>> I cannot login and use the 'dropoff' feature.
> >>>>>
> >>>>> When I try to login it just brings me back to the login page. If I try
> >>>>> to just do a dropoff without login It brings me to a page failed (here
> >>>>> is a Screnshot: http://imgur.com/dxMwD)
> >>>>>
> >>>>> So the problem is the libphp5.so but I cannot figure out what about it
> >>>>> is the problem. I redid the steps according to your website and it
> >>>>> went fine. So what I'm curious about is why its failing, do I need to
> >>>>> do something else? How can I test that the libphp5.so that I have that
> >>>>> is modified is any good? How can I see why its failing.
> >>>>>
> >>>>> If I replace back the original libphp5.so file everything works but
> >>>>> then I don't get large file transfers.
> >>>>>
> >>>>> (Btw when it works, it works great!)
> >>>>>
> >>>>>> -- 
> >>>>>> Julian Field MEng CITP CEng
> >>>>>> www.Zend.To
> >>>>>>
> >>>>>> Follow me at twitter.com/JulesFM
> >>>>>> PGP footprint: EE81 D763 3DB0 0BFD E1DC 7222 11F6 5947 1415 B654
> >>>>>>
> >>>>>> 'It's okay to live without all the answers' - Charlie Eppes, 2011
> >>>>>> 'All programs have a desire to be useful' - Tron, 1982
> >>>>>> 'That is the land of lost content,
> >>>>>>      I see it shining plain,
> >>>>>>      The happy highways where I went,
> >>>>>>      And cannot come again.' - A.E. Houseman
> >>>>>>
> >>>>>> _______________________________________________
> >>>>>> ZendTo mailing list
> >>>>>> ZendTo at zend.to
> >>>>>> http://mailman.ecs.soton.ac.uk/mailman/listinfo/zendto
> >>>> Jules
> >>>>
> >>>> -- 
> >>>> Julian Field MEng CITP CEng
> >>>> www.Zend.To
> >>>>
> >>>> Follow me at twitter.com/JulesFM
> >>>> PGP footprint: EE81 D763 3DB0 0BFD E1DC 7222 11F6 5947 1415 B654
> >>>>
> >>>> 'It's okay to live without all the answers' - Charlie Eppes, 2011
> >>>> 'All programs have a desire to be useful' - Tron, 1982
> >>>> 'That is the land of lost content,
> >>>>     I see it shining plain,
> >>>>     The happy highways where I went,
> >>>>     And cannot come again.' - A.E. Houseman
> >>>>
> >>>> _______________________________________________
> >>>> ZendTo mailing list
> >>>> ZendTo at zend.to
> >>>> http://mailman.ecs.soton.ac.uk/mailman/listinfo/zendto
> >> Jules
> >>
> >> -- 
> >> Julian Field MEng CITP CEng
> >> www.Zend.To
> >>
> >> Follow me at twitter.com/JulesFM
> >> PGP footprint: EE81 D763 3DB0 0BFD E1DC 7222 11F6 5947 1415 B654
> >>
> >> 'Teach a man to reason, and he will think for a lifetime.' - Phil Plait
> >> 'All programs have a desire to be useful' - Tron, 1982
> >>
> >> _______________________________________________
> >> ZendTo mailing list
> >> ZendTo at zend.to
> >> http://mailman.ecs.soton.ac.uk/mailman/listinfo/zendto
> 
> Jules
> 
> -- 
> Julian Field MEng CITP CEng
> www.Zend.To
> 
> Follow me at twitter.com/JulesFM
> PGP footprint: EE81 D763 3DB0 0BFD E1DC 7222 11F6 5947 1415 B654
> 
> 'It's okay to live without all the answers' - Charlie Eppes, 2011
> 'All programs have a desire to be useful' - Tron, 1982
> 'That is the land of lost content,
>   I see it shining plain,
>   The happy highways where I went,
>   And cannot come again.' - A.E. Houseman
> 
> _______________________________________________
> ZendTo mailing list
> ZendTo at zend.to
> http://mailman.ecs.soton.ac.uk/mailman/listinfo/zendto

-- 
Brian Ott
Unix System Administrator

Ontario Institute for Cancer Research
MaRS Centre, South Tower
101 College Street, Suite 800
Toronto, Ontario, Canada M5G 0A3

Telephone:	647-260-7977
Email:		brian.ott at oicr.on.ca
www.oicr.on.ca



This message and any attachments may contain confidential and/or privileged information for the sole use of the intended recipient. Any review or distribution by anyone other than the person for whom it was originally intended is strictly prohibited. If you have received this message in error, please contact the sender and delete all copies. Opinions, conclusions or other information contained in this message may not be that of the organization.


More information about the ZendTo mailing list