DBD::Sybase-0.21 hangs on testing

John Gilmore-Baldwin john at dwx.com
Fri Dec 24 22:11:46 EST 1999


I'm having trouble getting gdb to work right for me.  But for the time
being, here's the log (I only posted the beginning, the rest just keeps
repeating until the 16K log is filled up.):

dmr6:baldwin:7:baldwin:% more /tmp/freetds.log
Sending packet @ 1999-12-24 20:58:42
0000  02 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0020  00 00 00 00 00 00 00 73 61 00 00 00 00 00 00 00   |.......sa.......|
0030  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0040  00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00   |................|
0050  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0060  00 00 00 00 00 33 37 38 37 36 00 00 00 00 00 00   |.....37876......|
0070  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0080  00 00 00 05 02 00 06 04 08 01 00 00 00 00 00 02   |................|
0090  00 00 00 00 66 61 69 6c 2e 74 00 00 00 00 00 00   |....fail.t......|
00a0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
00b0  00 00 06 44 53 4d 5f 53 4e 44 31 00 00 00 00 00   |...DSM_SND1.....|
00c0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
00d0  00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
00e0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
00f0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0100  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0110  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0120  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0130  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0140  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0150  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0160  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0170  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0180  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
0190  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
01a0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
01b0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
01c0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|
01d0  00 00 04 02 00 00 43 54 2d 4c 69 62 72 61 72 79   |......CT-Library|
01e0  0a 00 00 00 00 00 0c 10 00 00 00 00 00 00 00 00   |................|
01f0  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |................|


Sending packet @ 1999-12-24 20:58:42
0000  02 01 00 4c 00 00 00 00 00 00 00 00 00 00 00 00   |...L............|
0010  00 00 00 00 00 00 00 00 00 00 00 00 00 69 73 6f   |.............iso|
0020  5f 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00   |_1..............|
0030  00 00 00 00 00 00 00 00 00 00 00 05 01 35 31 32   |.............512|
0040  00 00 00 03 00 00 00 00 00 00 00 00               |............|


1999-12-24 20:58:42 inside tds_process_login_tokens()
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is e3
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is ab
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is e3
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is e3
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is fd
1999-12-24 20:58:42 leaving tds_process_login_tokens() returning 1
1999-12-24 20:58:42 leaving ct_connect() returning 1
1999-12-24 20:58:42 inside ct_options()
1999-12-24 20:58:42 inside ct_capability()
1999-12-24 20:58:42 inside ct_cancel()
Sending packet @ 1999-12-24 20:58:42
0000  06 01 00 08 00 00 00 00                           |........|


1999-12-24 20:58:42 inside tds_process_default_tokens() marker is d1
1999-12-24 20:58:42 setting column 0 to NULL
1999-12-24 20:58:42 setting column 1 to NULL
1999-12-24 20:58:42 setting column 2 to NULL
1999-12-24 20:58:42 setting column 3 to NULL
1999-12-24 20:58:42 setting column 4 to NULL
1999-12-24 20:58:42 setting column 5 to NULL
1999-12-24 20:58:42 setting column 6 to NULL
1999-12-24 20:58:42 setting column 7 to NULL
1999-12-24 20:58:42 setting column 8 to NULL
1999-12-24 20:58:42 setting column 9 to NULL
1999-12-24 20:58:42 setting column 10 to NULL
1999-12-24 20:58:42 setting column 11 to NULL
1999-12-24 20:58:42 setting column 12 to NULL
1999-12-24 20:58:42 setting column 13 to NULL
1999-12-24 20:58:42 setting column 14 to NULL
1999-12-24 20:58:42 setting column 15 to NULL
1999-12-24 20:58:42 setting column 16 to NULL
1999-12-24 20:58:42 setting column 17 to NULL
1999-12-24 20:58:42 setting column 18 to NULL
1999-12-24 20:58:42 setting column 19 to NULL
1999-12-24 20:58:42 setting column 20 to NULL
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is d1
1999-12-24 20:58:42 setting column 0 to NULL
1999-12-24 20:58:42 setting column 1 to NULL
1999-12-24 20:58:42 setting column 2 to NULL
1999-12-24 20:58:42 setting column 3 to NULL
1999-12-24 20:58:42 setting column 4 to NULL
1999-12-24 20:58:42 setting column 5 to NULL
1999-12-24 20:58:42 setting column 6 to NULL
1999-12-24 20:58:42 setting column 7 to NULL
1999-12-24 20:58:42 setting column 8 to NULL
1999-12-24 20:58:42 setting column 9 to NULL
1999-12-24 20:58:42 setting column 10 to NULL
1999-12-24 20:58:42 setting column 11 to NULL
1999-12-24 20:58:42 setting column 12 to NULL
1999-12-24 20:58:42 setting column 13 to NULL
1999-12-24 20:58:42 setting column 14 to NULL
1999-12-24 20:58:42 setting column 15 to NULL
1999-12-24 20:58:42 setting column 16 to NULL
1999-12-24 20:58:42 setting column 17 to NULL
1999-12-24 20:58:42 setting column 18 to NULL
1999-12-24 20:58:42 setting column 19 to NULL
1999-12-24 20:58:42 setting column 20 to NULL
1999-12-24 20:58:42 inside tds_process_default_tokens() marker is d1
1999-12-24 20:58:42 setting column 0 to NULL
1999-12-24 20:58:42 setting column 1 to NULL
1999-12-24 20:58:42 setting column 2 to NULL
1999-12-24 20:58:42 setting column 3 to NULL
1999-12-24 20:58:42 setting column 4 to NULL
1999-12-24 20:58:42 setting column 5 to NULL
1999-12-24 20:58:42 setting column 6 to NULL



>Ok, it is indeed new and also uses placeholders (maybe Michael is telling
>me I need to get off my butt and get these implemented?)
>
>Anyway, here is what I get run through gdb...perhaps you could run under
>gdb (or other debugger) and when it hangs break and do a stack trace? Also
>you may want to set TDSDUMP (e.g. export TDSDUMP=/tmp/freetds.log) and
>post the output (beware your password will be contained in the log, so
>change it if you are concerned w/ security...and who isn't :)
>
>(gdb) run fail.t
>Starting program: /usr/bin/perl fail.t
>1..13
>ok 1
>ok 2
>ok 3
>ok 4
>ok 5
>Panic: dynamic SQL (? placeholders) are not supported by the server you
>are connecting to at
>/usr/lib/perl5/site_perl/5.005/i486-linux/DBD/Sybase.pm line 92.
>Database handle destroyed without explicit disconnect.
>
>Program exited with code 02.
>(gdb)
>
>
>On Fri, 24 Dec 1999, John Gilmore-Baldwin wrote:
>
>> Well, I renamed the test that was hanging, fail.t, to xxx.t so it came
>> last.  Here's my results:
>>
>> dmr6:baldwin:17:DBD-Sybase-0.21:% make test
>> PERL_DL_NONLAZY=1 /bin/perl -Iblib/arch -Iblib/lib
>> -I/usr/local/lib/perl5/5.00503/sun4-solaris -I/usr/local/lib/perl5/5.00503
>> -e 'use Test::Harness qw(&runtests $verbose); $verbose=0; runtests @ARGV;'
>> t/*.t
>> t/autocommit........ok
>> t/base..............ok
>> t/login.............ok
>> t/main..............Changed database context to 'master'.
>> Invalid object name 'sys_users'.
>> Use of uninitialized value at t/main.t line 97.
>> FAILED test 8
>>         Failed 1/12 tests, 91.67% okay
>> t/place.............?-style placeholders aren't supported with this SQL
>>Server.
>> ok
>> t/xxx...............
>>
>> This seems much more promising, until it just hangs on fail.t.  Is this
>> similar to what others see?
>>
>> In the meantime, I'll grab a copy of sqsh and see what I get.
>>
>> Thanks for the help,
>> John
>>
>> >On Thu, 23 Dec 1999, John Gilmore-Baldwin wrote:
>> >
>> >> I can't get tests to pass with DBD::Sybase-0.21 and freetds.  I compiled
>> >> freetds with version set to 4.2 on Solaris, I set my environment variable
>> >> for sybase to the freetds directory, and added my server to the
>>interfaces
>> >> file there:
>> >>
>> >> MY_server1
>> >>         query tcp ether 111.222.333.444 1433
>> >>         master tcp ether 111.222.333.444 1433
>> >>
>> >>
>> >> I also tried setting up the interfaces file like the regular sybase
>> >> interfaces file, with hex numbers for the port and ip addresses, but that
>> >> didn't do me well either.
>> >>
>> >The tli stuff (hex numbers) definately won't work.  We use sockets only,
>> >sybase uses tli or socket depending on the platform.
>> >
>> >> Can anybody see the error of my ways?  I'm not having much luck debugging
>> >> this myself.
>> >>
>> >Unfortunately the DBD::Sybase tests really only give you a pass/fail which
>> >isn't terribly helpful.  Either run the test individually (go into the
>> >test directory and run 'perl login.t' for instance. Otherwise get SQSH and
>> >try to connect with that.  It's a lot more helpful in debugging simple
>> >connectivity problems.
>> >
>> >> Thanks,
>> >> John
>> >>
>> >
>> >Brian
>> >
>> >
>> >
>> >---
>> >You are currently subscribed to freetds as: john at dwx.com
>> >To unsubscribe, forward this message to
>> >$subst('Email.Unsub')
>>
>>
>>
>>
>> ---
>> You are currently subscribed to freetds as: camber at ais.org
>> To unsubscribe, forward this message to
>>$subst('Email.Unsub')
>>
>>
>
>
>---
>You are currently subscribed to freetds as: john at dwx.com
>To unsubscribe, forward this message to
>$subst('Email.Unsub')






More information about the FreeTDS mailing list