Re: More on updates with first() vs absolute()
От | Barry Lind |
---|---|
Тема | Re: More on updates with first() vs absolute() |
Дата | |
Msg-id | 3E68FF5C.4010101@xythos.com обсуждение исходный текст |
Ответ на | More on updates with first() vs absolute() (Rich Cullingford <rculling@sysd.com>) |
Список | pgsql-jdbc |
Rich, Thanks for debugging. The fix is obvious enough from your description that a patch is unnecessary. I will check the fix into CVS later today. thanks, --Barry Rich Cullingford wrote: > Good morning, > Yesterday I reported a crash in updateRow() when preceded by an > absolute(1) positioning call, when preceding it with first() worked. It > now seems the DB update was happening OK; the crash was a null pointer > exception at the line: > > rowBuffer[columnIndex] = > connection.getEncoding().encode(String.valueOf(valueObject)); > > of updateRowBuffer(). It appears the rowBuffer isn't being initialized > properly, and, sure enough, when you compare first() with absolute(), > the former has: > > rowBuffer = new byte[this_row.length][]; > System.arraycopy(this_row, 0, rowBuffer, 0, this_row.length); > > while the latter does not. Adding the initialization cures the crash. > There might be other locations needing the same patch. > > If this is an acceptable patch, I'll be happy to submit it if someone > tells me how. (It looks like a cvs diff to pgsql-jdbc is the desired > way, but I'm not clear how to do that: do I start with the current > pg-snapshot or something else?) > > Rich Cullingford > System Detection, Inc. > 5 W 19th St, NYC, NY 10010 > rculling@sysd.com > > > ---------------------------(end of broadcast)--------------------------- > TIP 2: you can get off all lists at once with the unregister command > (send "unregister YourEmailAddressHere" to majordomo@postgresql.org) >
В списке pgsql-jdbc по дате отправления: