Skip to Content.
Sympa Menu

freetds - Re: [freetds] DBD::Sybase not connecting - acts like it is not using FreeTDS

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "James K. Lowden" <jklowden AT freetds.org>
  • To: freetds AT lists.ibiblio.org
  • Subject: Re: [freetds] DBD::Sybase not connecting - acts like it is not using FreeTDS
  • Date: Wed, 13 Feb 2013 16:42:45 -0500

On Wed, 13 Feb 2013 19:46:49 +0000
Darrell Cormier <Darrell.Cormier AT xfab.com> wrote:

> I get the following message when the statement handle is executed:
> DBD::Sybase::st execute failed:
[unwrapping...]
> Server message number=7202
> severity=11
> state=2
> line=1
> server=DLUS2-SQL
> text=Could not find server 'dlus2' in sys.servers. Verify that the
> correct server name was specified. If necessary, execute the stored
> procedure sp_addlinkedserver to add the server to sys.servers. at
> <path to perl script>/devices.pl line 19.
...
> I have never experienced this on other Linux installs. Have you
> experienced this and can you give me an idea why it is looking for
> the sys.servers rather than using the server config
> in /usr/local/etc/freetds.conf?

The 7202 message isn't coming from FreeTDS; it's coming from the
server, specifically the server named "DLUS2-SQL".

Whenever you see an error message that includes the name of the server,
you know you're dealing with a server message, not an error from the
library.

Something in your query makes the server think that the string "dlus2"
refers to a server. My guess is your SQL includes something like

execute dlus2.dbname.schema.procname

where you intend "dlus2" to refer to the server running the query, but
it knows of itself as "DLUS2-SQL". It interprets your query as a
remote procedure call, and tries (and fails) to look up "dlus2" among
its named servers in sys.servers.

HTH.

--jkl






Archive powered by MHonArc 2.6.24.

Top of Page