Bug in the setTimestamp() method for Newfoundland time zone
От | Brent Eagles |
---|---|
Тема | Bug in the setTimestamp() method for Newfoundland time zone |
Дата | |
Msg-id | 20030921005530.B29156@ooc.nf.ca обсуждение исходный текст |
Ответы |
Re: Bug in the setTimestamp() method for Newfoundland time
|
Список | pgsql-jdbc |
Hi, The Statement.setTimestamp() implementation has a bug in it for half hour timezones west of GMT. Newfoundland is such a location with a timezone offset of GMT -3:30. An example of a bogus string (calc includes Daylight savings time offset) follows: 2003-07-15 10:43:35.000000-020-30 The problem is in here: int l_minos = l_offset - (l_houros * 60); if (l_minos != 0) { if (l_minos < 10) sbuf.append('0'); sbuf.append(l_minos); } l_minos is going to be negative so 1. a zero is going to erroneously be inserted into the stream and 2. the neg sign is going to be included in sbuf.append(l_minos). A possible fix is to modify the code like so: if (l_minos != 0) { l_minos = Math.abs(l_minos); if (l_minos < 10) sbuf.append('0'); sbuf.append(l_minos); } Best regards, Brent -- Brent Eagles Principal Engineer - IONA | Making Software Work Together TM Email: mailto:brent.eagles@iona.com Phone: (709) 738-3725 x18 WWW: http://www.iona.com/
В списке pgsql-jdbc по дате отправления: