Re: Invalid Cursor state

Frediano Ziglio <[email protected]>
Newsgroups gmane.comp.db.tds.freetds
Message-ID <CAHt6W4edhLs8Ajr9Eh+C2Rxsc52ANtwPpscZxiLgPgLQYNMPUA@mail.gmail.com>
2016-01-28 19:51 GMT+00:00  <[email protected]>:
> Hello,
>
> first of all I would like to thank you for creating and maintaining FreeTDS. In our application we do have procedure to trace progress of huge procedures execution to easily find out where the error is. This procedure contains raiserror function. When in another procedure I call select after trace procedure is called out I got invalid cursor state. i.e.:
>
> create procedure sp_trace as
>   raiserror('test', 0, 1)
> go
>
> create procedure sp_test_me as
>   select getdate()
>   execute sp_trace
>   select getdate()
> go
>
> Then we call out from perl:
> my $dbh=APPDBI->masterConnect();
> my $statement='execute sp_test_me';
> my $sth=$dbh->prepare($statement);
> my $sth->execute;
> while (my $d=$sth->fetch;){ #get 1st result set (first getdate)
>   print Dumper $d;
> }
> while (my $d=$sth->fetch;){ #get 2nd result set (second getdate)
>   print Dumper $d;
> }
>
>
> Can you confirm this is a bug which can/will be fixed?
> We have tried other driver in our setup (easysoft) and it is not case.
> Please let me know wah other details you need from me to support you in investigation.
>
> Best Regards,
> JJ

Hi,
  it's indeed quite strange. Have a look at
http://www.freetds.org/userguide/askingforhelp.htm and
http://www.freetds.org/userguide/logging.htm. With the dump we can
understand a lot like which library is Perl using and how. As your
problem is not logging in you could strip the login part if you feel
more comfortable for security reasons.

Frediano
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.