Problem with DBD::ODBC (via unixODBC) connection to remote ADABAS-11 database

From: Walter Obermiller (obermiller_at_schweizerbart.de)
Date: 02/21/05

  • Next message: Scott T. Hildreth: "Re: Using Oracle's Perl tree instead of OS supplied distribution..."
    To: dbi-users@perl.org
    Date: Mon, 21 Feb 2005 15:20:48 +0100
    
    

    Hi, all

    I am experiencing a puzzling problem while trying to get an DBD::ODBC
    connection (via unixODBC) working from a client machine A (Suse linux)
    to a an ADABAS-D-11 database running on a remote machine (B, also Suse
    linux)

    -------------------------- Machine A (client)
       Linux 2.6.8-2
       Perl : 5.008005 (i586-linux-thread-multi)
       OS : linux (2.6.8.1)
       DBI : 1.43
       DBD::Proxy : install_driver(Proxy) failed: Can't locate
    RPC/PlClient.pm in @INC
       DBD::ODBC : 1.06
    ----------------------------------------------

    Connections using isql (unixODBC) from machine A to machine B run
    smoothly, hence I reckon, unixodbc and prima facie odbc-configuration
    blotches are not the problem.

    When I try to trivially connect with DBD::ODBC to the very same DSN
    that I could connect to using isql without a problem, I get a
    segmentation fault.

    ----------trivial-connect----------------------
    #!/usr/bin/perl
    use DBI;
    my $dbh = DBI->connect('dbi:ODBC:emanuel-sbart', '***','***') ||
                     die "can't connect to $data_source: $DBI::errstr";
    $rc = $dbh->disconnect;
    exit();
    --------------------------------

    and inspection of the sql.log (of unixodbc) reveals the error message:

    ---------------------
    Message Text = [[unixODBC][Driver Manager]Data source name not found,
    and no default driver specified]
    [ODBC][13206][SQLError.c][424]
    -------------------------------

    Can anybody give me an idea which direction could be pursued to solve
    this problem ?

    What beats me is that isql can connect to my remote database, but an
    dbd::odbc connection to the same DSN utterly fails.

    Any hints welcome.

         -walter

    --------------sql.log--------------------------------------------------------

    [ODBC][13206][__handles.c][421]
                    Exit:[SQL_SUCCESS]
                            Environment = 0x82ce928
    [ODBC][13206][SQLSetEnvAttr.c][182]
                    Entry:
                            Environment = 0x82ce928
                            Attribute = SQL_ATTR_ODBC_VERSION
                            Value = 0x3
                            StrLen = -6
    [ODBC][13206][SQLSetEnvAttr.c][349]
                    Exit:[SQL_SUCCESS]
    [ODBC][13206][SQLAllocHandle.c][346]
                    Entry:
                            Handle Type = 2
                            Input Handle = 0x82ce928
    [ODBC][13206][SQLAllocHandle.c][464]
                    Exit:[SQL_SUCCESS]
                            Output Handle = 0x82ceeb8
    [ODBC][13206][SQLDriverConnect.c][666]
                    Entry:
                            Connection = 0x82ceeb8
                            Window Hdl = (nil)
                            Str In = [emanuel-sbart][length = 13]
                            Str Out = 0xbfffdfc0
                            Str Out Max = 2048
                            Str Out Ptr = 0xbfffdfbe
                            Completion = 0
    [ODBC][13206][SQLDriverConnect.c][998]Error: IM002
    [ODBC][13206][SQLError.c][424]
                    Entry:
                            Connection = 0x82ceeb8
                            SQLState = 0xbfffdf60
                            Native = 0xbfffdd58
                            Message Text = 0xbfffdd60
                            Buffer Length = 511
                            Text Len Ptr = 0xbfffdd5e
    [ODBC][13206][SQLError.c][461]
                    Exit:[SQL_SUCCESS]
                            SQLState = IM002
                            Native = 0xbfffdd58 -> 0
                            Message Text = [[unixODBC][Driver Manager]Data source name not found,
    and no default driver specified]
    [ODBC][13206][SQLError.c][424]
                    Entry:
                            Connection = 0x82ceeb8
                            SQLState = 0xbfffdf60
                            Native = 0xbfffdd58
                            Message Text = 0xbfffdd60
                            Buffer Length = 511
                            Text Len Ptr = 0xbfffdd5e
    [ODBC][13206][SQLError.c][461]
                    Exit:[SQL_NO_DATA]
    [ODBC][13206][SQLConnect.c][3495]
                    Entry:
                            Connection = 0x82ceeb8
                            Server Name = [emanuel-sbart][length = 13]
                            User Name = [walter][length = 6]
                            Authentication = [***][length = 3]
                    UNICODE Using encoding ASCII 'ISO8859-1' and UNICODE 'UCS-2LE'

    [ODBC][13206][SQLConnect.c][4069]
                    Exit:[SQL_SUCCESS]

    -- 
    Walt Obermiller	E. Schweizerbart'sche Verlagsbuchhandlung
    		(Nägele u. Obermiller)
    		Science Publishers
    		Johannesstr. 3A
    		D-70176 Stuttgart
    		Germany
    		Tel. +49-711-3514560 FAX +49-711-351456-99
    I am experiencing a puzzling problem getting an DBD::ODBC connection
    (via unixODBC) working from a client machine A (Suse linux) to a an 
    ADABAS-D-11
    database running on a remote machine (B, also Suse linux)
    -------------------------- Machine A (client)
       Linux  2.6.8-2
       Perl            : 5.008005    (i586-linux-thread-multi)
       OS              : linux       (2.6.8.1)
       DBI             : 1.43
       DBD::Proxy      : install_driver(Proxy) failed: Can't locate 
    RPC/PlClient.pm in @INC
       DBD::ODBC       : 1.06
    ----------------------------------------------
    Connections using isql (unixODBC) from machine A to machine B run
    smoothly, hence I reckon, unixodbc and prima facie odbc-configuration
    blotches are not the problem.
    When I try to trivially connect with DBD::ODBC to the very same DSN
    that I could connect to using isql without a problem, I get a
    segmentation fault.
    ----------trivial-connect----------------------
    #!/usr/bin/perl
    use DBI;
    my $dbh = DBI->connect('dbi:ODBC:emanuel-sbart', '***','***') ||
                     die "can't connect to $data_source: $DBI::errstr";
    $rc = $dbh->disconnect;
    exit();
    --------------------------------
    and inspection of the sql.log (of unixodbc) reveals the error message:
    ---------------------
    Message Text = [[unixODBC][Driver Manager]Data source name not found, 
    and no default driver specified]
    [ODBC][13206][SQLError.c][424]
    -------------------------------
    Can anybody give me an idea which direction could be pursued to solve
    this problem ?
    What beats me is that isql can connect to my remote database, but an
    dbd::odbc connection to the same DSN utterly fails.
    Any hints welcome.
         -walter
    --------------sql.log--------------------------------------------------------
    [ODBC][13206][__handles.c][421]
    		Exit:[SQL_SUCCESS]
    			Environment = 0x82ce928
    [ODBC][13206][SQLSetEnvAttr.c][182]
    		Entry:
    			Environment = 0x82ce928
    			Attribute = SQL_ATTR_ODBC_VERSION
    			Value = 0x3
    			StrLen = -6
    [ODBC][13206][SQLSetEnvAttr.c][349]
    		Exit:[SQL_SUCCESS]
    [ODBC][13206][SQLAllocHandle.c][346]
    		Entry:
    			Handle Type = 2
    			Input Handle = 0x82ce928
    [ODBC][13206][SQLAllocHandle.c][464]
    		Exit:[SQL_SUCCESS]
    			Output Handle = 0x82ceeb8
    [ODBC][13206][SQLDriverConnect.c][666]
    		Entry:
    			Connection = 0x82ceeb8
    			Window Hdl = (nil)
    			Str In = [emanuel-sbart][length = 13]
    			Str Out = 0xbfffdfc0
    			Str Out Max = 2048
    			Str Out Ptr = 0xbfffdfbe
    			Completion = 0
    [ODBC][13206][SQLDriverConnect.c][998]Error: IM002
    [ODBC][13206][SQLError.c][424]
    		Entry:
    			Connection = 0x82ceeb8
    			SQLState = 0xbfffdf60
    			Native = 0xbfffdd58
    			Message Text = 0xbfffdd60
    			Buffer Length = 511
    			Text Len Ptr = 0xbfffdd5e
    [ODBC][13206][SQLError.c][461]
    		Exit:[SQL_SUCCESS]
    			SQLState = IM002
    			Native = 0xbfffdd58 -> 0
    			Message Text = [[unixODBC][Driver Manager]Data source name not found, 
    and no default driver specified]
    [ODBC][13206][SQLError.c][424]
    		Entry:
    			Connection = 0x82ceeb8
    			SQLState = 0xbfffdf60
    			Native = 0xbfffdd58
    			Message Text = 0xbfffdd60
    			Buffer Length = 511
    			Text Len Ptr = 0xbfffdd5e
    [ODBC][13206][SQLError.c][461]
    		Exit:[SQL_NO_DATA]
    [ODBC][13206][SQLConnect.c][3495]
    		Entry:
    			Connection = 0x82ceeb8
    			Server Name = [emanuel-sbart][length = 13]
    			User Name = [walter][length = 6]
    			Authentication = [***][length = 3]
    		UNICODE Using encoding ASCII 'ISO8859-1' and UNICODE 'UCS-2LE'
    [ODBC][13206][SQLConnect.c][4069]
    		Exit:[SQL_SUCCESS]
    -- 
    Walt Obermiller	E. Schweizerbart'sche Verlagsbuchhandlung
    		(Nägele u. Obermiller)
    		Science Publishers
    		Johannesstr. 3A
    		D-70176 Stuttgart
    		Germany
    		Tel. +49-711-3514560 FAX +49-711-351456-99
    

  • Next message: Scott T. Hildreth: "Re: Using Oracle's Perl tree instead of OS supplied distribution..."

    Relevant Pages

    • Connection problem DBD::ODBC, unixODBC to remote ADABAS-D
      ... I am experiencing an annoying problem getting an DBD::ODBC connection ... ADABAS-D-11 database running on a remote machine (B, also Suse linux) ... Connections using isql (unixODBC) from machine A to machine B run ...
      (perl.dbi.users)
    • [ANN] PyODB version 0.6 released
      ... I would like to announce version 0.6 of PyODB a Python unixODBC API binding. ... This release contains improved connection handling, fetch() now takes ...
      (comp.lang.python.announce)
    • Re: Cannot get on network or internet
      ... end-user distribution such as SUSE Linux 10.0 rather than an Enterprise ... do anything which required an internet connection. ... linksys wireless router via a network cable. ... messages boards trying to figure this out with no luck. ...
      (alt.os.linux.suse)
    • Re: 6.0-RC1: ral(4) driver broken? network interruptions
      ... > connect it to an AVM Fritz!Box Fon WLAN. ... > The computer is dual boot with SUSE Linux 9.3, where RA card is ... Yes I see the same thing with iwi, it looses connection now and then. ...
      (freebsd-current)
    • Re: A mindboggingly basic question
      ... If you already have a connection object open then just do ... as for isql just go into BOL click on the search tab and type 'isql utility' ... BOL is great about giving details on command ...
      (microsoft.public.sqlserver.xml)