powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Разрыв пользовательского соединения через 2 часа
144 сообщений из 144, показаны все 6 страниц
Разрыв пользовательского соединения через 2 часа
    #39516157
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!

Есть приложение, написанное на C#, СУБД Firebird 2.5.7, SuperServer.
По истечении двухчасового молчания клиента, подключенного к серверу Firebird, происходит разрыв соединения. Под молчанием имею в виду - пользователь ничего не делает в программе в течение двух часов. После при попытке выполнить какое-либо действие (например, записать информацию или сохранить), выходит ошибка о разрыве соединения: Error reading data from the connection.
Из того, что накопала: разобралась в KEEPALIVE, он работает, если смотреть по перехваченным пакетам в Wareshark, KeepAlive происходит каждые две минуты с сервера, параметры меняла, он не влияет на наличие ошибки.
Интересно, что разрыв стабилен ровно через два часа. По перехвату пакетов... Через два часа приходит пакет от сервера о подтверждении соединения, как думаю, тег ACK,на что клиент ему кидает ответный пакет. Затем КЛИЕНТ первый отправляет пакет с тегами ACK и FIN по порту 3050(192.168.132.79-клиент, 192.168.100.97-сервер. ):
192.168.132.79 192.168.100.97 64388 → 3050 [ACK] Seq=405 Ack=469 Win=65024 Len=0
192.168.132.79 192.168.100.97 64388 → 3050 [FIN, ACK] Seq=405 Ack=469 Win=65024 Len=0

И если используется порт 3050 от клиента, как понимаю, это Firebird сам разрывает соединение, не ОС.
ОС сервера: Windows Server 2008 R2 Standart. ОС клиента: любая, на win 7, 8, XP выходит данная ошибка.

Подскажите, что у меня не так, если есть вопросы-охотно отвечу. Тяготит, что после двухчасового простоя клиенту приходится переподключаться. Сервер в сети, каждые 30 сек на сервер отправляются пустые пакеты Ping-ом для проверки доступности сервера, все пакеты успешно доходят и возвращаются.
Может я саму работу системы недопонимаю, помогите, уже неделю убила на решение этого вопроса...
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516165
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,
подозрительно похоже на параметр KeepAliveTime в винде, он по умолчанию как раз 2 часа...
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516167
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тоже так думала, но нет, его я меняла и на 5 мин, и на 2 минуты. И первый FIN идет от клиента к серверу, а не наоборт. на форуме одном читала про "FIN-все данные переданы, получены все подтверждения и соединение ЗАВЕРШАЕТСЯ логичным способом." Только как это так, если пользователь ничего не нажимает и не собирался разрывать соединение. Такая же беда, если подключиться к БД через IBExpert, два часа - и разрыв.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516172
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova, где вы его меняли?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516179
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tactical Nuclear Penguin,
на сервере, создала соответ. параметры в разделе:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:
KeepAliveTime = 300000.
KeepAliveInterval = 1000
и TcpMaxDataRetransmissions=5
На клиенте тоже пыталась изменить, установила на 5 мин, но разрыв спустя два часа опять произошел
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516180
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516182
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Могу даже с автографом :)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516185
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
o_v_a,
спасибо! По этой статье и изменяла параметры.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516187
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
o_v_a,
не помогло. Как понимаю, эти параметры в сервере нужно изменять? или в клиенте? И это же на случай разрыва (потери) соединения по сети. А потери то нет, пинги то идут стабильно.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516190
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В винде параметры keepalive применяются только после перезагрузки, кстати.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516191
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
o_v_a,
да, всегда перезагружала. ))
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516199
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у Вас всё в локалке или удалёнка какая?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516202
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Кипалив итак по умолчанию включён, AFAIK.
Лучше уж тогда dummy-пакеты посылайте, это проще.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516203
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,
o_v_aСтек TCP отслеживает момент прекращения прохождения пакетов между клиентом и сервером, запуская таймер KEEPALIVE. Как только таймер достигнет величины KEEPALIVE_ TIME, стек TCP сервера выполняет первую пробу KEEPALIVE. Проба – это пустой пакет c флагом ACK, отправляемый клиенту. Если на стороне клиента все в порядке, то стек TCP на клиентской стороне посылает ответный пакет с флагом ACK и стек TCP сервера, получив ответ, сбрасывает таймер KEEPALIVE. Если клиент не отвечает на пробу, то пробы со стороны сервера продолжают выполняться. Их количество равно KEEPALIVE_ PROBES и выполняются они через интервал времени KEEPALIVE_ INTERVAL. Если клиент не ответил на последнюю пробу, то по истечении еще одного интервала времени KEEPALIVE_ INTERVAL стек TCP операционной системы сервера закрывает соединение и Firebird высвобождает все ресурсы, занимаемые обслуживанием данного соединения.

Вы в первом сообщении привели только финальный аккорд.
А предыдущие пробы как проходят?

Меняйте параметры keepalive на сервере на вменяемые для тестов, например,
KeepAliveTime = 15000
KeepAliveInterval = 1000
и TcpMaxDataRetransmissions=5
Перезагружайте сервер.

Запускайте клиента.
Стартуйте сниффер.
15 секунд ничего не делайте в клиенте для чистоты эксперимента, дожидайтесь обрыва через ещё 5 секунд и препарируйте трафик по логам сниффера.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516205
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А, сорри, вопрос про локалку снимается, судя по айпишникам.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516206
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамP.S. Кипалив итак по умолчанию включён, AFAIK.
Лучше уж тогда dummy-пакеты посылайте, это проще.
Решение для легких извращенцев 18968142
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516213
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman> Решение для легких извращенцев 18968142

Не знаю, что ты там менял (или просто для развлечения/изучения?),
но сто лет уже как соотв. настройка в конфиге есть.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516216
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только ведь вот... Клиент инициирует у вас закрытие соединения.
KEEPALIVE тут не при чём.

Нет ли каких настроек по таймауту неактивного открытого соединения в используемом вами наборе компонент для работы с Firebird?
Вы разработчик и у вас есть исходные тексты программы?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516218
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамНе знаю, что ты там менял (или просто для развлечения/изучения?),
Там обертка над клиентской частью (прокладка), которая при простое дергает указанный в ini-файле запрос.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516219
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эх ты, слабак... :) Нет чтобы на более низком уровне работать. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516221
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И косвенно то, что настройки KEEPALIVE не влияют на поведение программы, подтверждает тот факт, что причина разрыва - она именно на клиентской стороне.
Сниффер запускаете на сервере или на клиенте, кстати?
Просто если произошел ФИЗИЧЕСКИЙ разрыв и сервер на свой ACK не получает от клиента ACK, то по истечении количества проб СЕРВЕР закрывает сокет.
В вашем логе по вашим же словам закрытие коннекта выполняет клиент.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516223
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык кипалив и на клиенте есть.

По сути, надо на клиенте его
ставить меньше, чем на сервере.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516225
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ха... nnivanovaТакая же беда, если подключиться к БД через IBExpert, два часа - и разрыв.
А вот это уже интересно...
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516233
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если шашечки - напишите простенькую программу,
которая делает то же самое - простой TCP-коннект c
параметром KEAPLIVE и логируйте на обоих концах.

Если ехать - попробуйте таки dummypacketinterval.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516244
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А там в управлении электропитанием никакой каверзы нет?
Типа заснуть и отключить сетевуху?..
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516248
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
o_v_aА там в управлении электропитанием никакой каверзы нет?
Типа заснуть и отключить сетевуху?..

на серверной оси??
хотя от microsoft всего можно ожидать...
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516256
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tactical Nuclear Penguin,
не, я про клиента
Два часа бездействия - вполне могло сработать энергосбережение. Потому и уточняю.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516263
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
касаемо электропитания -точно нет, тестирую на своем компе, все два часа, что жду разрыва -я работаю за компом. Чем поможет мне DummyPacketInteerval и в какое значение его установить? Сниффер запускала на стороне клиента, с сервера тоже попробую, только что именно там искать?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516278
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот чтоб не ждать два часа, я и предлагал keepalive на сервере настроить вменяемо. И провести тесты со сниффером.

Если на клиентской стороне, то логировать трафик к серверу (IP вы знаете) на порт 3050.
KEEPALIVE-пробы должны при keepalive_time=15000 начать ходить от сервера к клиенту через 15 секунд (прием-ответ ACK - ACK) и при keepalive_interval=1000 повторяться каждую секунду в течение всей жизни сокета.
Если через два часа вы увидите пакет с FIN от клиента на сервер, то KEEPALIVE не имеет к этому никакого отношения.

Если вы запустите сниффер на серверной стороне, то при условии тишины в соединении от клиента увидите подноготную KEEPALIVE.
Выдерните шнурок на клиенте после того как клиент установит соединение (физический разрыв линии) и после 15 секунд ожидания увидите секундные пять проб с флагом ACK (при TcpMaxDataRetransmissions=5) - проб безответных от клиента, разумеется, при отключенной на клиенте сети - и шестой пакет будет с FIN
Сокет закроется по KEEPALIVE.
Вот это и есть KEEPALIVE.

А FIN со стороны клиента - это инициатива клиента к KEEPALIVE не имеющая отношения.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516282
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наврал немного:
Если на клиентской стороне, то логировать трафик к серверу (IP вы знаете) на порт 3050.
KEEPALIVE-пробы должны при keepalive_time=15000 начать ходить от сервера к клиенту через 15 секунд (прием-ответ ACK - ACK) и при keepalive_interval=1000 повторяться каждую секунду в течение всей жизни сокета.
Правильно:
Если на клиентской стороне, то логировать трафик к серверу (IP вы знаете) на порт 3050.
KEEPALIVE-пробы должны при keepalive_time=15000 начать ходить от сервера к клиенту через 15 секунд (прием-ответ ACK - ACK) и при keepalive_interval=1000 будет одна проба (посылка-ответ ACK-ACK) и вновь пауза на 15 секунд в течение всей жизни сокета.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516283
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, сейчас попробую!) позже отпишусь
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516307
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
заметила интересную особенность, у меня есть два сервера Firebird, поднятых на двух разных машинах:
1. рабочий основной - 192.168.100.97 - Windows Server 2008 R2 Standart, 64 разр.
2. отладочный мой для тестов keepalive - 192.168.132.220 - Windows XP Professioal версия 2002, SP3, 32 разр.

Так вот, если запустить мою программу на отладочном компе (192.168.132.220), где поднят тоже сервер Firebird для опытов, то разрыва соединения нет.
На своей Win7 тоже подняла сервер, запустила, спустя два часа-опять разрыв(((
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516316
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
к прошлому посту уточнение, я с отладочного сервера (192.168.132.220) подключаюсь к рабочему (192.168.100.97). Если с моего компа к любому из двух серверов - разрыв(
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516318
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,

"запустить" - понятно, а "поднять" - что означает?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516326
Граур Станислав
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне в свое время Kerio WinRoute рубил Fb-шные соединения.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516329
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaЕсли с моего компа к любому из двух серверов - разрыв(

Файерволл или антивирус шалят.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516331
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всякие энергосбережения и пр. простои компа
не при чём, она же ping паралллельно держала.

P.S. DummyPacketInterval - в конфиге на клиенте, конечно.
Ещё не мешало бы логи сервера на предмет сетевых
ошибок проверить, пожалуй.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516334
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД, запустить и есть)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516335
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,
поднять - запустить
уронить - вызвать внештатный останов сбоем
положить - остановить штатно или вызвать внештатный останов сбоем (в зависимости от контекста)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516339
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova> 1. рабочий основной
nnivanova> 2. отладочный мой для тестов
nnivanova> На своей Win7

Тестовый для программы не трогайте, тестируйте на Win7.
К какому серверу коннектиться - неважно, лучше - к обоим.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516341
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да не, ну какой файрвол и пр., если через 2 часа тютю.

Да и странно было бы файрвол и антивирус в первую
очередь не отключить...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516358
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гаджимурадов Рустам,
антивирус есть и на сервере и на клиенте (Dr.Web 11.0) по политике предприятия. Брандмауэр на сервере включен, на клиенте - выключен.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516361
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
o_v_a,

настроила keepAlive по рекомендуемым параметрам, перезапустила, спустя минуту - соединение активно. Жду два часа... отпишусь позже
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516362
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну шож вы так, в нестерильной атмосфере-то.
Если на рабочем отключить не можете - так на
тестовом хотя бы отключите.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516379
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tactical Nuclear Penguinна серверной оси??
хотя от microsoft всего можно ожидать...

я ведь уже писал, как виндовый сервер отправляет фаербёрд поспать, чтобы тот процессора слишком много не кушал
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516380
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovao_v_a,

настроила keepAlive по рекомендуемым параметрам, перезапустила, спустя минуту - соединение активно. Жду два часа... отпишусь позже
Ну а сейчас сниффером глянуть? Раз в пятнадцать секунд пары запросов-ответов ACK/ACK проскакивают через сокет?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516425
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
o_v_a,
KeepAlive пакеты перехватываются стабильно через каждые 15 сек
4293 13:26:41.249951000 192.168.132.220 192.168.132.79 TCP 55 [TCP Keep-Alive] gds-db > 55177 [ACK] Seq=478529 Ack=3633 Win=64831 Len=1
4294 13:26:41.250417000 192.168.132.79 192.168.132.220 TCP 66 [TCP Keep-Alive ACK] 55177 > gds-db [ACK] Seq=3633 Ack=478530 Win=2258 Len=0 SLE=478529 SRE=478530
4297 13:26:56.235132000 192.168.132.220 192.168.132.79 TCP 55 [TCP Keep-Alive] gds-db > 55177 [ACK] Seq=478529 Ack=3633 Win=64831 Len=1
4298 13:26:56.235612000 192.168.132.79 192.168.132.220 TCP 66 [TCP Keep-Alive ACK] 55177 > gds-db [ACK] Seq=3633 Ack=478530 Win=2258 Len=0 SLE=478529 SRE=478530
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516430
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ч.Т.Д.
Причиной разрыва TCP-соединения со стороны клиента механизм KEEPALIVE стека TCP/IP ОС Windows не является.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516431
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaГаджимурадов Рустам,
антивирус есть и на сервере и на клиенте (Dr.Web 11.0) по политике предприятия. Брандмауэр на сервере включен, на клиенте - выключен.
А нельзя ли в рамках эксперимента все временно отключить?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516437
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД, фаерол могу и попробую, а вот с антивирусом все сложнее. Но попытаться могу
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516441
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДА нельзя ли в рамках эксперимента все временно отключить?

А давно фильтры и прочие модули ядра доктора Уебстера стало можно действительно отключить,
а не просто спрятать иконку из трея?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516443
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
еще уточнение, когда у меня запущено приложение в без активном состоянии, я захожу на сервер удаленным доступом, перехожу по расшаренным папкам, разрыв все равно есть, это не влияет. Может это Firebird сам? Только что там может быть... в каком направлении искать
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516447
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovчччДА нельзя ли в рамках эксперимента все временно отключить?

А давно фильтры и прочие модули ядра доктора Уебстера стало можно действительно отключить,
а не просто спрятать иконку из трея?

Можно же деинсталлировать.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516455
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaМожет это Firebird сам?

Нет, в клиенте Firebird не предусмотрены таймауты неактивности соединения. Можете сами
посмотреть в исходниках модуля remote.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516464
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DS> А давно

Как сейчас обстоят дела - не знаю, но раньше вполне можно было остановить службу.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516473
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaМожет это Firebird сам?У меня к тестовой базы подключения бывают висят неделями, что в 2.5, что в 3.0. Не сам, ищите в винде причины, антивирус со встроенным файрволом самый главный подозреваемый.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516479
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ivan_Pisarevsky,
Спасибо за помощь! Это уже печальнее и не все в моей власти. Буду воевать с руководством...
Фаервол я отключила, жду 2 часа.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516487
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поддерживаю. + антивирус на клиенте (как раз дрвеб)
никак не влиял. На сервере - может быть, теоретически.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516488
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем воевать с руководством?
На тестовой машине-то вы можете отключить антивирус.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516513
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамDS> А давно

Как сейчас обстоят дела - не знаю, но раньше вполне можно было остановить службу.

Драйверы уровня ядра из Windows удаляются только перезагрузкой.
Потому что никто точно не знает в какие места ядрав каком порядке какие драйвера вставляли перехватчики и патчи.

Конечно, никто не мешает в драйвере сделать "галочки" типа "притворись, что тебя нету, пропускай все запросы насквозь без обработки", но насколько такая галочка правильно и полностью реализована в каждом конкретном драйвере - вопрос открытый.

У меня был лет 10 назад случай, когда Веб убивал игрушку Казаки. И никакие галочки активности ни на что не влияли - если в системе был запущен DrWeb - игрушка падала.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516517
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DrWEB не отрубает ничего. У меня на рабочей тачке 11.0 стоит SecuritySpace. Тоже коннекты могут сутками болтаться.
В пятницу забыл-оставил коннекты к тестовой базе и в понедельник могу продолжить. Хоть из программ, хоть из IBExpert.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516524
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovnnivanovaМожет это Firebird сам?

Нет, в клиенте Firebird не предусмотрены таймауты неактивности соединения. Можете сами
посмотреть в исходниках модуля remote.
Судя по конфигу (в исходы не смотрел) таймаут там есть только на собственно установление соединения.
Но уже при установленном соединении чтоб что-то рубило?.. Нет, не припомню.
Проги наши работают более, чем на тысяче АРМ, так что статистика имеется. И антивирусы ставят у клиентов разнообразные - нет, тут что-то не то.

В С# через что работаете с Firebird? Нет там ничего по этому поводу в документации на фреймворк/библиотеку?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516526
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ибо нефиг! Косынку играй.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516537
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
o_v_a,
FirebirdSql.Data.FirebirdClient.dll версией 2.1.0.0.
Может ли сервер передавать какой-то таймаут клиенту на соединение? Например, в два часа? По истечении которого клиент разрывает соединение.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516550
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
o_v_aDrWEB не отрубает ничего. У меня на рабочей тачке 11.0 стоит SecuritySpace. Тоже коннекты могут сутками болтаться.
В пятницу забыл-оставил коннекты к тестовой базе и в понедельник могу продолжить. Хоть из программ, хоть из IBExpert.
Антивирус - вещь темная, разумению не подлежит.

Помнится, у меня с какого-то момента инсталляция серверов FB в "песочницу" начала идти. Создаешь базу, работаешь с ней, а файла базы не вижу. Оказывается, файлик базы тоже где-то в песочнице создавался...
Правда, это не DrWeb был.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516551
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если запустить клиента на самом сервере -все ок, может работать бесконечно.
Выше я писала вроде, что доступность сервера в сети мы проверяем с помощью пингов через каждые 30 сек. По пингам ответы есть, а разрыв соединения все равно происходит
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516552
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovao_v_a,
FirebirdSql.Data.FirebirdClient.dll версией 2.1.0.0.Вы же утверждали, что у вас версия сервера 2.5.7, а теперь вы пишите, что версия клиента 2.1.0.0. Как так-то?

nnivanovaМожет ли сервер передавать какой-то таймаут клиенту на соединение? Например, в два часа? По истечении которого клиент разрывает соединение.Давайте не будем мучить ваш тестовый сервер - он не причем. Проблема явно кроется в софте вашего компа с Win7. Попробуйте на своём компе с Win7 подключиться к поднятому на вашем же компе серверу не на ip адрес сетевого адаптера, а на ip адрес фильтр-драйвера пели: "127.0.0.1/3050:database" и посмотрите - будет ли закрываться соединение через 2 часа.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516555
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaесли запустить клиента на самом сервере -все ок, может работать бесконечно.
Выше я писала вроде, что доступность сервера в сети мы проверяем с помощью пингов через каждые 30 сек. По пингам ответы есть, а разрыв соединения все равно происходитРабота протокола icmp никак не связана с временем жизни соединение TCP, от слова "совсем".
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516557
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdb_dev,
Сервер ранее был 2.1, недавно обновила его, как один из вариантов решения данной проблемы, недоглядела, сейчас попробую заменить. Но на 2.1 была эта проблема с разрывом, и сейчас она есть
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516599
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaМожет ли сервер передавать какой-то таймаут клиенту на соединение? Например, в два часа?
По истечении которого клиент разрывает соединение.

Нет. Повторяю медленно: в клиенте Firebird нет кода, разрывающего соединение по таймауту.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516883
Фотография Exteris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaпользователь ничего не делает в программе в течение двух часов
Что за программа? Ваша или сторонняя?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516907
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Exteris,
моя программа. клиент-серверное приложение.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516915
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, если, как говорилось уже, и IBExpert под этот же каток попадает, то проблема и не в приложении тоже, а в настройках системы где-то.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516940
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и эта беда не только на моем ПК, примерно 7-10 раз за день я получаю подобные ошибки от разных людей (ОС разные, от Win XP до Win 8). Есть пользователи, от которых я эту ошибку получаю каждый день, есть люди переменные (Для себя я уже начала статистику некую вести). Ссылалась на род их деятельности в программе, эти люди чаще просматривают некую информацию и затем программа у них простаивает до след. запроса.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516945
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,
а в логе FB случаем ничего не пишется?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516948
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,

у меня в древние времена похожая беда была, разбираться было некогда - я в код клиентских приложений добавил периодический (1 раз в несколько минут) запрос к серверу (естественно, в рамках "проблемного" коннекта) что-то вроде select count(*) from RDB@DATABASE, все с тех пор и работает. Хотя да, надо было разобраться. Наверное.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516949
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaи эта беда не только на моем ПК, примерно 7-10 раз за день я получаю подобные ошибки от разных людей (ОС разные, от Win XP до Win 8). Есть пользователи, от которых я эту ошибку получаю каждый день, есть люди переменные (Для себя я уже начала статистику некую вести). Ссылалась на род их деятельности в программе, эти люди чаще просматривают некую информацию и затем программа у них простаивает до след. запроса.У отдела тех.поддержки или системного администратора должны быть данные инвентаризации оборудования по всем компам. Поинтересуйтесь адресно - какие ethernet контроллеры стоят на компах у работников, обращавшихся с жалобой на разрыв соединения, а на своём компе, ради эксперимента, в свойствах сетевого адаптера попробуйте запретить управление питанием (снять галочку с "Разрешить отключение этого устройства для экономии энергии").
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516955
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tactical Nuclear Penguin,
есть ошибка регулярная:
CORPUS_SERVER (Server) Wed Sep 06 21:40:32 2017
INET/inet_error: read errno = 10054
Пыталась я их связать, но эта ошибка за день в лог записываться может раз 30, а разрывов по моим подсчетом было максимум за рабочий день 15.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516960
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
чччД,
был у нас тоже в программе некий код (запрашивали время с сервера), но мы от него ушли. Хотелось бы найти истинную причину.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516967
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,

кстати может у вас шибко умный роутер какой стоит и там ограничение установлено?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39516993
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tactical Nuclear Penguin,
может, попробую узнать у сисадмина. Касаемо сети и оборудования - тут у меня нет полной информации, но узнать попробую
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517029
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бесполезный и бесперспективный топик.
Что-то, где-то, может быть, иногда, ...
Ни логов нормальных, ни ответов на
вопросы, ни попыток что-то изменить
при наличии исходников...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517055
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdb_devnnivanovao_v_a,
FirebirdSql.Data.FirebirdClient.dll версией 2.1.0.0.Вы же утверждали, что у вас версия сервера 2.5.7, а теперь вы пишите, что версия клиента 2.1.0.0. Как так-то?

nnivanovaМожет ли сервер передавать какой-то таймаут клиенту на соединение? Например, в два часа? По истечении которого клиент разрывает соединение.Давайте не будем мучить ваш тестовый сервер - он не причем. Проблема явно кроется в софте вашего компа с Win7. Попробуйте на своём компе с Win7 подключиться к поднятому на вашем же компе серверу не на ip адрес сетевого адаптера, а на ip адрес фильтр-драйвера пели: "127.0.0.1/3050:database" и посмотрите - будет ли закрываться соединение через 2 часа.
По 127.0.0.1 разрыва соединения нет
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517059
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамБесполезный и бесперспективный топик.
Что-то, где-то, может быть, иногда, ...
Ни логов нормальных, ни ответов на
вопросы, ни попыток что-то изменить
при наличии исходников...

+1

Был бы ТС парнем, давно ...ями бы обложили.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517062
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ага, вежливые. Может, на фотку надеятся. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517071
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гаджимурадов Рустам,

на все вопросы ответы есть, где есть, что сказать. По поводу сети - до сих пор жду сисадмина, второй день! Такой у нас беспредел, как будет информация -отпишусь.
По поводу исходников - есть они, и решение будет со стороны кода, если проблемаправда в сети и сисадмин не пойдет на встречу, простые "заплатки" ставить не хочется.
По поводу пустых запросов к БД - причина почему мы ушли от этого, в процесс Firebird_а к концу раб.дня разрастался до 8 Гб из-за этих запросов, как только их убрали - максимум к концу раб.дня - до 2 Гб. Там конечно беда была с частотой, по моему мы отправляли запрос каждые 30 сек, а пользователей много - около 200 человек.

Проблема есть, решение хочется найти, за терпение и активность -спасибо.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517076
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaПо 127.0.0.1 разрыва соединения нетСие, в очередной раз, подтверждает предыдущие выводы о том, что настройки TCP/IP (keepalive), а также сервера и клиента firebird не причем.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517079
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaПо поводу пустых запросов к БД - причина почему мы ушли от этого, в процесс Firebird_а к концу раб.дня разрастался до 8 Гб из-за этих запросов, как только их убрали - максимум к концу раб.дня - до 2 Гб.

а вот здесь поподробней пожалуйста. Возможно это повод обратится в трекер.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517089
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaПо поводу исходников - есть они, и решение будет со стороны кода, если проблема правда в сети и сисадмин не пойдет на встречу, простые "заплатки" ставить не хочется.В данном случае не стоит заниматься перфекционизмом. Не тратьте время и нервы, напишите заплатку - запрос к FB, который будет выполняться раз в 10 мин, типа:
Код: sql
1.
2.
3.
4.
5.
6.
7.
EXECUTE BLOCK
  RETURNS (tmstmp TIMESTAMP)
AS
BEGIN
  tmstmp = CURRENT_TIMESTAMP;
  SUSPEND;
END
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517094
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениса вот здесь поподробней пожалуйста. Возможно это повод обратится в трекер.Подозреваю, что этот "memory leek" был у них еще в Firebird v2.1.0.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517111
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,
rdb_dev,
со стороны клиента каждые 30 сек отправлялся по таймеру запрос на считывание текущ.вермени. У всех пользователей подключение активно до конца раб. дня. И как я поняла, очищение памяти происходило после того, как клиент отключался. Ответы на запросы от БД начали задерживаться, подтупливала программа.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517116
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdb_dev,
был у нас сперва и 2.1 сервер, но такая же беда с разрастанием процесса до 8 Гб была вроде и в 2.5.2. На 2.5.7 мы перешли буквально месяц назад.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517119
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaсо стороны клиента каждые 30 сек отправлялся по таймеру запрос на считывание текущ.вермени. У всех пользователей подключение активно до конца раб. дня. И как я поняла, очищение памяти происходило после того, как клиент отключался. Ответы на запросы от БД начали задерживаться, подтупливала программа.Запросы закрывать пробовали ? :)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517120
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova> со стороны клиента каждые 30 сек отправлялся по таймеру запрос

В одной и той же транзакции, поди?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517124
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,

UDF есть?

Я до 3.0 SS вообще не использовал. Да и большинство разработчиков тоже.
Сейчас использую 3.0.2 SS в бою полёт нормальный
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517127
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть коннекты к базе, от информационных киосков, которые висят круглосуточно.
Прерываются только когда нужно перезагрузить или выключить сервер, а такое бывает 1-2-3 раза в год.
Киоски не умеют сами делать реконнект, поэтому приходится пихать руками. И поэтому такая оперия не пройдет бесследно.
Но самопроизвольных отвалов киосков у меня нет. Вообще нет.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517130
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл указать что на чем.

Сервер - WinXP на нем FB2.5.1
Клиенты - от WinXP до Win10.

Киоски почти все - на разных линухах, программа написана на Delphi, запускается через Wine.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517131
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И UDF не использую.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517135
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

UDF-ки были, стараемся от них избавляться.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517139
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> UDF есть?

Для селекта времени?

> Сейчас использую 3.0.2 SS в бою полёт нормальный

Это очень полезная инфа для 2.1-2.5, да. :)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517142
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova> UDF-ки были

В том регулярном запросе UDF-ки были?!!
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517143
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvlad, Гаджимурадов Рустам,
есть повод задуматься) была у меня чуйка, что я что-то неправильно делаю с запросами на считывание, если они так накапливаются. Покопаюсь в коде, почитаю книжки))
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517146
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам,

он SS в 2.5 использует. Учитываю что SS < 3.0 мало народа юзает шансов что кто-то отрапортует о баге меньше

авторДля селекта времени?

не поверишь есть и такие экземпляры. Или преобразование времени в строку определённого формата
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517148
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovahvlad, Гаджимурадов Рустам,
есть повод задуматься) была у меня чуйка, что я что-то неправильно делаю с запросами на считывание, если они так накапливаются. Покопаюсь в коде, почитаю книжки))Выполнили запрос на выборку, обработали полученные данные, закрыли запрос, закоммитили транзакцию (именно commit, а не rollback). ВСЁ!
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517150
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaс отладочного сервера (192.168.132.220) подключаюсь к рабочему (192.168.100.97). Я бы проверил железку, соединяющюю эти две подсети.

nnivanovaЕсли с моего компа к любому из двух серверов - разрыв"Мой комп" в какой подсети ?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517154
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devnnivanovahvlad, Гаджимурадов Рустам,
есть повод задуматься) была у меня чуйка, что я что-то неправильно делаю с запросами на считывание, если они так накапливаются. Покопаюсь в коде, почитаю книжки))Выполнили запрос на выборку, обработали полученные данные, закрыли запрос, закоммитили транзакцию (именно commit, а не rollback). ВСЁ!
Страшно. Вдруг уже открытые датасеты (в рамках того же коннекта) где-то закроются.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517158
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гаджимурадов Рустам,

нет UDF -ок там, думаю, в запросах на считывание беда. Они у нас в отдельной функции пришли от другой программы, в коде которой я не особо копалась, а использовала, что есть. А там коммита на запросы считывания вообще нет((
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517160
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvlad,

мой в 132 подсети. Как раз 192.168.132.79 и есть мой IP
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517161
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,

ну учитывая что у него C# где обычно используют отсоединённую модель это вряд ли.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517162
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaА там коммита на запросы считывания вообще нетОтсутствие коммита может накапливать память на сервере, только если читались блобы. Это явно не ваш случай.
Явно закрывайте запросы, или, если это невозможно в .net с его сборщиком мусора, используйте один и тот же запрос повторно.
Речь не о тексте запроса, есс-но :)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517163
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДrdb_devпропущено...
Выполнили запрос на выборку, обработали полученные данные, закрыли запрос, закоммитили транзакцию (именно commit, а не rollback). ВСЁ!
Страшно. Вдруг уже открытые датасеты (в рамках того же коннекта) где-то закроются.Что мешает стартовать выполнение данного запроса в отдельной транзакции?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517167
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДrdb_devпропущено...
Выполнили запрос на выборку, обработали полученные данные, закрыли запрос, закоммитили транзакцию (именно commit, а не rollback). ВСЁ!
Страшно. Вдруг уже открытые датасеты (в рамках того же коннекта) где-то закроются.

Ну так сделай отдельную транзакцию только для выполнения этого запроса - и ничего не закроется.
У меня вообще на каждой форме своя транзакция, а то и не одна. Выполнил, закоммитил.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517172
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devЧто мешает стартовать выполнение данного запроса в отдельной транзакции?Что мешает прочитать сообщения ТСа и увидеть "страшное": C# ?
Что мешает думать, перед тем как флудить в чужой теме ненужными вопросами ?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517175
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,

можно кусок кода на C# который отправляет этот запрос каждые 30 сек?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517180
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hvladЧто мешает прочитать сообщения ТСа и увидеть "страшное": C# ?
Что мешает думать, перед тем как флудить в чужой теме ненужными вопросами ?И что? dotNet FirebirdSQL Provider не позволяет создавать транзакции? Или не позволяет создавать пулы подключений?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517181
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev, с пулами подключений погорячился. Не наш случай.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517182
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hvlad используйте один и тот же запрос повторно.
Речь не о тексте запроса, есс-но :)
Что здесь имеется в виду? FbCommand.ExecuteScalar(); выполнять только?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517183
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

позволяет. И пул подключений там по умолчанию используется. Давай мы не будем гадать на кофейной гуще и посмотрим кусок кода который время считывает
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517184
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaЧто здесь имеется в виду? FbCommand.ExecuteScalar(); выполнять только?Имеется в виду повторное использование prepared запроса.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517185
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сейчас кину код
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517186
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devчччДпропущено...

Страшно. Вдруг уже открытые датасеты (в рамках того же коннекта) где-то закроются.Что мешает стартовать выполнение данного запроса в отдельной транзакции?

Ну, я не знаю, с чем там клиент работает. Может, какой-нибудь универсальный DAC "с одной транзакцией в рамках сессии". С другой стороны, да, даже в этом случае скорее всего можно сделать как надо.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517189
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovahvlad используйте один и тот же запрос повторно.
Речь не о тексте запроса, есс-но :)
Что здесь имеется в виду? FbCommand.ExecuteScalar(); выполнять только?Имеется в виду создать препарированный запрос и выполнять его многократно.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517190
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисrdb_dev,

позволяет. И пул подключений там по умолчанию используется. Давай мы не будем гадать на кофейной гуще и посмотрим кусок кода который время считываетДа чот hvlad передо мной тут какой-то хорор сценарий расписывает. :)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517191
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devhvladЧто мешает прочитать сообщения ТСа и увидеть "страшное": C# ?
Что мешает думать, перед тем как флудить в чужой теме ненужными вопросами ?И что? dotNet FirebirdSQL Provider не позволяет создавать транзакции? Или не позволяет создавать пулы подключений?Каким боком отдельная тр-ция позволит не накапливать незакрытые запросы ?
При чём тут вообще тр-ции ?
Вкл моск, плс
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517192
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devСимонов Денисrdb_dev,

позволяет. И пул подключений там по умолчанию используется. Давай мы не будем гадать на кофейной гуще и посмотрим кусок кода который время считываетДа чот hvlad передо мной тут какой-то хорор сценарий расписывает. :)
Это я виноват. :(
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517193
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
string sql = "select current_timestamp from rdb$database";

public static void ConnectReader(object sender, EventArgs e)
        {
            FbCommand c = new FbCommand(sql, DbCommon.Dtb);
            Object obj = null;
            try
            {               
                obj = c.ExecuteScalar();
                // если выполнилось ExecuteScalar, значит есть связь с БД                
                if (obj != null)
                    DbCommon.CurrentDateTimeDb = DateTime.Parse(obj.ToString());
            }
            catch (Exception exc)
            {               
            }
        }
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517195
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev,

потому что ты экстраполируешь свои знания Delphi на C#, хотя с последним похоже никогда не работал
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517204
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova> FbCommand c = new FbCommand(sql, DbCommon.Dtb);

Вот собсно про это и говорит Влад.
Хотя у меня всё равно сомнения, что
просто запросы, даже 2 в минуту,
могут накопиться до 8гиг за день,
даже при 200 коннектах.

Там ведь и обычных прикладных
запросов тьма должна быть.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517205
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Дениспотому что ты экстраполируешь свои знания Delphi на C#, хотя с последним похоже никогда не работалВообще забыл, что такое Delphi. С++ наше фсё! :)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517212
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanova,

если не использовать prepare а пересоздавать команду заново, то лучше использовать конструкцию using, которая автоматически вызывает dispose при выходе из блока. Да и ещё если соединения нет, то c.ExecuteScalar() врядл и вернёт null тут скорее Exception будет

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
string sql = "select current_timestamp from rdb$database";

public static void ConnectReader(object sender, EventArgs e)
{
   using(FbCommand c = new FbCommand(sql, DbCommon.Dtb)) 
   {
     try
     { 
        Object obj = c.ExecuteScalar();
        // если выполнилось ExecuteScalar, значит есть связь с БД
        DbCommon.CurrentDateTimeDb = DateTime.Parse(obj.ToString());
     }
     catch (Exception exc)
     {
        // тут надо либо отрапортовать об ошибке, либо восстановить коннект 
     }
   }
}



Если же надо препарировать запрос и использовать многократно, то тебе нужно сделать специальную функцию конструктор которая возвращает сингелтон подготовленного запроса. Как то так
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517218
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devСимонов Дениспотому что ты экстраполируешь свои знания Delphi на C#, хотя с последним похоже никогда не работалВообще забыл, что такое Delphi. С++ наше фсё! :)
Ну, "на плюсах"-то точно иксцепшны никто так не глотает:
Код: c#
1.
2.
3.
catch (Exception exc)
{ 
}

? :)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517225
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

в catch и был вызов окна переподключения.
Попробовала создать функцию считывания данных с коммитом транзакции по завершению. В системной таблице MON$STATEMENTS все запросы сохраняются, пока пользователь не закроет соединение. Я не правильно понимаю, или в MON$STATEMENTS накапливаются активные запросы. Почему после коммита они не удаляются?
Код: 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.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
private void LoadData()
        {
            try
            {
                FbTransaction t = DbCommon.Dtb.BeginTransaction(FbTransactionOptions.ReadCommitted);

                Cursor = Cursors.WaitCursor;
                dt.Clear();

                string filter = string.Empty;

                if (gluProject.EditValue is int && (int)gluProject.EditValue > 0)
                    filter = " and v268.sparent = " + (int)gluProject.EditValue;

                // если обе даты из контрола есть, фильтруем по ним
                // иначе это сброс фильтра, не применяем вообще
                if (!btFilter.GetNullDates())
                    // фильтр по фактической дате начала трудозатрат
                    filter += string.Format(" and ((v276f.sda1 between '{0}' and '{1}') or v276f.sda1 is null)",
                                         btFilter.GetDateStart().ToShortDateString(),
                                         btFilter.GetDateEnd().ToShortDateString());

                // считаем данные
                using (FbDataAdapter da = new FbDataAdapter(string.Format(sqlLoad, filter), DbCommon.Dtb))
                {
                    da.SelectCommand.Transaction = t;
                    da.Fill(dt);
                }

                t.Commit();
                DbCommon.Dtb.Close();
            }
            catch (Exception exc)
            {
                MessageBoxForLog.ShowError(exc, Errors.ErrReadData, false);
            }
            finally
            {
                Cursor = Cursors.Default;
            }
        } ~-+2219446+-~
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517227
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДНу, "на плюсах"-то точно иксцепшны никто так не глотает:
Код: c#
1.
2.
3.
catch (Exception exc)
{ 
}

? :)
Да, там это делают иначе:
Код: plaintext
1.
catch (...) {}

:)
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517233
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не придираемся) в catch код удалила просто:
Код: c#
1.
2.
3.
4.
5.
6.
catch (Exception exc)
            {
                // такая ошибка означает проблемы соединения с сервером
                if (exc.Message.ToLower().Contains("connection")) 
                    ActivTimerFm.Open();
            }
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517254
nnivanova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdb_dev а на своём компе, ради эксперимента, в свойствах сетевого адаптера попробуйте запретить управление питанием (снять галочку с "Разрешить отключение этого устройства для экономии энергии").
попробовала, не помогло(( два часа-разрыв.
Пришел сисадмин, послушал, подумает по счет оборудования сети. Как понимаю, это на долго и может быть безрезультатно. Буду писать запрос на проверку соединения по таймеру, учитывая все ваши советы)
Спасибо еще раз всем!
Остался лишь вопрос касаемо таблицы MON$STATEMENTS - почему в нем копятся запросы.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517264
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaОстался лишь вопрос касаемо таблицы MON$STATEMENTS - почему в нем копятся запросы.Потому что клиент их не удаляет.
См 20778031
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517338
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nnivanovaПришел сисадмин, послушал, подумает по счет оборудования сети. Как понимаю, это на долго и может быть безрезультатно.

с полгода назад кто-то писал тут, что что пресловутый лимит keep-alive обнаружил в каком-то сетевом железе. Только там было 30 минут настроено. И точно так же бегали в поисках "кто же рвет соединения".
Вообще правильно Рустам сказал, что топик бесперспективный. Эти обрывы могут инициироваться keepalive, клиентами прокси, firewall, антивирусами, кривым сетевым софтом (откуда лезет много 10054), помехами в сети, оборудованием, и т.д.
Единственная польза - если вы найдете-таки источник, и укажете его тут.

nnivanovaОстался лишь вопрос касаемо таблицы MON$STATEMENTS - почему в нем копятся запросы.
видимо, потому что приложение эти запросы не закрывает. В некоторых системах наблюдал до 100 раз больше запросов, не привязанных к транзакциям, чем привязанных и выполняемых. Типа, 100 соединений выполняют 90 запросов, а незакрытых запросов около 10 тысяч.
К примеру
FbCommand c = new FbCommand(sql, DbCommon.Dtb)
явно же создается новый объект с запросом, который освобождается ... ГДЕ? Типа, сборщик мусора C# КОГДА-НИБУДЬ его освободит? Лет через 10?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517361
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvс полгода назад кто-то писал тут, что что пресловутый лимит keep-alive обнаружил в каком-то сетевом железе. Только там было 30 минут настроено. И точно так же бегали в поисках "кто же рвет соединения".О чем и речь! Неизвестно, какой алгоритм использует программа контроллера сетевой карты при переходе в энергосберегающий режим и на сколько корректно этот контроллер обрабатывает keepalive, работая на 3-ем уровне модели OSI, если в нем реализован подобный механизм.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517369
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_devНеизвестно, какой алгоритм использует программа контроллера сетевой карты при переходе
там речь шла про какой-то умный маршрутизатор или свитчер или что-то такое, не про сетевые карты.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517383
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов РустамP.S. Закройте топик, плиз, всё равно уже бестолку.
kdvЕдинственная польза - если вы найдете-таки источник, и укажете его тут.
Рустам, может ты немного сбавишь обороты? Дай барышне решать СВОЮ проблему в том ритме, который ей нравится. Препирательства с rdb_dev я зачищу.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517387
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис> Автор свою проблему ещё не решил

Можно делать ставки, что и не найдёт причину (отвала коннектов).

Но да, было бы интересно узнать, если вдруг случится чудо.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517388
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: Обвести красной рамочкой? rdb_dev, тебе тоже персональное уведомление надо?
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517392
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvтам речь шла про какой-то умный маршрутизатор или свитчер или что-то такое, не про сетевые карты.Принципиальной разницы нет. Сейчас некоторые сетевухи даже на ARP/NS запросы отвечают, при том, что ЦП находится в C3.
...
Рейтинг: 0 / 0
Разрыв пользовательского соединения через 2 часа
    #39517396
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_PisarevskyМодератор: Обвести красной рамочкой? rdb_dev, тебе тоже персональное уведомление надо? Тыж заметил, что я публиканул раньше твоего предупреждения?
...
Рейтинг: 0 / 0
144 сообщений из 144, показаны все 6 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Разрыв пользовательского соединения через 2 часа
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]