Skip to Content.
Sympa Menu

freetds - Re: Re: [freetds] Data conversion limit for strings

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Marco Brinkmann" <brinkmann AT meacon.de>
  • To: "FreeTDS Development Group" <freetds AT lists.ibiblio.org>
  • Subject: Re: Re: [freetds] Data conversion limit for strings
  • Date: Mon, 26 Jan 2004 12:46:14 +0100


Hi James and Freddy,

> Thanks for finding our bug. Please try the attached patch. If it works,
> I'll apply it to the 0.62 branch. At the very least, it will make your
> log bigger.

Yep, it worked. Fantastic, thanks for your help. I made some more test with a
very large amount of Japanese and Chinese signs, and they were transmitted to
the database totally correct.

Below you will find the log for the working insert, to see what the new log
entries print out.

Again, thanks for your help. If I can support your project in any way, let me
know.

Best regards,

Marco Brinkmann



freetds.log (single insert example)
--------------------------
19:01:42.782360 dbsqlok() marker is e3
19:01:42.782375 processing result tokens. marker is e3(ENVCHANGE)
19:01:42.782392 tds_process_default_tokens() marker is e3(ENVCHANGE)
tds_get_string: reading 18 from wire to give 9 to client.
tds_get_string: reading 12 from wire to give 6 to client.
19:01:42.782437 processing result tokens. marker is ab(INFO)
19:01:42.782454 tds_process_default_tokens() marker is ab(INFO)
tds_get_string: reading 80 from wire to give 40 to client.
tds_get_string: reading 10 from wire to give 5 to client.
19:01:42.782501 processing result tokens. marker is e3(ENVCHANGE)
19:01:42.782518 tds_process_default_tokens() marker is e3(ENVCHANGE)
19:01:42.782536 processing result tokens. marker is fd(DONE)
19:01:42.782553 tds_process_end: more_results = 0
was_cancelled = 0
error = 0
done_count_valid = 0
19:01:42.782570 tds_process_end() state set to TDS_IDLE
19:01:42.782586 dbsqlok() end status was success
19:01:42.782626 dbresults()
19:01:42.782641 dbresults_r()
19:01:42.782655 tds_process_result_tokens() state is COMPLETED
19:01:42.782670 leaving dbresults() returning 1
19:01:42.782685 tds_process_row_tokens() state is COMPLETED
19:01:42.782888 dbcmd() bufsz = 14
19:01:42.782910 in dbfreebuf()
19:01:42.782930 in dbsqlexec()
19:01:42.782945 in dbsqlsend()
19:01:42.782963 tds_put_string converting 128 bytes of "USE xxxxxxxx; INSERT
INTO test (test) VALUES (N'ãLF-X1ãã¯ã12.1Våã®æ¶²æ¶ã¢ãã¿ã¼ã¨æ¬ä½é¨ï¼ãã¼ã¹ã¹>
ãã¼ã·ã§ã³ï¼ã§æ§æãããåæ¹ã®éä¿¡ã«ã¯ã5GHz帯ã¯ã¤ã¤ã¬ã¹è¦æ 
¼ã®ç¡ç·æè¡ï¼IEEE802.11aï¼ã¨ã2.4GHz帯ã®ã¯ã¤ã¤ã¬ã¹è¦æ ¼ã®ç¡ç·æè¡ï¼IEEE802.11b
/ IEEE802.11gï¼ã«å¯¾>
å¿ãã"ãã¥ã¢ã«Hi-Bitã¯ã¤ã¤ã¬ã¹"ãæ¡ç¨ããã¯ã¤ã¤ã¬ã¹æ¶²æ¶ãã¬ãã§ããéä¿¡ç°å¢ã«å¿ãã¦æé©ãªéæ³¢ç¶æãé¸æåºæ>
ããã ãã¾ãã^M
ãã¾ãæ¬æ©ã¯ãæè¡åãåºå¼µåããã§ããã­ã¼ããã³ãç°å¢ã§ããã°ãèªå®ã®ãã¼ã¹ã¹ãã¼ã·ã§ã³ã«å¥åããã¬ãæ¾éãæ¥ç¶ããDVDç­ã®æ
 åãã液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤
ã ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.782985 tds_put_string: tds_iconv() encountered partial sequence
(anticipated). 820 bytes remain. Continuing.
19:01:42.783003 tds_put_string converting 128 bytes of
"ã·ã§ã³ï¼ã§æ§æãããåæ¹ã®éä¿¡ã«ã¯ã5GHz帯ã¯ã¤ã¤ã¬ã¹è¦æ 
¼ã®ç¡ç·æè¡ï¼IEEE802.11aï¼ã¨ã2.4GHz帯ã®ã¯ã¤ã¤
ã¬ã¹è¦æ ¼ã®ç¡ç·æè¡ï¼IEEE802.11b /
IEEE802.11gï¼ã«å¯¾å¿ãã"ãã¥ã¢ã«Hi-Bitã¯ã¤ã¤ã¬ã¹"ãæ¡ç¨ããã¯ã¤ã¤ã¬ã¹æ¶²æ¶ãã¬ãã§ããéä¿¡ç°å¢ã«å¿ãã¦æé©ãªéæ³¢ç¶æãé¸æåº
æ^M
ãã¾ãæ¬æ©ã¯ãæè¡åãåºå¼µåããã§ããã­ã¼ããã³ãç°å¢ã§ããã°ãèªå®ã®ãã¼ã¹ã¹ãã¼ã·ã§ã³ã«å¥åããã¬ãæ¾éãæ¥ç¶ããDVDç­ã®æ
 åãã液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤
ã ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783022 tds_put_string: tds_iconv() encountered partial sequence
(anticipated). 694 bytes remain. Continuing.
19:01:42.783040 tds_put_string converting 128 bytes of "帯ã®ã¯ã¤ã¤ã¬ã¹è¦æ 
¼ã®ç¡ç·æè¡ï¼IEEE802.11b /
IEEE802.11gï¼ã«å¯¾å¿ãã"ãã¥ã¢ã«Hi-Bitã¯ã¤ã¤ã¬ã¹"ãæ¡ç¨ã
ãã¯ã¤ã¤ã¬ã¹æ¶²æ¶ãã¬ãã§ããéä¿¡ç°å¢ã«å¿ãã¦æé©ãªéæ³¢ç¶æãé¸æåºæ^M
ãã¾ãæ¬æ©ã¯ãæè¡åãåºå¼µåããã§ããã­ã¼ããã³ãç°å¢ã§ããã°ãèªå®ã®ãã¼ã¹ã¹ãã¼ã·ã§ã³ã«å¥åããã¬ãæ¾éãæ¥ç¶ããDVDç­ã®æ
 åãã液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤
ã ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783057 tds_put_string: tds_iconv() encountered partial sequence
(anticipated). 568 bytes remain. Continuing.
19:01:42.783075 tds_put_string converting 128 bytes of
"æ¡ç¨ããã¯ã¤ã¤ã¬ã¹æ¶²æ¶ãã¬ãã§ããéä¿¡ç°å¢ã«å¿ãã¦æé©ãªéæ³¢ç¶æãé¸æåºæ>
å®å®ããæ åãã楽ãã¿ããã ãã¾ãã^M
ãã¾ãæ¬æ©ã¯ãæè¡åãåºå¼µåããã§ããã­ã¼ããã³ãç°å¢ã§ããã°ãèªå®ã®ãã¼ã¹ã¹ãã¼ã·ã§ã³ã«å¥åããã¬ãæ¾éãæ¥ç¶ããDVDç­ã®æ
 åãã液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤
ã ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783093 tds_put_string: tds_iconv() encountered partial sequence
(anticipated). 442 bytes remain. Continuing.
19:01:42.783111 tds_put_string converting 128 bytes of "ãã®å°ãªããããå®å®ããæ 
åãã楽ãã¿ããã ãã¾ãã^M
ãã¾ãæ¬æ©ã¯ãæè¡åãåºå¼µåããã§ããã­ã¼ããã³ãç°å¢ã§ããã°ãèªå®ã®ãã¼ã¹ã¹ãã¼ã·ã§ã³ã«å¥åããã¬ãæ¾éãæ¥ç¶ããDVDç­ã®æ
 åãã液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤
ã ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783142 tds_put_string converting 128 bytes of
"ã§ããã­ã¼ããã³ãç°å¢ã§ããã°ãèªå®ã®ãã¼ã¹ã¹ãã¼ã·ã§ã³ã«å¥åããã¬ãæ¾éãæ¥ç¶ããDVDç­ã®æ 
åãã
液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤ã 
ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783160 tds_put_string: tds_iconv() encountered partial sequence
(anticipated). 188 bytes remain. Continuing.
19:01:42.783178 tds_put_string converting 128 bytes of "ãDVDç­ã®æ 
åãã液æ¶ã¢ãã¿ã¼ã§ãªã¢ã«ã¿ã¤ã ã«è¦è´å¯è½ãããã­ã¼ããã³ãç°å¢ãªãã§ã¯ã®æ°ãããã¬ãã®è¦
è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783195 tds_put_string: tds_iconv() encountered partial sequence
(anticipated). 62 bytes remain. Continuing.
19:01:42.783213 tds_put_string converting 62 bytes of
"æ°ãããã¬ãã®è¦è´ã¹ã¿ã¤ã«ãææ¡ãã¾ãã')"
19:01:42.783229 tds_put_string wrote 790 bytes
----------------------------





Archive powered by MHonArc 2.6.24.

Top of Page