|
|
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
=============================== Упёрся в проблему: К серверу подключаются два клиента. UID и PWD у обоих клиентов - имена компьютеров, с которых идёт подключение. Оба клиента входят в общую группу. Тот, кто успел подключиться к БД первым, работает нормально. У того, кто подключается вторым, статус всегда DB_EXECUTE. После соединения с базой данных, видимо при первой же операции чтения (записи?) приложение у второго клиента "повисает" навсегда. Вопросы: почему происходит "зависание", что это за статус DB_EXECUTE и как его можно (нужно) изменить? Сервер и клиенты Sybase SQL Anywhere 5.0. P.S. В администрировании базы данных я практически дубина-дубиной, поэтому очень прошу в объяснениях по возможности сделать на это скидку. Спасибо. ================================ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 16:04 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
FasimbaВ администрировании базы данных я практически дубина-дубиной Не трогай то, в чём ничего не понимаешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 16:27 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Dim2000 FasimbaВ администрировании базы данных я практически дубина-дубиной Не трогай то, в чём ничего не понимаешь. Спасибо! Это наверное, лучший ответ на мой вопрос, но приложение всё равно повисает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 16:44 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Может быть что угодно - от лицензирования сервера только на одно подключение до ситуации, что первый клиент что то пишет в БД и не коммитит данные, а второй пытается их считать и ждет освобождения блокировки. Перво наперво нужно посмотреть - коннектиться ли ISQL к БД, когда уже работает первый клиент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 16:53 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Да, ISQL коннектится, попробовал выполнить простой SELECT. Работает. По поводу лицензирования сервера: Multi-user Per seat. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 18:28 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Теперь попробуйте запустить первого клиента, далее второго, чтобы он завис, далее запустите ISQL и выполните в нем: Код: plaintext P.S. Не факт правда, что эта процедура есть в 5-ой версии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 18:36 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Procedure 'sa_locks' not found. Один клиент блокирует другого. Т.е. если закрыть первого клиента, второй тут же оживает. Причём один раз мне удалось присоединить их обоих. Но повторить ситуацию никак не могу. Копать в сторону исходников? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 19:35 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
А если попробовать не per seat, a второй вариант (concurrent)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 20:44 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
=================================== Нашёл несколько процедур с префиксом sa_: sa_db_info(); sa_conn_info(); sa_db_properties(); sa_eng_properties(); sa_conn_properties(); Процедура sa_conn_properties() выдаёт: Type of active request: у первого - нет, у второго - DB_EXECUTE. Connection Blocked on: у первого = 0, у второго = 2120842322. =================================== mustliveА если попробовать не per seat, a второй вариант (concurrent)? Это тот вариант, который при установке СУБД что-то требует? (дискетку с ключом?). Если да, то у меня ключа нет. Именно эту версию СУБД вроде бы кто-то когда-то привёз из штатов и она по-моему не взломанная (хотя точно утверждать не могу). Если подскажете, как ей пользоваться, как официально зарегистрированной, буду благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 22:18 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Да, требует дискету. А если с одного компьютера два одинаковых пользователя заходят (т.е. две копии программы запустить) - нормально работает или тоже виснет? Процедуры насоветованные можешь не искать, они появились гораааздо позже. А точно у тебя какая версия? 5.х.х.х???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2004, 23:45 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
mustlive А если с одного компьютера два одинаковых пользователя заходят (т.е. две копии программы запустить) - нормально работает или тоже виснет? Тоже виснет. mustlive А точно у тебя какая версия? 5.х.х.х???? Sybase SQL Anywhere Network Server Version 5.5.01 Build #1333. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2004, 17:26 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
ASCRUSМожет быть что угодно - от лицензирования сервера только на одно подключение Насколько я помню, если заканчиваются лицензии на коннект - следующий просто не может подконнектиться, но ничего не виснет. до ситуации, что первый клиент что то пишет в БД и не коммитит данные, а второй пытается их считать и ждет освобождения блокировки. Судя по ответу от 22:18 - второе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2004, 17:42 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Fasimba Процедура sa_conn_properties() выдаёт: Type of active request: у первого - нет, у второго - DB_EXECUTE. Connection Blocked on: у первого = 0, у второго = 2120842322. Типичная блокировка. Fasimba5.5.01 Build #1333. Традиционный ответ в подобных случаях - "приложи последние сервиспаки". Впрочем, я абсолютно не уверен, что это что-то изменит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2004, 17:43 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Dim2000 ASCRUS до ситуации, что первый клиент что то пишет в БД и не коммитит данные, а второй пытается их считать и ждет освобождения блокировки. Судя по ответу от 22:18 - второе. Попробую посмотреть исходники клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2004, 18:52 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Fasimba хочешь пороюсь свою версию 5.5 поищу? у меня на ней работал склад 3 года с 5 рабочими местами (at least) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2004, 23:36 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
У меня была замечена похожая проблема. И по симптомам - как раз блокирование таблицы без коммита. Как было - в isql имзенил данные в таблице, и забыл поставить commit. Потом при открытии клиента при обращении к измененной таблице он тупо затыкался. Потом поставил commit в isql - и все отмерло. Вот так вот. ПС: Версия - почти как и у автора вопроса, ASA 5.5.03#1666 ППС: Проблему так и не решил, потому что в условиях моей задачи особо не нужно обеспечить параллельный доступ к БД из нескольких клиентов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2004, 12:29 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Vadim RomanenkoКак было - в isql имзенил данные в таблице, и забыл поставить commit. Потом при открытии клиента при обращении к измененной таблице он тупо затыкался. Потом поставил commit в isql - и все отмерло. Вот так вот. Ну это, извините, не проблема. Это совершенно правильное поведение сервера. Вот ошибкой оператора это назвать можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2004, 17:41 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Нашлась ошибка на клиенте. При записи в базу данных не во всех случаях выполнялся COMMIT. Спасибо всем за помощь. tchingizFasimba хочешь пороюсь свою версию 5.5 поищу? у меня на ней работал склад 3 года с 5 рабочими местами (at least) Она поддерживает больше 10 клиентов? Хочу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2004, 19:53 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Если включить интеллект, можно получить unlimited edition ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2004, 22:47 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
mustliveЕсли включить интеллект, можно получить unlimited edition ;-) Файл какой-то подправить? Я догадался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2004, 03:41 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Правильным путем идете, товарищ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2004, 15:33 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
Fasimba я тебя не заметил хорошо я выложу гдето ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2004, 09:02 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
фасимба пришли свое мыло ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2004, 09:07 |
|
||
|
"Повисание" приложения при обращении к БД
|
|||
|---|---|---|---|
|
#18+
tchingizфасимба пришли свое мылоE-mail выслал. mustliveПравильным путем идете, товарищ.А этот файл нужно менять до или после установки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2004, 05:52 |
|
||
|
|

start [/forum/topic.php?fid=55&tid=2014072]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
152ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 232ms |
| total: | 477ms |

| 0 / 0 |

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