pg.ddx.io  pgsql-interfaces@postgresql.org mailing list archive  
help / color / mirror / Atom feed
Re: FE/BE protocol revision patch
3+ messages / 2 participants
[nested] [flat]

* Re: FE/BE protocol revision patch
@ 1998-05-19 18:16 Bruce Momjian <maillist@candle.pha.pa.us>
  0 siblings, 0 replies; 3+ messages in thread

From: Bruce Momjian @ 1998-05-19 18:16 UTC (permalink / raw)
  To: tgl@sss.pgh.pa.us; +Cc: pgsql-interfaces

Tom Lane wrote:
> What I've done:
> 
> 1. Rewritten libpq to allow asynchronous clients.
> 
> 2. Implemented client side of cancel protocol in library,
>    and patched psql.c to send a cancel request upon SIGINT.
>    The backend doesn't notice it yet :-(
> 
> 3. Implemented 'Z' protocol message addition and renaming of
>    copy in/out start messages.  These are implemented conditionally,
>    ie, the client protocol version is checked; so the code should
>    still work with 1.0 clients.
> 
> 4. Revised protocol and libpq sgml documents (don't have an SGML
>    compiler, though, so there may be some markup glitches here).
> 
> 
> What remains to be done:
> 
> 1. Implement addition of atttypmod field to RowDescriptor messages.
>    The client-side code is there but ifdef'd out.  I have no idea
>    what to change on the backend side.  The field should be sent
>    only if protocol >= 2.0, of course.
> 
> 2. Implement backend response to cancel requests received as OOB
>    messages.  (This prolly need not be conditional on protocol
>    version; just do it if you get SIGURG.)
> 
> 3. Update libpq.3.  (I'm hoping this can be generated mechanically
>    from libpq.sgml... if not, will do it by hand.)  Is there any
>    other doco to fix?
> 
> 4. Update non-libpq interfaces as necessary.  I patched libpgtcl
>    so that it would compile, but haven't tested it.  Dunno what
>    needs to be done with the other interfaces.

OK, other interface maintainers, here is a list of the changes we have
made in the new protocol.  We need to be sure all the interfaces are
ready with these changes for 6.4.

We still have the open item of query cancellation for unix domain
connections, but will resolve this shortly.


-- 
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)



^ permalink  raw  reply  [nested|flat] 3+ messages in thread

* Re: [DOCS] Re: FE/BE protocol revision patch
@ 1998-05-20 01:07 Thomas G. Lockhart <lockhart@alumni.caltech.edu>
  1998-05-20 01:54 ` Re: [DOCS] Re: FE/BE protocol revision patch Bruce Momjian <maillist@candle.pha.pa.us>
  0 siblings, 1 reply; 3+ messages in thread

From: Thomas G. Lockhart @ 1998-05-20 01:07 UTC (permalink / raw)
  To: Bruce Momjian <maillist@candle.pha.pa.us>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Postgres Hackers List <hackers@postgresql.org>

> > 1. Implement addition of atttypmod field to RowDescriptor messages.
> >    The client-side code is there but ifdef'd out.  I have no idea
> >    what to change on the backend side.  The field should be sent
> >    only if protocol >= 2.0, of course.

Hmm. I was hoping to do something in the backend to allow data types
like numeric(p,s) which take multiple qualifying arguments (in this
case, precision and scale). One possibility was to shoehorn both fields
into the existing atttypmod 16-bit field.

Seems like atttypmod is now being used for things outside of the
backend, but I'm not sure how to support these other uses with these
other possible data types.

A better general approach to the type qualifier problem might be to
define a variable-length data type which specifies column
characteristics, and then pass that around. For character strings, it
would have one field, and for numeric() and decimal() it would have two.

Comments? Ideas??

                      - Tom



^ permalink  raw  reply  [nested|flat] 3+ messages in thread

* Re: [DOCS] Re: FE/BE protocol revision patch
  1998-05-20 01:07 Re: [DOCS] Re: FE/BE protocol revision patch Thomas G. Lockhart <lockhart@alumni.caltech.edu>
@ 1998-05-20 01:54 ` Bruce Momjian <maillist@candle.pha.pa.us>
  0 siblings, 0 replies; 3+ messages in thread

From: Bruce Momjian @ 1998-05-20 01:54 UTC (permalink / raw)
  To: lockhart@alumni.caltech.edu; +Cc: tgl@sss.pgh.pa.us; hackers@postgresql.org; pgsql-interfaces

> 
> > > 1. Implement addition of atttypmod field to RowDescriptor messages.
> > >    The client-side code is there but ifdef'd out.  I have no idea
> > >    what to change on the backend side.  The field should be sent
> > >    only if protocol >= 2.0, of course.
> 
> Hmm. I was hoping to do something in the backend to allow data types
> like numeric(p,s) which take multiple qualifying arguments (in this
> case, precision and scale). One possibility was to shoehorn both fields
> into the existing atttypmod 16-bit field.
> 
> Seems like atttypmod is now being used for things outside of the
> backend, but I'm not sure how to support these other uses with these
> other possible data types.

We are just passing it back.  There is no special handling of atttypmod
that you need to worry about.  I think we pass it back to Openlink can
know the actual length of the char() and varchar() fields without doing
a dummy select.  However, they better know it is a char()/varchar()
field before using it for such a purpose, because it could be used from
something else later on, as you suggest.

> A better general approach to the type qualifier problem might be to
> define a variable-length data type which specifies column
> characteristics, and then pass that around. For character strings, it
> would have one field, and for numeric() and decimal() it would have two.

-- 
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)



^ permalink  raw  reply  [nested|flat] 3+ messages in thread


end of thread, other threads:[~1998-05-20 01:54 UTC | newest]

Thread overview: 3+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
1998-05-19 18:16 Re: FE/BE protocol revision patch Bruce Momjian <maillist@candle.pha.pa.us>
1998-05-20 01:07 Re: [DOCS] Re: FE/BE protocol revision patch Thomas G. Lockhart <lockhart@alumni.caltech.edu>
1998-05-20 01:54 ` Bruce Momjian <maillist@candle.pha.pa.us>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox