|
|
|
ASE + Java = (8-o)
|
|||
|---|---|---|---|
|
#18+
У нас серьёзные проблемы, связанные с эксплуатацией ASE и клиента на Java (JBoss + стандартный Sybase JConnect 6) Почему-то клиенты, приходящие с Java-сервера, блокируют всех и всё, создавая временные таблицы в tempdb, видимо, внутри длинной транзакции (иначе оно недолго бы блокировало, и блокирующий процесс не держал бы блокировки на другие таблицы, наши). Ну, в общем, по классике как не надо делать. Также есть подозрение, что создаются эти временные таблицы внутри временных хранимых процедур, создаваемых также в tempdb. Мы не используем никогда прямые запросы. Только вызовы процедур. не открываем явно транзакции, всё управление транзакциями -- в серверных хранимых процедурах. Используется autocommit. Вышеперечисленное гарантировано на 99%. Ну т.е. почти на 100%. Остаётся одна мысль -- это где-то косячит Java, т.е. JDBC-драйвер. ВОПРОС: Не знает ли кто из людей, использующих JDBC для доступа к ASE, каких-то стандартных ситуаций или настроек, когда JDBC может или будет делать подобные гадости ? Вот ситуация по процессам в момент проблемы (аналог sp_who): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. а вот -- по локам (аналог sp_lock). Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Тут видно, что три процесса блокируются 135 процессом, который блокирует всё, что только можно в tempdb. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. включая также syscolumns, который всем и мешает Код: plaintext 1. и ещё держит два непонятных лока на две таблицы в tempdb: Код: plaintext 1. 2. Это точно таблицы не из нашего кода. Что это могло бы быть ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 16:23 |
|
||
|
ASE + Java = (8-o)
|
|||
|---|---|---|---|
|
#18+
Может multiple tempdb поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 17:46 |
|
||
|
ASE + Java = (8-o)
|
|||
|---|---|---|---|
|
#18+
kolchanovМожет multiple tempdb поможет? очень похоже на то если конкуренция за системные таблицы в tempdb, то multiple tempdb думаю вас спасут ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.03.2010, 18:01 |
|
||
|
ASE + Java = (8-o)
|
|||
|---|---|---|---|
|
#18+
есть опыт но никогда не встречал такого. думаю, что проблема в ваших процедурах... не увидел с каким уровнем блокировки жава работает с базой. и что это за временные процедуры создающиеся в tempdb??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2010, 10:11 |
|
||
|
ASE + Java = (8-o)
|
|||
|---|---|---|---|
|
#18+
Dmitry.. wrote: > есть опыт но никогда не встречал такого. > думаю, что проблема в ваших процедурах... Ну может быть и так. В смысле, в своих процедурах мы тоже проблемы нашли. Сбило с толку, что коннекции в другой базе данных почему-то работают (текущая база данных у них tempdb почему-то). > не увидел с каким уровнем блокировки жава работает с базой. > и что это за временные процедуры создающиеся в tempdb??? Процедуры какие-то создаются, это точно. Одну мы поймали за хвост, её текст был DEFAULT 1 и всё. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2010, 15:45 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=36555863&tid=2010691]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 16ms |
| total: | 146ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...