Re: JDBC error codes to detect duplicates? - Mailing list pgsql-interfaces
From | Peter T Mount |
---|---|
Subject | Re: JDBC error codes to detect duplicates? |
Date | |
Msg-id | 983524175.3a9f634f72a6a@webmail.retep.org.uk Whole thread Raw |
In response to | Re: JDBC error codes to detect duplicates? (Cedar Cox <cedarc@visionforisrael.com>) |
List | pgsql-interfaces |
Quoting Cedar Cox <cedarc@visionforisrael.com>: > > As stated, the backend protocol doesn't pass error codes but error > messages. My question is, are there enough of these kind of things to > create a new protocol version (7.2)? After all, we are still using the > same protocol since (?)6.5. I think adding error codes would not only > benefit JDBC but ODBC and possibly others also. I know there have been > various discussions like this one about parsing error messages in the > ODBC > driver. As I remember, there were one or two other things that have > been > discussed that would require a change in the protocol also. Just my > two > cents. I totally agree. Putting the error codes (an extra 2 or 4 bytes) in the protocol shouldn't be too much hardship, and does mean several benefits: 1: No parsing of error messages on the client side 2: Small clients (embeded systems) can ignore the textual side of the message 3: It would be optional not to send the textual message - just the error number. Again good for non-human clients 4: Codes would be language independent (human that is). Currently AFAIK only JDBC supports it's own error messages in non-english languages. Having the codes would mean the backend ones could also be in non-english format and the clients would still work fine. Virtually every interface would benefit from it. Peter > > -Cedar > > On Thu, 1 Mar 2001, Bruce Momjian wrote: > > > I have ideas on how to do error codes and multiple languages. I can > > make a proposal for 7.2. > > > > [ Charset ISO-8859-1 unsupported, converting... ] > > > > >AFAIK clean implementation of such feature is not possible > because > > > backend > > > > >protocol does not have error codes (only error messages) > > > > > > > > Thats correct. It's also not practical to get the driver to > translate > > > > because the format of the messages can change between releases as > well. > > > > > > Practically speaking, how often do the messages really change > between > > > releases? It seems that we could create a pluggable translator that > would > > > work based on the release version. If the messages change too > frequently, > > > then something's seriously wrong with Postgresql server since the > main > > > sql-portion of the system has been in place and there aren't too > many things > > > a program really needs to detect about a database (missing row, > duplicate > > > key, constraint violation, transaction error, deadlock detected, > etc.). > > > > > > David > > > > > > > > > > > > -- > > Bruce Momjian | http://candle.pha.pa.us > > pgman@candle.pha.pa.us | (610) 853-3000 > > + If your life is a hard drive, | 830 Blythe Avenue > > + Christ can be your backup. | Drexel Hill, Pennsylvania > 19026 > > > > -- Peter Mount peter@retep.org.uk PostgreSQL JDBC Driver: http://www.retep.org.uk/postgres/ RetepPDF PDF library for Java: http://www.retep.org.uk/pdf/
pgsql-interfaces by date: