Mailing List
Home
Forum Home
Linux - General Red Hat Linux discussion list
Enterprise Linux 3 - Discussion of Red Hat Enterprise Linux 3 (Taroon)
Installation - Getting started with Red Hat Linux
Red Hat Linux 9 - Discussion of Red Hat Linux 9 (Shrike)
Red Hat Linux 7.3 - Discussion of Red Hat Linux 7.3 (Valhalla)
Red Hat Linux 7.2 - Discussion of Red Hat Linux 7.2 (Enigma)
Apache Web Server
Oracle database, Microsoft SQL server ...
Subjects
application/x mplayer2 plugin
RPM error: db4 error(16) from dbenv >remove: Device or resource
   busy
Command stream end of file while reading
X Windows problem (xauth)
Upgrading openoffice 1 1 rpm
FTP: connection refused
FTP: connection refused
mount: /dev/cdrom: is not a valid block device
Dell Precision 650, RedHat 9, no sound
how to trace the cause resulting in the crash of bind server
Virus on the list
UNINSTALL RPM MYSQL
usb pen drives: mounting as a user
broadcom network interface
make mrproper
sendmail configuration on redhat
Couldn 't open PID file /var/run/named/named pid Permission denied
Promise 378 controller
kernel 2 6 and /dev/sound/mixer not found
Problem using up2date
mrtg step by step howto/configuration for a newbie?
Compiling and Installing Kernel 2 6
Can 't locate module ppp0, can 't locate module ppp compress 21
HOW I CAN MAKE BOOTABLE FLOPPY DISKET
Lotus Notes under Wine
/etc/security/limits conf question
Intel E/1000 driver
Command stream end of file while reading
rpm database corrupt
qla2300 modules
 
Search:  
Power your search with and, or, +, -, or "some phrase" operators.
Detecting early termination by client

Detecting early termination by client

2005-04-15       - By Jason Dixon

 Back
Reply:     1     2  

On Apr 15, 2005, at 8:14 PM, Stephen Carville wrote:

> I have a Perl CGI script that runs on Apache on Linux using mod_cgi.
> The script takes a XML document POSTed by the client, parses it,
> validates the data, places the order into the Oracle database, sends a
> response back to the customer, then creates a log entry of what
> happened.  Unfortnately I have one customer who insists on not waiting
> for an acknowlegment (even tho he requests one) but drops the
> connection as soon as the data is on the wire.  This (I think) is
> causing Apache to terminate the CGI process before it completes the
> processing.  Sometimes the order gets placed, sometimes it does not.
> Since logging happens at the end, I don't always know an order was
> attempted.
>
> Is there any way I can capture this early terminaition so I can handle
> it intelligently?  I know how to set up a signal handler but I don't
> know what signal -- if any --  to look for.

First, this is a perl/CGI question, not a Red Hat question.  You would
be better off asking this on PerlMonks.  Nevertheless...

Because HTTP is a stateless protocol, there is no such thing as a
signal handler.  The best way for you to determine if this is what is
causing your missing orders is to reproduce the client's behavior and
track the partial(?) order with your session identifier.  I can't
imagine how you might be losing an order, unless they're simply not
hitting the final submit.  Presumably, you "fork" them into a loop,
re-requesting a status update from the database every X seconds using
the session ID.  In the case of your rogue customer, if they never
return to get the status, the order should still be transmitted... they
just don't get a summary.

At least, that's my opinion on your situation given a complete lack of
technical details.  :)

--
Jason Dixon
DixonGroup Consulting
http://www.dixongroup.net


--
redhat-list mailing list
unsubscribe mailto:redhat-list-request@(protected)?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/redhat-list

Earn $52 per hosting referral at Lunarpages.