Skip to Content.
Sympa Menu

freetds - Re: [freetds] Status of UTF-8 support in 0.83 dev

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "James K. Lowden" <jklowden AT freetds.org>
  • To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
  • Subject: Re: [freetds] Status of UTF-8 support in 0.83 dev
  • Date: Wed, 13 Aug 2008 00:37:03 -0400

Sebastien FLAESCH wrote:
>
> Log shows now:
>
> log.c:190:Starting log file for FreeTDS 0.83.dev.20080812
> on 2008-08-12 18:11:48 with debug flags 0x4fff.
> iconv.c:197:names for ISO-8859-1: ISO-8859-1
> iconv.c:197:names for UTF-8: UTF-8
> iconv.c:197:names for UCS-2LE: UCS-2LE
> iconv.c:197:names for UCS-2BE: UCS-2BE
> iconv.c:363:iconv to convert client-side data to the "UTF-8" character
> set iconv.c:516:tds_iconv_info_init: converting "UTF-8"->"UCS-2LE"
> iconv.c:516:tds_iconv_info_init: converting "ISO-8859-1"->"UCS-2LE"

Hi Sebastien,

I modified the log messages from iconv.c to make them clearer. HTH.

> But still, I get:
>
>
> Error -1 at: SQLExecute 1.2 StmtH
> Diagnostic info:
> SQL State: 42000
> SQL code : 8005
> Message : [FreeTDS][SQL Server]The incoming tabular data stream
> (TDS) remote procedure call (RPC) protocol stream is incorrect.
> Parameter 4: The
> parameter name is invalid.

This happens because of these errors in the log:

> query.c:1326:tds_put_data_info putting status
> query.c:1420:tds_put_data: colsize = 9
> query.c:1449:tds_put_data: not null param varint_size = 2
> util.c:334:tdserror(0x98cb050, 0x98cc3d8, 2402, 0)
> odbc.c:2106:msgno 2402 20003
> util.c:368:tdserror: client library returned TDS_INT_CANCEL(2)
> util.c:389:tdserror: returning TDS_INT_CANCEL(2)
> query.c:1326:tds_put_data_info putting status
> query.c:1420:tds_put_data: colsize = 9
> query.c:1449:tds_put_data: not null param varint_size = 2
> util.c:334:tdserror(0x98cb050, 0x98cc3d8, 2402, 0)
> odbc.c:2106:msgno 2402 20003
> util.c:368:tdserror: client library returned TDS_INT_CANCEL(2)
> util.c:389:tdserror: returning TDS_INT_CANCEL(2)
> util.c:162:Changed query state from QUERYING to PENDING
> net.c:768:Sending packet

The resulting sp_execute call is incorrectly formed, and the server
complains.

2402 is TDSEICONVO and indicates an invalid multibyte input sequence was
encountered while sending data to the server.

I'm too tired to debug it further. I would guess the parameter data are
assumed to be in ISO-8859-1, not in the client's encoding.

Regards,

--jkl




Archive powered by MHonArc 2.6.24.

Top of Page