Kip,

I think I mentioned this yesterday in an private email message already. I
had the same problem with Apache::Session 1.03 in my environment. For some
obscure reason, my tied %session didn't go out of scope and was never
"untied" at the end of one request. 
This results in a situation where Apache::Session keeps a readlock and the
next time you try to use the same session it'll hang in IPC::Semaphore::op
when it tries to acquire the readlock. 
I worked around this situation by explictly untie'ing the tied %session at
the end of my request by using 

     $r->register_cleanup(sub { untie %session });

Since then the Semaphore problems have disappeared.

Hope this helps
  Tobias

At 01:54 PM 10/21/99 -0400, Kip Cranford wrote:
>
>Again, I'm using mod_perl 1.21, apache 1.3.9, Apache::Session 1.03, on a
>RedHat 6 linux system with perl 5.005_03, and am using Netscape Comm.
>4.51 as my browser.
>
>The problem now seems to be Apache::Session and file uploads.  My
>handler is providing a simple file upload interface, and I'm using
>Apache::Session to keep track of filenames, content types, sizes, etc.
>
>Using a very simple script, in which I store only a single scalar
>variable in my session, and using the "multipart/form-data" encoding
>type on my form, I can get the script to hang every time.  It _always_
>hangs in the same place in the "op" function:
>
>  DB<1> IPC::Semaphore::op(/usr/lib/perl5/5.00503/IPC/Semaphore.pm:90):
>90:     croak 'Bad arg count' if @_ % 3; 
>  DB<1> IPC::Semaphore::op(/usr/lib/perl5/5.00503/IPC/Semaphore.pm:91):
>91:     my $data = pack("s*",@_);
>  DB<1> IPC::Semaphore::op(/usr/lib/perl5/5.00503/IPC/Semaphore.pm:92):
>92:     semop($$self,$data);
>
>This happens whether I use Apache::Session::DBI or ::File...
>
>If I use the older encoding type on the form, everything works fine.
>I'm using CGI.pm, but right now only for the param() function.  The html
>form was specified directly in a here document.
>
>Has anyone seen this behavior before?  Any help would be GREATLY
>apprecitated!!
>
>Thanks,
>
>--kip 

Reply via email to