[ic] Switching from HIGH mode to RPC mode problem

Mark Bryant mark at eros-shop.co.uk
Thu Aug 11 04:12:19 EDT 2005


At 08:23 11/08/2005, you wrote:
>On Thu, 11 Aug 2005 02:06:08 +0100
>Mark Bryant <mark at eros-shop.co.uk> wrote:
>
> >
> > Hi Everyone,
> >
> > In an attempt to prevent the odd order from arriving without it's credit
> > card number details when PGP fails under high server load, I've changed to
> > RPC mode as suggested by the many messages I read about it on google.
> >
> > Now whenever a page contains a [perl][/perl] block, of which there are
> > quite a few, I now get this error message appearing in the log followed by
> > the block of perl concerned. The page name varies of course, but the error
> > remains the same.
> >
> > [10/August/2005:16:12:21 +0000] eros /cgi-bin/eros/ord/basket.html Safe:
> > Can't locate object method "TIEHASH" via package "DBI::st" at
> > /usr/lib/perl5/site_perl/5.6.1/i386-linux/DBI.pm line 1007.
> >
> > I've googled loads for this error and I see lots of people talking about
> > it, but no one seems to give details of an appropriate fix. Please could
> > someone explain what I need to do to put this right. I don't really
> > understand why the [perl] blocks work in HIGH mode and not in RPC mode, 
> but
> > I guess there's some complicated technical
> > reason why.
> >
> > I've searched CPAN for DBI::st incase it's something I needed to install
> > but nothing seems to exist with that name:
> >
> > cpan> i DBI::st
> > CPAN: Storable loaded ok
> > Going to read /root/.cpan/Metadata
> >    Database was generated on Wed, 10 Aug 2005 23:08:26 GMT
> > Strange distribution name [DBI::st]
> > No objects found of any type for argument DBI::st
> >
> > I'm using the following on a RedHat Linux system:
> >
> >          IC 4.8.7
> >
> >          Perl 5.6.1
> >
> >          Digest::MD5 found (v2.30).
> >          LWP::Simple found (v1.36).
> >          MIME::Base64 found (v2.18).
> >          SQL::Statement found (v0.1021).
> >          Safe::Hole found (v0.08).
> >          Storable found (v2.06).
> >          Tie::Watch found (v1.0).
> >          URI::URL found (v5.03).
> >
> >          GDBM available (v1.05)
> >          No Berkeley DB_File.
> >          DBI enabled (v1.35), available drivers:
> >
> > In the mean time I've gone back to HIGH mode until a solution to this odd
> > problem can be found.
>
>Can you please post an example of these Perl blocks ?
>
>Bye
>         Racke

Hi Racke,

Sure, this is a very simple bit of code:

[perl tables]
   my $myout = '';
   $myout = sprintf("<TD ALIGN=RIGHT class=contentbar1>&#163;%.2f</td>", 
$Tag->subtotal({ noformat => 1 })*0.175);
   return $myout;
[/perl]

gives this in error.log when in RPC

supercow.vwe.net EXs8HmVi:vwe.net - [11/August/2005:01:27:37 +0000] eros 
/cgi-bin/eros/ord/basket Safe: Can't locate object method "TIEHASH" via 
package "DBI::st" at /usr/lib/perl5/site_perl/5.6.1/i386-linux/DBI.pm line 
1007.
 >
 >
 >   my $myout = '';
 >   $myout = sprintf("<TD ALIGN=RIGHT class=contentbar1>&#163;%.2f</td>", 
$Tag->subtotal({ noformat => 1 })*0.175);
 >   return $myout;
 >
 >

Many thanks for looking at this for me :)

Mark



Eros Shop
vwe internet ltd
PO BOX 1067
SLOUGH
SL1 7YA
UK

Shop - http://www.eros-shop.co.uk
EMail - info at eros-shop.co.uk
Tel - 0870 284 3369
Fax - 0870 284 4469




More information about the interchange-users mailing list