MySQLDAC, проблемы connect'a

mich54

Всем привет!Чарсет сервера (5.0) - кои8.чарсет базы - 1251.клиент (написан на билдере 6) по событию after connection шлет серверу пакет необходимых set character set. Все нормально работает. Но канал между клиентом и сервером иногда падает. После его подъема, при sql-запросе со стороны клиента возникает ситуация server has go away . Повторный запрос проходит, но в базу записывается текст в типичной бНОНПНЯ. Т.е. слетают установки на чарсеты. Селекты из базы - та же бнопня. Времени не хватает на исследования. Может, кто на эти грабли наступал и подскажет, как эту хреновину обойти? Чарсет сервера менять нельзя, много завязано. mysqldac - 2.
5 ответов

mich54

а версия у MyDAC какая?


mich54

а версия у MyDAC какая?
Говорит, 2.3.3


mich54

а версия у MyDAC какая?
Похоже, это не Core Lab MyDAC, а MicroOLAP MySQLDAC. В первом случае - могу рассказать, как такая проблема решается.


mich54

[quot Burzum]а версия у MyDAC какая?
Похоже, это не Core Lab MyDAC, а MicroOLAP MySQLDAC. Да, верно. Но, учитывая, что это former MyDAC, у них должно быть много общего.Попробую уточнить.После сообщения "server has go away", повторный запрос из клиента проходит, в логах сервера появляется запись "connect <имярек>@ on " , все работает, но не возникает event "AfterConnect" в объекте TMySQLDataBase. Вследствие этого и проблема - новый коннект, а чарсеты клиента - по умолчанию, т.е. кои8, т.к. установка истинного чарсета - по событию "after connect". Попробую что-нить получить из эвента OnConnectionFailure.


mich54

Похоже, это не Core Lab MyDAC, а MicroOLAP MySQLDAC. В первом случае - могу рассказать, как такая проблема решается.
Владимир, если возможно, про первый случай, пожалуйста, расскажите.У меня такое чувство, что тут все дело в понимании протокола tcp/ip фирмой недоучки из Гарварда. Ибо сервер (юниксоидный) помнит про коннект, о вот со стороны клиента из-под винды - непонятки. Вроде и помнит, раз события AfterConnect не возникает, но, с другой стороны, создает новое соединение без оного события. Ситуацию моделировал выдергиванием сетевого шнурка на секунд 15.Кстати, терминал putty тоже отпадает.