Skip Menu |

This queue is for tickets about the DBD-Sybase CPAN distribution.

Report information
The Basics
Id: 93022
Status: new
Priority: 0/
Queue: DBD-Sybase

People
Owner: Nobody in particular
Requestors:
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 1.15
Fixed in: (no value)



Subject: fail.t - the "Missing table" test is failing when run on MS SQL
fail.t is failing the "Missing table" test that executes the following: select * from sysusers select * from no_such_table select * from master..sysdatabases The idea of the test is that the execute() should fail due to the middle SELECT from a non-existent table. However, it doesn't fail because execute() only goes as far as checking the result from the "sysusers" SELECT and never notices that the next SELECT actually failed. More specifically, * syb_st_execute() calls cmd_execute() and then st_next_result() to look at the first result * st_next_result() calls ct_results() in a loop, but exits the loop after one iteration; in that first iteration it determines the column types of the first result set; it then breaks out of the loop with "goto Done" * we never get to see the result from the second SELECT statement (which contains the error "Invalid object name 'no_such_table'" I wonder if this works differently with Sybase, but with MS SQL and FreeTDS (which I'm using) it seems impossible for DBD-Sybase to catch the error for the above. Maybe the test should omit the first select statement? (Then it passes.) select * from no_such_table select * from master..sysdatabases Sam