Skip to Content.
Sympa Menu

freetds - RE: [freetds] Problem with current snapshot

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "ZIGLIO Frediano" <Frediano.Ziglio AT vodafone.com>
  • To: "FreeTDS Development Group" <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] Problem with current snapshot
  • Date: Fri, 14 Nov 2003 10:20:28 +0100


Well, looking more deeply the dump ...

> Received header @ 03:28:54.453577
> 0000 04 00 02 00 00 3a c1 00- |.....:..|
>
>
> Received packet @ 03:28:54.453843
> 0000 6e 20 64 65 63 20 2e 20-2c 20 31 39 39 39 20 2e |n dec . , 1999
.|
> 0010 20 79 65 74 20 61 6d 6f-6e 67 20 6d 65 64 63 6f | yet amo ng
medco|
> 0020 20 27 20 73 20 6d 61 69-6c 20 2d 20 6f 72 64 65 | ' s mai l -
orde|
> 0030 72 20 63 6c 69 65 6e 74-73 20 2c 20 7a 6f 63 6f |r client s ,
zoco|
> 0040 72 20 27 20 73 20 73 68-61 72 65 20 77 61 73 20 |r ' s sh are
was |
> 0050 34 31 20 70 65 72 63 65-6e 74 20 2e 20 73 74 65 |41 perce nt .
ste|
> 0060 76 65 20 67 65 6c 73 69-20 69 73 20 61 20 72 65 |ve gelsi is a
re|
> 0070 70 6f 72 74 65 72 20 66-6f 72 20 63 62 73 20 2e |porter f or cbs
.|
> 0080 20 6d 61 72 6b 65 74 77-61 74 63 68 20 2e 20 63 | marketw atch .
c|
> 0090 6f 6d 20 69 6e 20 6e 65-77 20 79 6f 72 6b 20 2e |om in ne w york
.|
> 00a0 20 d1 84 0c 01 00 52 0e-00 00 36 00 00 00 6f 01 | .....R.
..6...o.|

Start row, INT4 (0x10c84), INT4 (0xe52), INT4 (0x36), XSYBVARCHAR (see
below)
The conversion is from single byte (windows-1252 I think) to single byte
(iso8859-1).
The size is 0x16f

> 00b0 21 35 34 20 6d 6f 72 65-20 69 70 6f 20 72 65 70 |!54 more ipo
rep|
> 00c0 6f 72 74 20 95 20 61 6f-6c 20 74 69 6d 65 20 77 |ort . ao l time
w|

0x95 is not convertible so the warning is raised...

> 00d0 61 72 6e 65 72 20 63 61-62 6c 65 20 74 76 20 69 |arner ca ble tv
i|
> 00e0 70 6f 20 74 6f 20 79 69-65 6c 64 20 62 69 67 20 |po to yi eld
big |
> 00f0 70 61 79 64 61 79 20 35-20 3a 20 32 34 70 6d 20 |payday 5 :
24pm |
> 0100 65 74 20 30 31 20 2f 20-30 39 20 2f 20 30 33 20 |et 01 / 09 /
03 |
> 0110 95 20 72 65 67 75 6c 61-74 6f 72 73 20 66 69 6e |. regula tors
fin|

Another invalid byte

> 0120 65 20 72 6f 62 65 72 74-73 6f 6e 20 73 74 65 70 |e robert son
step|
> 0130 68 65 6e 73 20 66 6f 72-20 69 6c 6c 65 67 61 6c |hens for
illegal|
> 0140 20 69 70 6f 20 66 65 65-73 20 31 20 3a 20 35 30 | ipo fee s 1 :
50|
> 0150 70 6d 20 65 74 20 30 31-20 2f 20 30 39 20 2f 20 |pm et 01 / 09
/ |
> 0160 30 33 20 95 20 76 65 6e-74 75 72 65 20 61 63 74 |03 . ven ture
act|
> 0170 69 76 69 74 79 20 73 6c-6f 77 65 64 20 69 6e 20 |ivity sl owed
in |
> 0180 32 30 30 32 20 61 6c 6f-6e 67 20 77 69 74 68 20 |2002 alo ng
with |
> 0190 69 70 6f 73 20 31 32 20-3a 20 32 32 70 6d 20 65 |ipos 12 : 22pm
e|
> 01a0 74 20 30 31 20 2f 20 30-38 20 2f 20 30 33 20 95 |t 01 / 0 8 / 03
.|
> 01b0 20 66 69 72 73 74 20 69-70 6f 20 6f 66 20 32 30 | first i po of
20|
> 01c0 30 33 20 68 61 72 64 20-74 6f 20 73 70 6f 74 20 |03 hard to
spot |
> 01d0 31 32 20 3a 20 30 33 70-6d 20 65 74 20 30 31 20 |12 : 03p m et
01 |
> 01e0 2f 20 30 37 20 2f 20 30-33 20 95 20 77 69 6e 65 |/ 07 / 0 3 .
wine|
> 01f0 20 6d 61 6b 65 72 20 66- | maker f|
>
> 03:28:54.454084 dbconvert() srctype = 56 desttype = 56
> 03:28:54.454097 dbconvert() srctype == desttype
> 03:28:54.454107 dbconvert() srctype = 56 desttype = 56
> 03:28:54.454117 dbconvert() srctype == desttype
> 03:28:54.454126 dbconvert() srctype = 56 desttype = 56
> 03:28:54.454136 dbconvert() srctype == desttype
> 03:28:54.454146 dbconvert() srctype = 39 desttype = 47
> 03:28:54.454204 dbconvert() calling tds_convert
> 03:28:54.454217 dbconvert() called tds_convert returned 250
> 03:28:54.454241 dbconvert() outputting 250 bytes character
> data destlen
> = -1
> 03:28:54.454255 leaving dbnextrow() returning -1
> 03:28:54.454267 dbnextrow()
> 03:28:54.454432 processing row tokens. marker is d1(ROW)

Row

> 03:28:54.454450 processing row. column is 0 varint size = 0
> 03:28:54.454460 processing row. column size is 4
> 03:28:54.454471 clearing column 0 NULL bit

INT4

> 03:28:54.454481 processing row. column is 1 varint size = 0
> 03:28:54.454491 processing row. column size is 4
> 03:28:54.454500 clearing column 1 NULL bit

INT4

> 03:28:54.454509 processing row. column is 2 varint size = 0
> 03:28:54.454519 processing row. column size is 4
> 03:28:54.454528 clearing column 2 NULL bit

INT4

> 03:28:54.454538 processing row. column is 3 varint size = 2
> 03:28:54.454548 processing row. column size is 367
> 03:28:54.454558 clearing column 3 NULL bit
> tds_get_char_data: reading 367 on wire for 250 to client
>

0x16f string is not finished... why tds_get_char_data return to dblib
without reading all buffer ??? Does it truncate string and leave to an
invalid state ?

freddy77




Archive powered by MHonArc 2.6.24.

Top of Page