JDBC - error reading BLOBs
От | Nelson Ferreira Jr |
---|---|
Тема | JDBC - error reading BLOBs |
Дата | |
Msg-id | 39705864.8CABD64F@radix.com.br обсуждение исходный текст |
Ответы |
Re: Migration
|
Список | pgsql-interfaces |
Hi, I got the following error when reading BLOBs from a database. Everything works fine when there is a few concurrent requests, but when putting the servlet in a heavy-load situation, I got the following errors: ERROR: lo_tell: invalid large object descriptor (0) ERROR: lo_close: invalid large obj descriptor (1) ERROR: lo_read: invalid large obj descriptor (1) ERROR: lo_lseek: invalid large obj descriptor (1) It only happens with 10 or more concurrent requests, and about 5% of the requests fails. Here is the code: -------------------------------------------------------------------- con.setAutoCommit(false) pstmt =con.prepareStatement(query_gif); ResultSet rs_gif = pstmt.executeQuery(); if (rs_gif.next()) { BufferedInputStream gifDados = new BufferedInputStream(rs_gif.getBinaryStream("GIF")); byte[] buf =new byte[4*1024]; //4Kb buffer int tam; while ((tam =gifDados.read(buf,0,buf.length)) != -1){ out.write(buf,0,tam); // Its the PrintWriter of my Servlet } } con.setAutoCommit(true); -------------------------------------------------------------------- I am runnig postgreSQL 7.0.2 on a RedHat 6.2 linux Thanks
В списке pgsql-interfaces по дате отправления: