|
|
|
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&msg=32869900&tid=2153096]: |
0ms |
get settings: |
11ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
206ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
24ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 512ms |

| 0 / 0 |
