PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Ken Fasman <ken at genome dot wi dot mit dot edu>
Subject: Re: syb_more_results and stored proc errors in DBD::Sybase 0.08
Date: May 29 1998 7:00PM

Michael,

By the way, I also had to change the C++ style comment on line 1685 of dbdimp.c
to a C-style /* */ pair in order to successfully compile under gcc on Digital 
Unix.  I know that you've made these changes in the past in response to other 
users' requests in sybperl.

Sorry that I forgot to mention this yesterday.  Thanks for the quick patch --
I'll run it through the wringer this afternoon. 

Ken 

On Thu, 28 May 1998, Michael Peppler wrote:

> Michael Peppler writes:
>  > Ken Fasman writes:
>  >  > In the script included below, the erroneous parameter passed to sp_who 
>  >  > results in an infinite loop processing the *second* result set.  Am I using 
>  >  > syb_more_results incorrectly, or is a bug in DBD::Sybase 0.08 failing to 
>  >  > reset this flag when an error occurs?
>  > 
>  > This is a bug.
>  > 
>  > I'll try to find a moment to fix it...
> 
> OK - here's a patch:
> 
> *** /tmp/T0a001oD	Thu May 28 16:26:24 1998
> --- dbdimp.c	Thu May 28 16:24:54 1998
> ***************
> *** 1294,1300 ****
>   	      fprintf(DBILOGFP, "    syb_st_fetch() -> st_next_results() == %d\n",
>   		      restype);
>   
> ! 	  if(restype == CS_CMD_DONE) {
>   	      imp_sth->moreResults = 0;
>   	      imp_sth->dyn_execed = 0;
>   	      DBIc_ACTIVE_off(imp_sth);
> --- 1294,1300 ----
>   	      fprintf(DBILOGFP, "    syb_st_fetch() -> st_next_results() == %d\n",
>   		      restype);
>   
> ! 	  if(restype == CS_CMD_DONE || restype == CS_CMD_FAIL) {
>   	      imp_sth->moreResults = 0;
>   	      imp_sth->dyn_execed = 0;
>   	      DBIc_ACTIVE_off(imp_sth);
> ***************
> *** 1682,1688 ****
>   
>       if (phs->sv == &sv_undef) { /* first bind for this placeholder      */
>           phs->ftype    = CS_CHAR_TYPE;
> ! //	phs->sql_type = (sql_type) ? sql_type : CS_CHAR_TYPE;
>           phs->maxlen   = maxlen;         /* 0 if not inout               */
>           phs->is_inout = is_inout;
>           if (is_inout) {
> --- 1682,1688 ----
>   
>       if (phs->sv == &sv_undef) { /* first bind for this placeholder      */
>           phs->ftype    = CS_CHAR_TYPE;
> ! /*	phs->sql_type = (sql_type) ? sql_type : CS_CHAR_TYPE;           */
>           phs->maxlen   = maxlen;         /* 0 if not inout               */
>           phs->is_inout = is_inout;
>           if (is_inout) {
> 
> 
> Michael
> -- 
> Michael Peppler         -||-  Data Migrations Inc.
> mpeppler@datamig.com    -||-  http://www.mbay.net/~mpeppler
> Int. Sybase User Group  -||-  http://www.isug.com
> 
> 

-----------------------------------------------------------------------
Ken Fasman, Ph.D.                             |  ken@genome.wi.mit.edu  
Director for Sequencing Informatics           | 
Whitehead/MIT Center for Genome Research      |  (617) 258-0900 (main #)
320 Charles Street                            |  (617) 258-0903 (fax)
Cambridge MA  02141                           |  (617) 258-0918 (direct)
-----------------------------------------------------------------------