[freetds] SP parameters

Lowden, James K james.k.lowden at alliancebernstein.com
Thu Jun 15 13:11:49 EDT 2006


> From: Gustavo A. Gonzalez
> Sent: Thursday, June 15, 2006 11:15 AM
> 
> 
> Any one can tell me if there some bug on freetds 0.63 invoking a
> stored procedure on MSSQL?. i' ve developed an application in C
> that works fine with freetds 0.62 but with 0.63 version it crashes.
> I' ve got that output error:
> 
> query.c:1058: tds_put_data: Assertion `curcol->column_varint_size'
> failed

Here's the code:

1049                 tdsdump_log(TDS_DBG_INFO1, "tds_put_data: null
param\n");
1050                 switch (curcol->column_varint_size) {
1051                 case 4:
1052                         tds_put_int(tds, -1);
1053                         break;
1054                 case 2:
1055                         tds_put_smallint(tds, -1);
1056                         break;
1057                 default:
1058                         assert(curcol->column_varint_size);
1059                         /* FIXME not good for
SYBLONGBINARY/SYBLONGCHAR
1059 (still not supported) */
1060                         tds_put_byte(tds, 0);
1061                         break;
1062                 }

It seems you're using a NULL parameter for a column with a weird
datatype, and we don't determine the size correctly.  :-/

> what is the solution?.  

Use a different datatype, I think.  

--jkl

-----------------------------------------
The information contained in this transmission may be privileged and
confidential and is intended only for the use of the person(s) named
above. If you are not the intended recipient, or an employee or agent responsible
for delivering this message to the intended recipient, any review, dissemination,
distribution or duplication of this communication is strictly prohibited. If you are
not the intended recipient, please contact the sender immediately by reply e-mail
and destroy all copies of the original message. Please note that we do not accept
account orders and/or instructions by e-mail, and therefore will not be responsible
for carrying out such orders and/or instructions.  If you, as the intended recipient
of this message, the purpose of which is to inform and update our clients, prospects
and consultants of developments relating to our services and products, would not
like to receive further e-mail correspondence from the sender, please "reply" to the
sender indicating your wishes.  In the U.S.: 1345 Avenue of the Americas, New York,
NY 10105.



More information about the FreeTDS mailing list