Skip to Content.
Sympa Menu

freetds - RE: [freetds] src/dblib/rpc.c and its unittest

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Thompson, Bill D (London)" <ThompBil AT exchange.uk.ml.com>
  • To: "'freetds AT lists.ibiblio.org'" <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] src/dblib/rpc.c and its unittest
  • Date: Mon, 25 Nov 2002 15:22:16 -0000

All,

A quick check confirms that Sybase dbsqlok() hangs in just the same way as
our version does, if called out of context.

Bill

> -----Original Message-----
> From: Thompson, Bill D (London) [SMTP:ThompBil AT exchange.uk.ml.com]
> Sent: 25 November 2002 13:20
> To: 'freetds AT lists.ibiblio.org'
> Subject: RE: [freetds] src/dblib/rpc.c and its unittest
>
> Brian,
>
> I'll check what the Sybase dblibrary dbsqlok() does when it is called in
> this way (i.e. nothing has been sent to check the status of...)
> If it hangs like ours, then I suggest we leave as is. Otherwise, we
> obviously need to check some sort of state flag or other....
>
> WRT the sqsh behaviour. Well I changed ct_results() a while back such that
> it only returned "result" data to the calling program if the CS_EXPOSE_FMT
> config option was set. sounds like there may be something in that area.
> I'll
> take a look....
>
> Bill
>
> > -----Original Message-----
> > From: Brian Bruns [SMTP:camber AT ais.org]
> > Sent: 25 November 2002 13:59
> > To: 'freetds AT lists.ibiblio.org'
> > Subject: RE: [freetds] src/dblib/rpc.c and its unittest
> >
> > Perhaps dbsqlok needs to check tds->status? Although I don't quite know
> uf
> >
> > we are setting status with rpc calls, should be.
> >
> > BTW, has anyone noticed doing 'select * from table1 where 0=1' in sqsh
> no
> > longer returns the column headers? haven't had time to debug it, but
> > noticed it on friday. Any ctlib changes in this area? (friday cvs, sqsh
>
> > 2.1, ase 11.0.3 on linux)
> >
> >
> > On Mon, 25 Nov 2002, Thompson, Bill D (London) wrote:
> >
> > > James,
> > >
> > > I can reproduce your issue, e.g.
> > >
> > > 2002-11-25 11:54:31.396639 dbsqlok() marker is 253
> > > 2002-11-25 11:54:31.397077 dbsqlok() found end token
> > > 2002-11-25 11:54:31.397541 inside tds_process_end() more_results = 0,
> > > was_cancelled = 0
> > > 2002-11-25 11:54:31.397970 dbsqlok() end status was success
> > > 2002-11-25 11:54:31.398428 calling dbresults
> > > 2002-11-25 11:54:31.398870 inside dbresults()
> > > 2002-11-25 11:54:31.399294 inside dbresults()
> > > 2002-11-25 11:54:31.399745 inside dbresults_r()
> > > 2002-11-25 11:54:31.400201 inside tds_process_result_tokens() state is
> > > COMPLETED
> > > 2002-11-25 11:54:31.400640 leaving dbresults() returning 2
> > > 2002-11-25 11:54:31.403943 in dbsqlok()
> > >
> > > But what has happened prior to the second call to dbsqlok() ( last
> line
> > of
> > > this log) is:
> > >
> > > executing dbrpcinit
> > > Failed: dbrpcinit
> > > executing dbrpcparam
> > > Failed: dbrpcparam
> > > executing dbrpcsend
> > > Failed: dbrpcsend
> > > executing dbsqlok
> > >
> > > So in my case at least, we have called dbsqlok() after the rpc calls
> > have
> > > failed. Presumably they have sent nothing to the server, so dbsqlok()
> is
> > > just waiting on a reply that's never going to come....
> > >
> > > Bill
> > >
> > > > -----Original Message-----
> > > > From: James K. Lowden [SMTP:jklowden AT schemamania.org]
> > > > Sent: 24 November 2002 22:09
> > > > To: TDS Development Group
> > > > Subject: [freetds] src/dblib/rpc.c and its unittest
> > > >
> > > > Progress of a kind on the rpc front.
> > > >
> > > > I committed what I think ought to be a working version of the db-lib
> > rpc
> > > > functions. dbrpcsend() calls Frediano's new tds functions.
> > > >
> > > > The rpc unittest fails, however, in dbsqlok. It's not clear why,
> and
> > > > there appears to be some end token magic in it that we might want to
> > > > reëxamine.
> > > >
> > > > Here's the tail of the log:
> > > >
> > > > 2002-11-24 16:52:11.486975 dbsqlok() marker is 253
> > > > 2002-11-24 16:52:11.487001 dbsqlok() found end token
> > > > 2002-11-24 16:52:11.487025 inside tds_process_end() more_results =
> 0,
> > > > was_cancelled = 0
> > > > 2002-11-24 16:52:11.487053 dbsqlok() end status was success
> > > > 2002-11-24 16:52:11.487078 inside dbresults()
> > > > 2002-11-24 16:52:11.487101 inside dbresults()
> > > > 2002-11-24 16:52:11.487123 inside dbresults_r()
> > > > 2002-11-24 16:52:11.487147 inside tds_process_result_tokens() state
> is
> > > > COMPLETED
> > > > 2002-11-24 16:52:11.487172 leaving dbresults() returning 2
> > > > 2002-11-24 16:52:11.487657 in dbsqlok()
> > > >
> > > > Suggestions welcome. Repairs solicited. Thanks for listening.
> > > >
> > > > --jkl
> > > > _______________________________________________
> > > > freetds mailing list
> > > > freetds AT lists.ibiblio.org
> > > > http://lists.ibiblio.org/mailman/listinfo/freetds
> > >
> > > _______________________________________________
> > > FreeTDS mailing list
> > > FreeTDS AT lists.ibiblio.org
> > > http://lists.ibiblio.org/mailman/listinfo/freetds
> > >
> >
> > _______________________________________________
> > FreeTDS mailing list
> > FreeTDS AT lists.ibiblio.org
> > http://lists.ibiblio.org/mailman/listinfo/freetds
>
> _______________________________________________
> FreeTDS mailing list
> FreeTDS AT lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds





Archive powered by MHonArc 2.6.24.

Top of Page