|
|
sybperl-l Archive
Up Prev Next
From: "Kiriakos Georgiou (Contractor)" <kiriakos dot georgiou at nrl dot navy dot mil>
Subject: ct_param problem
Date: Mar 19 2004 5:19PM
I recently upgraded from DBD-Sybase-0.91 and DBI-1.14 to
DBD-Sybase-1.02 and DBI-1.40
I tried to use 12.5.1 open client to connect to a 12.0 ASE server (we
are in transition from 12.0 to 12.5.1) but that was giving me the error
below.
-----------------
[Fri Mar 19 11:05:42 2004] [notice] Accept mutex: fcntl (Default: fcntl)
ct_param() failed! at
/usr/local/nrl/lib/perl5/site_perl/5.8.3/Apache/Session/Store/Sybase.pm
line 122.
DBD::Sybase::st execute failed: OpenClient message: LAYER = (1) ORIGIN =
(1) SEVERITY = (1) NUMBER = (46)
Server production, database
Message String: ct_param(): user api layer: external error: An illegal
value of 0 was placed in the status field of the CS_DATAFMT structure.
-----------------
So I installed and used open client 12.0 and everything seemed fine on
our development and staging server. Now I am getting the same above
error on the production server.
The relevant section of the Session::Store::Sybase.pm is below, it fails
on the execute.
-----------------
my $sth = $self->{dbh}->prepare(qq{
UPDATE sessions SET a_session = $session->{serialized} WHERE id = ?
});
$sth->execute( $session->{data}->{_session_id} );
-----------------
I thought we might accidentally be using the wrong version of open
client, but it doesn't seem that way. Can someone with knowledge of the
CT API tell me what the above error message means? Apache-Session has
remained at version 1.54 so unless I am using the wrong open client
version I am wondering if anything relevant to this changed in DBD-Sybase.
TIA
Kiriakos
|