Genius 0 Posted 2007-11-28 21:54:43 Share Posted 2007-11-28 21:54:43 Дело не в приходе данных, для быстрой и простой проверки проблемы достаточно просто первести системные часы во время работы stg, время в биллинге у меня остается старым. Link to post Share on other sites
Max 0 Posted 2007-11-29 07:21:50 Share Posted 2007-11-29 07:21:50 ни нетфлоу ни радиус тут не причём. Link to post Share on other sites
stg-34 0 Posted 2007-11-29 07:50:21 Share Posted 2007-11-29 07:50:21 В общем все дружно пришли к выводу, что этого быть не может Link to post Share on other sites
nallien 3 Posted 2007-11-29 07:54:51 Share Posted 2007-11-29 07:54:51 оу, сорри, по моей проблеме (падение с сегментацией) - моя беда ( каким-то образом в /sbin/ была не относительная ссылка а бинарный файл.... вот еще если кто подскажет в чем я тут не прав: sgconf: symbol lookup error: //usr/lib/stg/libstg_common.so: undefined symbol: stgTime конфигуратор из той же сборки, библиотека указаная в ошибке - тоже.... собраный с дебагом или без - выдает такую же ошибку.... Link to post Share on other sites
madf 279 Posted 2007-11-29 10:58:03 Share Posted 2007-11-29 10:58:03 Сборка последняя выложенная в этой теме, собрана в debug`е Вот и ответ. В обычном режиме внутренний таймер stg постоянно (раз в секунду) синхронизируется с системными часами. В отладочном - просто инкрементируется на 1 секунду раз в секунду. Если все-таки есть насущная потребность в работе stg в отладочном режиме замените в файле stg_timer.cpp строчку (14) # define STG_TIMER_DEBUG (1) на # undef STG_TIMER_DEBUG Link to post Share on other sites
madf 279 Posted 2007-11-29 11:03:40 Share Posted 2007-11-29 11:03:40 вот еще если кто подскажет в чем я тут не прав: sgconf: symbol lookup error: //usr/lib/stg/libstg_common.so: undefined symbol: stgTime конфигуратор из той же сборки, библиотека указаная в ошибке - тоже.... собраный с дебагом или без - выдает такую же ошибку.... Да, такая проблема есть. Установка на одной машине и сервера и консольного конфигуратора пока невозможна. Если все-таки есть необходимость - соберите КК без установки и запускайте из каталога сборки с указанием LD_LIBRARY_PATH=../../lib Можете пока обвернуть это в скрипт чтобы не прописывать переменную постоянно. Думаю, в скором времени проблема будет решена Link to post Share on other sites
nallien 3 Posted 2007-11-29 11:59:07 Share Posted 2007-11-29 11:59:07 аха, спасибо ) сделал как сказал - в консоль говорит ОК - но сообщение не идет (( (собран без дебага, может он всегда ок говорит )))) и вопросик еще в догонку, нет ли проблем в связке последнего сервера (2.4-2007.10.28-22.18.50) с графическим конфигуратором 1.88.9 ? мне показалось что при удалении\создании нового пользователя он ругается двумя пустыми окошками с ошибками (без содержимого) и падает без следов в логах, все в отладочном режиме..... (читаем ниже), при опреациях в конфигураторе - вуаля - повторяющаяся ошибка "Invalid pointer operator" (по памяти не уверен что именно так), и начинают твориться оч не хорошие вещи. впрочем после перезапуска и добавления пользователя - проблема не повторилась. вечерком возьмусь посеръезней подергать его. выпала свободная минутка раньше, падений при добавлении пользователя нет (хотя иногда конфигуратор пучит и пердолит - что уверяет меня что используемая нами версия - 1.88.9 частично не совместима с этим сервером), при удалении пользователя (как и в ранних сборках в этой веке) - сервер падает (в конфигураторе - recv data answer error), в логах - шиш (проверял так - создаю пользоватля - все ок, удаляю - вылетает сервер): rsconf.cpp > 00:50:19 > RecvHdr - ok buf = SG04 sizeof(STG_HEADER) = 4 configproto.cpp > 00:50:19 > ParseXMLStart configproto.cpp > 00:50:19 > Start parser.cpp > 00:50:19 > PARSER_GET_SERVER_INFO::ParseStart configproto.cpp > 00:50:19 > Start parser.cpp > 00:50:19 > PARSER_GET_USERS::ParseStart configproto.cpp > 00:50:19 > Start configproto.cpp > 00:50:19 > Start parser.cpp > 00:50:19 > PARSER_CHG_USER::Reset() parser.cpp > 00:50:19 > PARSER_CHG_USER::Reset() DEL USR ===================== parser.cpp > 00:50:19 > PARSER_CHG_USER::ParseStart el = DelUser depth = 1 parser.cpp > 00:50:19 > PARSER_CHG_USER::Reset() parser.cpp > 00:50:19 > PARSER_CHG_USER::Reset() DEL USR ===================== configproto.cpp > 00:50:19 > Start parser.cpp > 00:50:19 > PARSER_ADD_USER::ParseStart el = DelUser depth = 1 configproto.cpp > 00:50:19 > Start parser.cpp > 00:50:19 > PARSER_DEL_USER::ParseStart el = DelUser traffcounter.cpp > 00:50:19 > DelUser: buratino Ошибка сегментирования и все так же отправка сообщений с КК, в консоль говорит ок - но сообщение не приходит: rsconf.cpp > 00:30:26 > Connection accepted from 127.0.0.1 rsconf.cpp > 00:30:26 > RecvHdr - ok buf = SG04 sizeof(STG_HEADER) = 4 configproto.cpp > 00:30:26 > ParseXMLStart configproto.cpp > 00:30:26 > Start parser.cpp > 00:30:26 > PARSER_GET_SERVER_INFO::ParseStart configproto.cpp > 00:30:26 > Start parser.cpp > 00:30:26 > PARSER_GET_USERS::ParseStart configproto.cpp > 00:30:26 > Start configproto.cpp > 00:30:26 > Start parser.cpp > 00:30:26 > PARSER_CHG_USER::Reset() parser.cpp > 00:30:26 > PARSER_CHG_USER::Reset() DEL USR ===================== parser.cpp > 00:30:26 > PARSER_CHG_USER::ParseStart el = SetUser depth = 1 parser.cpp > 00:30:26 > PARSER_CHG_USER::SetUser - OK configproto.cpp > 00:30:26 > ParseXMLStart parser.cpp > 00:30:26 > PARSER_CHG_USER::ParseStart el = login depth = 2 parser.cpp > 00:30:26 > PARSER_CHG_USER::ParseEnd el = login depth = 2 parser.cpp > 00:30:26 > PARSER_CHG_USER::ParseEnd el = SetUser depth = 1 parser.cpp > 00:30:26 > upCount=0 downCount=0 parser.cpp > 00:30:27 > <SetUser result="ok"/> configproto.cpp > 00:30:27 > currParser == NULL rsconf.cpp > 00:30:27 > End was detected rsconf.cpp > 00:30:27 > ReciveSendConf close rsconf.cpp > 00:30:27 > CONFIGPROTO: Ready to accept не изменились ли права необходимые для отправки сообщения в 2,4 версии? если ставлю ему права на "статистика и деньги" + "параметры пользователя" то получаю то же самое Link to post Share on other sites
madf 279 Posted 2007-11-29 14:06:03 Share Posted 2007-11-29 14:06:03 аха, спасибо ) сделал как сказал - в консоль говорит ОК - но сообщение не идет (( (собран без дебага, может он всегда ок говорит )))) Соберите последнюю версию КК (КК есть в сорсах выложенных в теме). Бага с отправкой сообщений была. Она исправлена (правда, не уверен, ч в лежащих тут сорсах исправленная версия . Link to post Share on other sites
nallien 3 Posted 2007-11-30 07:59:40 Share Posted 2007-11-30 07:59:40 не могу найти, перелазил и по форуму, и в этой ветке сырцы подбирал - из трех обнаруженых сборок - ни в одной отправка сообщений не работала... подскажите ссылочку будь-ласка Link to post Share on other sites
Genius 0 Posted 2007-11-30 21:14:46 Share Posted 2007-11-30 21:14:46 Спасибо за подсказку фикса со временем в debug режиме. Возникла еще одна ошибка при переходе на новый месяц 1го числа: Модуль FB, статистика по новому месяцу вроде добавилась корректно, а вот по старому при этому сохранилась неправильно, а именно: stats_date = 31.10.0107 получился, при том что должен был быть 30.11.2007 Новая статистика как и должна была создалась 12.01.2007 Link to post Share on other sites
nallien 3 Posted 2007-12-01 08:36:17 Share Posted 2007-12-01 08:36:17 при переходе на новый месяц - пух.... упал, тарифы ни один не снялся, трафик не обнулился... собран в дебаге - ничего в логах нет. при падении - само собой - таблички файрвола не сбросились. .... ужас.... и все потому что я не дочитал о особенности стг собраного с дебагом.... без дебага сделел ему машину времени (date -s yesterday) и все ок ) но напужались сильно ) ах да не все ок, еще с прошлого месяца остался непофикшенный баг: если пользователь выбирает у себя в статистике какой-то тариф, он в ступает в силу, начисляется правильное количество бесплатных МБ, но ! со счета снимается абонплата равная предыдущему атрифу. ака был тариф 20, человек выбрал 60. ему начислилось бесплатных мб по тарифу 60, но снялось 20 единиц.... при изменении дополнительных полей, или полей адреса, имени (строчные параметры кирилицей) - периодическое падпние сервера.... на протяжении часа два падения, без операци в конфигураторе.... ни одной записи ни в логах, ни в консоль при запущеном дебагере с выводом в оную.... в общем, мне кажется что до релиза еще оч далеко ( рока ниодна сборка на форуме ветки 2,4 не работала стабильно даже с базовыми операциями (удаление пользователя)... надеемся и ждем. Link to post Share on other sites
madf 279 Posted 2007-12-02 15:02:58 Share Posted 2007-12-02 15:02:58 При описании багов - указывайте, пожалуйста, операционную систему. Это важно. При падении stg очень желательно получить файл корки - это поможет быстро локализовать и исправить баг. И еще - указывайте точную версию сборки, а не просто "последняя на форуме". Там же в имени архива и каталога с сорсами указана дата и время. Link to post Share on other sites
madf 279 Posted 2007-12-02 15:10:47 Share Posted 2007-12-02 15:10:47 ...Модуль FB, статистика по новому месяцу вроде добавилась корректно, а вот по старому при этому сохранилась неправильно, а именно: stats_date = 31.10.0107 получился, при том что должен был быть 30.11.2007 ... Спасибо, fixed Link to post Share on other sites
Watson 0 Posted 2007-12-03 10:10:09 Share Posted 2007-12-03 10:10:09 При работе последней сборки(2.4-2007.10.28-22.18.50) и конфигуратора-1.88.9 проявился небольшой баг.При добавлении юзера с деньгами, админом с ограниченными пправами(Параметры пользователя, Добавлять-удалять пользователя) выскакивает ошибка "Unexpectet token" денег на счет не добавляет.При таких же параметрах админа в версии 2.0.16 такого не наблюдал.У когото было так или это ошибка была с правами в версии 2.0.16?? OS Alt 4.0 server x86_64 Link to post Share on other sites
nallien 3 Posted 2007-12-03 13:57:59 Share Posted 2007-12-03 13:57:59 описаные выше баги - сборка 2.4-2007.10.28-22.18.50, что в этой теме, корку сделать выдет только ближе к концу месяца ( ОС - федора 4) Link to post Share on other sites
vovksextra 0 Posted 2007-12-03 14:16:56 Share Posted 2007-12-03 14:16:56 так как ряд багов возникает при работе конфигуратора, я предлагаю, перед передачей пакета в виде XML структуры на сервер (перед вызовом Trans ) записывать ее в некий лог в читабельном виде. При возникновении бага - достаточно отправить эту структуру разработчику и ему будет нагляднее видно что отправляется и как с этим бороться. например, я могу в адресе пользователя написать адрес: "/> и снова баг ))) Link to post Share on other sites
madf 279 Posted 2007-12-03 18:14:30 Share Posted 2007-12-03 18:14:30 я могу в адресе пользователя написать адрес: "/> и снова баг ))) Не подтверждается. Вбивал - все нормально работает. Link to post Share on other sites
vovksextra 0 Posted 2007-12-03 19:46:04 Share Posted 2007-12-03 19:46:04 ладно.вбей в поле пароль "/><t = 45 и повтори эту же строчку ))) подтверждается - сервер отрапортавал об ошибке в парсинге строки можно посидеть и придумать строчку, которая положит сервер. )))) проверяй еще раз Link to post Share on other sites
madf 279 Posted 2007-12-04 10:26:18 Share Posted 2007-12-04 10:26:18 Да, если такое вбить в поле пароля сервер его не приймет. Парсер скажет что-то вроде "no element found". Но сервер при этом не падает. (Запишем'c: "добавить кодирование строковых полей" Если у тебя есть набор символов для какого-нибуть поля, которое вызывает падение сервера - скажи плиз. Link to post Share on other sites
vovksextra 0 Posted 2007-12-04 11:09:48 Share Posted 2007-12-04 11:09:48 Если поссмотреть на код if (newud.phone != ud.phone) { WinToKOI(s_koi, newud.phone.c_str(), PHONE_LEN); char enc[PHONE_LEN * 2 + 1]; Encode12(enc, s_koi); sprintf(str, "<phone value=\"%s\"/>", enc); request.push_back(str); } тогда можно для той-же строки ("/><t = 45) или еще какой нибудь деструктивной сделать Decode21 сделать KOIToWin и вписать в поле и будет тоже самое это я о чем. раз коды открыты и у пользователя есть инструмент доступа к серверной части, то не мешало-бы обезопасить сервер от подобный деяний а искать строчку нету смысла))) можно просто на любой машине открыть сокет outerSocket := socket(PF_INET, SOCK_STREAM, 0); организовать посылку данных в сокет и все, конфигуратор у админа не запустится - это точно !!! Возможно и завалится сервер Link to post Share on other sites
madf 279 Posted 2007-12-04 11:44:35 Share Posted 2007-12-04 11:44:35 Encode12/Decode21 - это MIME-like кодирование. По этому ты не сможешь сделать Decode21 для произвольной строки. Собсно, эти две функции как раз и делают безопасным любой текст для вставки в XML. Сервер не должен завалиться ни при каких входных данных. Там же идет шифрование и проверка. Так что "левые" запросы будут отсеиваться еще на ранних стадиях. При ошибке сервер со своей стороны закроет соединение и авторизатор получит доступ к серверу. Link to post Share on other sites
vovksextra 0 Posted 2007-12-04 12:12:48 Share Posted 2007-12-04 12:12:48 Сервер не должен завалиться ни при каких входных данных. попробу запустить два конфигуратора с разных машин и одновременно обновить данные !!!!!! по-поводу защиты XML - нужно мне просто сесть потратить свое время и сделать то что ты говришь быть не может. МОЖЕТ ЕЩЕ КАК МОЖЕТ! только давай что-бы это может отобразилось на твоем кармане.ибо сидеть и просто так тебе что-либо доказывать желания нету более.Просто бессмыслица получается и никаких конструктивных решений Link to post Share on other sites
Bolik_Stav 0 Posted 2007-12-22 11:59:08 Share Posted 2007-12-22 11:59:08 как продвигается работа? когда ждать релиза? Link to post Share on other sites
stg-34 0 Posted 2007-12-22 13:03:40 Share Posted 2007-12-22 13:03:40 Работа движется Сейчас мы делаем стрессовые тесты для СТГ. Пока осталась одна проблема, если ее сегодня порешим, то я на пару дней оставлю СТГ под большой нагрузкой - выживет сразу же будет релиз. Про тестирование расскажу более подробно, сразу по окончании. Link to post Share on other sites
Ork Yason 8 Posted 2007-12-22 15:25:16 Share Posted 2007-12-22 15:25:16 кстати, Боря глючок появился недавно не удаляются пользователи т.е. они удаляются, а потом стг ложицца на мертво - дергаем его - подымается -а пользователя не удаляет Link to post Share on other sites
Recommended Posts