|
|
|
JDBC+Oracle - освобождение курсора?
|
|||
|---|---|---|---|
|
#18+
Добрый день! У меня возникла следующая проблема - клиентское приложение (сервлет, сервер Tomcat 5.5.) использующее JDBC для доступа к базе Oracle (8.1.7) создает в базе большое количество курсоров. Достаточно ли для их освобождения вызвать метод close() объекта типа ResultSet? Или с курсором так же связывается и Statement? Я явно вызываю close() где только можно, но в статистике базы число opened cursors и opened cumulative cursors постоянно растет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 11:45 |
|
||
|
JDBC+Oracle - освобождение курсора?
|
|||
|---|---|---|---|
|
#18+
По-моему stmt.close() делать надо. И писать типа того: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 13:03 |
|
||
|
JDBC+Oracle - освобождение курсора?
|
|||
|---|---|---|---|
|
#18+
ИМХО закрывать следует все, что можно. Я как-то столкнулся с ситуацией, когда Connection, возвращаемый в пул коннектов, оставался занятым потому, что содержал незакрытый ResultSet. В результате количество сессий постоянно росло. Думаю, тоже самое будет и со Statement'ом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2005, 13:25 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=822&tid=2153096]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 202ms |
| total: | 344ms |

| 0 / 0 |
