|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
Здравствуйте. Столкнулся с такой проблемой. В наличии: Win7 + Delphi7 + InterBase7, локальная сеть. Одна машина - сервер, на котором лежит база ESV.GDB. Три клиента. Сервер один раз в минуту обновляет запись в базе (выставляет текущее время сервера). При обновлении происходит событие POST_EVENT. Клиенты получают событие в TIBEvents и обновляют набор данных. Все отлично работает, но только 16 раз. Ровно шестнадцать раз клиенты получают событие от сервера, после чего перестают на него реагировать до перезапуска клиента. Перепробовал множество вариантов, ничего не помогло. Если путь к базе указать в виде HOST:c:\base\esv.gdb то происходит вышеописанное. Если путь к базе указать в виде \\HOST\c:\base\esv.gdb то на самом сервере все работает нормально, но перестают работать (ошибка подключения) клиенты. В чем может быть проблема, и почему именно 16 ? Мозг вывихнул. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 07:36 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
InegeldЗдравствуйте. Сервер один раз в минуту обновляет запись в базе (выставляет текущее время сервера). При обновлении происходит событие POST_EVENT. Клиенты получают событие в TIBEvents и обновляют набор данных. Если не секрет: 1) зачем обновлять текущее время в базе? 2) что мешает клиентам обновлять данные используя к примеру TTimer ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 07:48 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
1) сервер "единое сетевое время" - НАДА(О) 2) пока так и делаю (пичаль), но это не отменяет непонятного (для меня) поведения связки post_event и tibevents. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 07:53 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
InegeldВ чем может быть проблема, и почему именно 16 ? Вероятнее всего - баг в TIBEvent или приложении. Если, конечно, у тебя не Interbase 7.0. Тогда это баг ещё и в нём. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 13:10 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
IB 7.1 Багов быть не должно. Чертовщина, однако... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 17:49 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
InegeldБагов быть не должно. "Уже смешно." (с) Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.11.2016, 17:53 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
"Если компилятор не нашел ошибок в вашей программе, значит ошибки в самом компиляторе"... Ясно, помощи можно не ждать, видимо проблема слишком специфична. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2016, 06:20 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
Inegeld, Можно сменить компонент TIBEvents - например на какой-либо из этих http://www.ibase.ru/d_alerts/ Если не поможет, попробовать на другой версии сервера - взять FB 2.5.x Если тоже не поможет, кинуть сюда готовый тесткейс - может быть кто-нибудь попробует на другой версии Delphi (я бы мог проверить на XE-7) С уважением, Polesov. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2016, 10:38 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
Inegeld, вообще-то, магическое число 16 - это количество разных эвентов, которые способен принимать компонент eventalerter. Общее количество ограничено быть не должно. Проверьте, чтобы IBX у вас был самый свежий. InegeldЕсли путь к базе указать в виде \\HOST\c:\base\esv.gdb это netbeui/netbios, не надо его указывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2016, 11:38 |
|
Win7 + Delphi7 + InterBase7 = вывих мозга
|
|||
---|---|---|---|
#18+
Inegeld1) сервер "единое сетевое время" - НАДА(О)Единое сетевое время делается совсем иными средствами. Обычно, для этого используется ntp сервер, службы которого есть как в Linux, так и в Windows. При желании, через ГЛОНАСС приемник можно синхронизироваться по времени со спутниками ГЛОНАСС, которые, в свою очередь, синхронизированы с атомными часами и даже получать от этого приемника PPS сигнал начала секунды, который может быть использован в некоторых реализациях ntp сервера. Но ленивые могут просто настроить синхронизацию с каким-нибудь источником времени в интернете, например с сервером ФГУП ВНИИФТРИ . Если в сети используется MS AD, достаточно синхронизировать с источником времени только контроллер домена, а входящие в домен клиенты времени, будут синхронизироваться с часами на контроллере домена автоматически. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.11.2016, 16:10 |
|
|
start [/forum/topic.php?fid=40&msg=39341419&tid=1561859]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 135ms |
0 / 0 |