Skip to Content.
Sympa Menu

freetds - Re: [freetds] Failed make check tests

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Frediano Ziglio <freddy77 AT gmail.com>
  • To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
  • Subject: Re: [freetds] Failed make check tests
  • Date: Fri, 2 Mar 2012 19:20:42 +0000

2012/3/1 David Venus <david.venus AT bi-lo.com>:
> Hi!
>
> Now that the builds on AIX 7.1 with GCC 4.6.1 have completed successfully I
> have run make check and had 3 of 34 tests fail. Are any of
> these failures something to be concerned about?
>
> In case it makes a difference here is the command line used to configure
> FreeTDS:
>
> LDFLAGS=-L/opt/oracle/local/lib ./configure --prefix=/opt/oracle/local
> -with-unixodbc=/opt/oracle/local/unixODBC-2.3.2-pre \
>         --enable-shared --with-tdsver=7.0 --enable-msdblib
>

Could you try with

./configure --prefix=/opt/oracle/local -with-unixodbc=/opt/oracle/local \
--enable-shared --with-tdsver=7.0 --enable-msdblib

if unixODBC library are in /opt/oracle/local/lib should work without
LDFLAGS trick.

> Below are the tests that failed in both FreeTDS-0.91 stable and patched.
> All of them appear to come in DBLIB. The tests were
> run against a SQL Server 8.0.2055 instance and a SQL Server 9.0.5000
> instance. Same errors on both. These are representative
> of SQL Servers in my environment.
>
> Failed to create procedure #t0022. Wrong permission or not MSSQL.
> trying to create a permanent stored procedure

Quite strange message... test should not output this message. Are you
sure you are using 0.91 ??

> Dropping procedure t0022
>      1: IF OBJECT_ID('t0022') IS NOT NULL DROP PROC t0022
> Creating procedure t0022
>      1: CREATE PROCEDURE t0022
>      2:   @null_input varchar(30) OUTPUT
>      3: , @first_type varchar(30) OUTPUT
>      4: , @nullout int OUTPUT
>      5: , @nrows int OUTPUT
>      6: , @c varchar(20)
>      7: , @nv nvarchar(20) = N'hello'
>      8: AS
>      9: BEGIN
>     10: if @null_input is not NULL begin
>     11:     select 'error: should be NULL' as status, @null_input as
> 'null_input'
>     12:     return -42
>     13: end else begin
>     14:     print '@null_input is NULL, as expected'
>     15: end
>     16: if @c is not NULL begin
>     17:     select 'error: should be NULL' as status, @c as '@c'
>     18:     return -42
>     19: end else begin
>     20:     print 'Good: @c is NULL'
>     21: end
>     22: select @null_input = max(convert(varchar(30), name)) from systypes
>     23: select @first_type = min(convert(varchar(30), name)) from systypes
>     24: select name from sysobjects where 0=1
>     25: select distinct convert(varchar(30), name) as 'type'  from
> systypes
>     26: where name in ('int', 'char', 'text')
>     27: select @nrows = @@rowcount
>     28: select distinct @nv as '@nv', convert(varchar(30), name) as name
> from sysobjects where type = 'S'
>     29: select      @null_input as 'null_input'
>     30:     , @first_type as 'first_type'
>     31:     , @nullout as 'nullout'
>     32:     , @nrows as 'nrows'
>     33:     , @c as 'c'
>     34:     , @nv as 'nv'
>     35:     into #parameters
>     36: select * from #parameters
>     37: return 42
>     38: END
>     39:
> Created procedure t0022
> executing dbrpcinit
> executing dbrpcparam for @null_input
> executing dbrpcparam for @first_type
> executing dbrpcparam for @nullout
> executing dbrpcparam for @nrows
> executing dbrpcparam for @c
> executing dbrpcparam for @nv
> executing dbrpcsend
> Failed line 246: dbrpcsend
> FAIL: rpc
>
> -----------------------------------------------------------------------------------------
>
>      1: select colid, cast(c.name as varchar(30)) as name, c.length , '
> '+ substring('NY', convert(bit,(c.status & 8))+1,1) as Nulls from
> syscolumns as c left join systypes as t on c.usertype = t.usertype where
> c.id = object_id('all_types_bcp_unittest') order by colid
> colid  name                           length Nulls
> ------ ------------------------------ ------ -----
> 1      not_null_bit                   1        N
> 2      not_null_char                  10       N
> 3      not_null_varchar               10       N
> 4      not_null_datetime              8        N
> 5      not_null_smalldatetime         4        N
> 6      not_null_money                 8        N
> 7      not_null_smallmoney            4        N
> 8      not_null_float                 8        N
> 9      not_null_real                  4        N
> 10     not_null_decimal               5        N
> 11     not_null_numeric               5        N
> 12     not_null_int                   4        N
> 13     not_null_smallint              2        N
> 14     not_null_tinyint               1        N
> 15     nullable_char                  10       Y
> 16     nullable_varchar               10       Y
> 17     nullable_datetime              8        Y
> 18     nullable_smalldatetime         4        Y
> 19     nullable_money                 8        Y
> 20     nullable_smallmoney            4        Y
> 21     nullable_float                 8        Y
> 22     nullable_real                  4        Y
> 23     nullable_decimal               5        Y
> 24     nullable_numeric               5        Y
> 25     nullable_int                   4        Y
> 26     nullable_smallint              2        Y
> 27     nullable_tinyint               1        Y
> ok
> preparing to insert into TestDB..all_types_bcp_unittest ... OK
> DB-LIBRARY error (dberr 20010 (severity 8): "Unable to allocate sufficient
> memory"; oserr 0: "Error 0")
> error: no unanticipated errors allowed in unit tests
> FAIL: bcp
>

Very bad! Seems a endian problem.

> ---------------------------------------------------------------------------------------
>
> Starting ./timeout
> About to logon
> About to open TestServer.TestDB
> using 3 1-second login timeouts
> connected.
> using 3 3-second query timeouts
> issuing a query that will take 30 seconds
>          1: select getdate() as 'begintime' waitfor delay '00:00:30'
> select get
> date() as 'endtime'
> executing dbsqlok
> in chkintr, 1 seconds elapsed
> in chkintr, 2 seconds elapsed
> in chkintr, 3 seconds elapsed
> 1 timeouts received in 3 seconds, continuing to wait
> in chkintr, 4 seconds elapsed
> in chkintr, 5 seconds elapsed
> in chkintr, 6 seconds elapsed
> 2 timeouts received in 6 seconds, continuing to wait
> DB-LIBRARY error (severity 1, dberr 20047, oserr 0, dberrstr DBPROCESS is
> dead
> or not enabled, oserrstr Error 0):
> error: dbproc (20012f88) is DEAD, goodbye
> FAIL: timeout
>

Bad too.

> ---------------------------------------------------------------------------------------------------------------
>
> What other information can I provide that would be helpful?
>
> Any suggestions, hints, tips, tricks, etc. gratefully accecpted!
>

Could you send some logs ??

> Thanks!
>
> Dave Venus


Frediano




Archive powered by MHonArc 2.6.24.

Top of Page