madf 279 Posted 2010-05-05 10:10:31 Author Share Posted 2010-05-05 10:10:31 А, стоп. Неправильно прочитал. А что говорит лог старгейзера при старте? И какое значение прописано в поле version таблицы tb_info? Link to post Share on other sites
shark3d 1 Posted 2010-05-05 11:06:46 Share Posted 2010-05-05 11:06:46 А, стоп. Неправильно прочитал. А что говорит лог старгейзера при старте? И какое значение прописано в поле version таблицы tb_info? billing=# SELECT * FROM tb_info ; version --------- 6 (1 запись) При старте кроме указанных ошибок никаких других не выдает. Рабочие логи по кредитам, но они указанного пользователя (TEST) не касаются... Старт вполне нормальный. Похоже на то, что во время записи сессии в функцию sp_add_session_log_entry не передается последний параметр _reason... Link to post Share on other sites
madf 279 Posted 2010-05-05 13:20:41 Author Share Posted 2010-05-05 13:20:41 А, стоп. Неправильно прочитал. А что говорит лог старгейзера при старте? И какое значение прописано в поле version таблицы tb_info? billing=# SELECT * FROM tb_info ; version --------- 6 (1 запись) При старте кроме указанных ошибок никаких других не выдает. Рабочие логи по кредитам, но они указанного пользователя (TEST) не касаются... Старт вполне нормальный. Похоже на то, что во время записи сессии в функцию sp_add_session_log_entry не передается последний параметр _reason... Ошибку нашел. Спасибо, будет исправлено. Можешь исправить у себя. В файле projects/stargazer/plugins/store/postgresql/postgresql_store_users.cpp в строках 1138-1142 вместо query << "SELECT sp_add_session_log_entry(" "'" << elogin << "', " "CAST('" << Int2TS(stgTime) << "' AS TIMESTAMP), " "'c', CAST('" << inet_ntostring(ip) << "/32' AS INET), 0, 0)"; напиши query << "SELECT sp_add_session_log_entry(" "'" << elogin << "', " "CAST('" << Int2TS(stgTime) << "' AS TIMESTAMP), " "'c', CAST('" << inet_ntostring(ip) << "/32' AS INET), 0, 0, '')"; (т.е. просто добавь пусую строку в качестве последнего параметра). Этот параметр - "причина дисконнекта юзера". В случае коннекта он, естественно, не используется. Link to post Share on other sites
shark3d 1 Posted 2010-05-06 13:12:45 Share Posted 2010-05-06 13:12:45 Исправил, пересобрал, работает. Еще одна проблема, теперь при отключении: 2010-05-06 16:09:23 -- Cannot write disconnect for user TEST. 2010-05-06 16:09:23 -- ERROR: ошибка синтаксиса в или рядом "'not authorized'" at character 122 Link to post Share on other sites
madf 279 Posted 2010-05-07 07:05:06 Author Share Posted 2010-05-07 07:05:06 Исправил, пересобрал, работает. Еще одна проблема, теперь при отключении: 2010-05-06 16:09:23 -- Cannot write disconnect for user TEST. 2010-05-06 16:09:23 -- ERROR: ошибка синтаксиса в или рядом "'not authorized'" at character 122 Oops... Патч: === modified file 'projects/stargazer/plugins/store/postgresql/postgresql_store_users.cpp' --- projects/stargazer/plugins/store/postgresql/postgresql_store_users.cpp 2010-05-05 13:31:27 +0000 +++ projects/stargazer/plugins/store/postgresql/postgresql_store_users.cpp 2010-05-07 07:03:38 +0000 @@ -1238,7 +1238,7 @@ "'" << elogin << "', " "CAST('" << Int2TS(stgTime) << "' AS TIMESTAMP), " "'d', CAST('0.0.0.0/0' AS INET), " - << cash << ", " << freeMb << "'" << ereason << "')"; + << cash << ", " << freeMb << ", '" << ereason << "')"; } result = PQexec(connection, query.str().c_str()); Надо же, оказывается у меня на сервере с PostgreSQL еще старая версия крутится. Не тестировал. Спасибо за терпение. Link to post Share on other sites
shark3d 1 Posted 2010-05-07 17:48:11 Share Posted 2010-05-07 17:48:11 исправил. полет нормальный! Link to post Share on other sites
den68 0 Posted 2010-05-20 11:46:56 Share Posted 2010-05-20 11:46:56 ДАВАЙТЕ мускуль перепишем с дефолтным падает восновном при записи статистики. тот что я переписывал - коряв весьма, лениво начинать сначала, да и в c++ я не сильно силен, синтаксис и решения базируются на чистом c, без плюсов, да и перлом я разбалован напредмет ошибок в коде и последствий ... Link to post Share on other sites
madf 279 Posted 2010-05-20 12:27:00 Author Share Posted 2010-05-20 12:27:00 ДАВАЙТЕ мускуль перепишем с дефолтным падает восновном при записи статистики. тот что я переписывал - коряв весьма, лениво начинать сначала, да и в c++ я не сильно силен, синтаксис и решения базируются на чистом c, без плюсов, да и перлом я разбалован напредмет ошибок в коде и последствий ... Я уже года два зову добровольцев на это благое дело Можно взять за основу плагин к FireBird или PostgreSQL (лучше этот, у него структура базы получше) и переписать. От C++ там будут только методы, а внутри у них можно чистый C использовать. Помощь со своей стороны гарантирую! Link to post Share on other sites
morfey 82 Posted 2010-05-21 06:56:13 Share Posted 2010-05-21 06:56:13 Сі не знаю на стільки, щоб модуль писати, але знаю мускуль, чим можу допомогти?) Link to post Share on other sites
madf 279 Posted 2010-05-21 10:53:59 Author Share Posted 2010-05-21 10:53:59 Сі не знаю на стільки, щоб модуль писати, але знаю мускуль, чим можу допомогти?) Я C++ вивчав в процесі написання модуля mod_store_firebird Там немає нічого складного. Структура модуля описана у BASE_PLUGIN, прикладів реалізації - ціла купа. Link to post Share on other sites
Небесный 26 Posted 2010-05-24 05:11:22 Share Posted 2010-05-24 05:11:22 Скачал, собрал, поставил - без каких либо приколов, пока нормальный полет, да и 406 версия проработала месяц, без каких либо приколов со стороны самого СТЖ. Link to post Share on other sites
Kucher2 122 Posted 2010-05-31 14:33:30 Share Posted 2010-05-31 14:33:30 У меня возник вопрос. Был такой старый глюк СТГ - если в один момент пытаться отправить сообщение нескольким юзерам через консольный конфигуратор, то это приводило к зависанию. Не фиксили это? Link to post Share on other sites
Docent 0 Posted 2010-05-31 15:04:17 Share Posted 2010-05-31 15:04:17 Немного не в тему, но все же: Заметил интересный баг. Если пользователь не отключается от инета а просто закрывает InetAccess то InetAccess пакет на закрытие подлючения не высылает. А по логике должен. Старгайзер просто отпуливает пользователя по таймуту. Версия InetAccess последняя 2,61,8 Link to post Share on other sites
Kucher2 122 Posted 2010-05-31 15:32:01 Share Posted 2010-05-31 15:32:01 Это не баг, такова механика работы клиента. И нормальная реакция СТГ - отзыва нет, значит рубятся правила по таймауту. До этого момента всё равно всё считается, так что траф так воровать не получится. Таймаут опроса клиента указывается в конфиге СТГ. Link to post Share on other sites
Docent 0 Posted 2010-05-31 20:34:40 Share Posted 2010-05-31 20:34:40 Это не баг, такова механика работы клиента. И нормальная реакция СТГ - отзыва нет, значит рубятся правила по таймауту. До этого момента всё равно всё считается, так что траф так воровать не получится. Таймаут опроса клиента указывается в конфиге СТГ. А как по мне, так правильнее было бы при нажатии кнопки выход пользователем, сначала отсылать закрытие соединения а потом делать закрытие приложения. Или сделать это опционально в конфиге. Link to post Share on other sites
madf 279 Posted 2010-06-01 08:37:01 Author Share Posted 2010-06-01 08:37:01 У меня возник вопрос. Был такой старый глюк СТГ - если в один момент пытаться отправить сообщение нескольким юзерам через консольный конфигуратор, то это приводило к зависанию. Не фиксили это? Не знал о таком баге. Это не баг, такова механика работы клиента. И нормальная реакция СТГ - отзыва нет, значит рубятся правила по таймауту. До этого момента всё равно всё считается, так что траф так воровать не получится. Таймаут опроса клиента указывается в конфиге СТГ. А как по мне, так правильнее было бы при нажатии кнопки выход пользователем, сначала отсылать закрытие соединения а потом делать закрытие приложения. Или сделать это опционально в конфиге. Угу, надо на закрытие поставить дисконнект. Добавил в TODO. Link to post Share on other sites
keshaLG 5 Posted 2010-06-14 16:38:50 Share Posted 2010-06-14 16:38:50 .... +STGLIBS = -lstg_common -lstg_crypto ..... тоже самое надо сделать в srvconf.lib LIBS = -lexpat -lstg_crypto иначе консольный конфигуратор ругается: "/usr/local/bin/sgconf: symbol lookup error: //usr/lib64/stg/libsrvconf.so: undefined symbol: _Z13Blowfish_InitP12BLOWFISH_CTXPhi" а при 2м запуске "вешает" сервер и тот "кушает" 100% cpu , но при этом работает Link to post Share on other sites
madf 279 Posted 2010-06-15 07:13:16 Author Share Posted 2010-06-15 07:13:16 .... +STGLIBS = -lstg_common -lstg_crypto ..... тоже самое надо сделать в srvconf.lib LIBS = -lexpat -lstg_crypto иначе консольный конфигуратор ругается: "/usr/local/bin/sgconf: symbol lookup error: //usr/lib64/stg/libsrvconf.so: undefined symbol: _Z13Blowfish_InitP12BLOWFISH_CTXPhi" а при 2м запуске "вешает" сервер и тот "кушает" 100% cpu , но при этом работает Спасибо. Хотя проявляется, видимо, только на биарче. К стати, а как оно может запуститься? Там же undefined symbol! Link to post Share on other sites
keshaLG 5 Posted 2010-06-15 11:55:01 Share Posted 2010-06-15 11:55:01 Спасибо. Хотя проявляется, видимо, только на биарче. К стати, а как оно может запуститься? Там же undefined symbol! чесно - не знаю, первый выдает это, 2й раз - виснет и вешает сервер. Если тоже самое сделать на другой порт (2го модуля) - сервер "отъедает" уже и второе ядро. Link to post Share on other sites
madf 279 Posted 2010-06-15 13:23:40 Author Share Posted 2010-06-15 13:23:40 Спасибо. Хотя проявляется, видимо, только на биарче. К стати, а как оно может запуститься? Там же undefined symbol! чесно - не знаю, первый выдает это, 2й раз - виснет и вешает сервер. Если тоже самое сделать на другой порт (2го модуля) - сервер "отъедает" уже и второе ядро. Нет, ну реально - оно не может запуститься. Может это откуда-то старая версия вылазит? Link to post Share on other sites
keshaLG 5 Posted 2010-06-16 10:20:06 Share Posted 2010-06-16 10:20:06 Нет, ну реально - оно не может запуститься. Может это откуда-то старая версия вылазит? ))) ну зачем мне врать? пишу все как есть PS вот libsrvconf.so либа с которой были проблемы Link to post Share on other sites
madf 279 Posted 2010-06-16 11:57:18 Author Share Posted 2010-06-16 11:57:18 Нет, ну реально - оно не может запуститься. Может это откуда-то старая версия вылазит? ))) ну зачем мне врать? пишу все как есть PS вот libsrvconf.so либа с которой были проблемы Мне этот бинарник все равно ничего не скажет. Но с undefined symbol оно запуститься не может. Не может и все тут. Ну никак. Link to post Share on other sites
keshaLG 5 Posted 2010-06-16 15:02:14 Share Posted 2010-06-16 15:02:14 ))) значит сервер СТГ вещался из-за магнитных бурь или всплеской солнечной активности... чудом совпадающие с вызовом консольного конфигуратора ))) ладно проехали, а по существу вопрос появислся: ребутнули сервер с виртуалками где СТГ живет, и получили: 2010-06-16 17:29:11 -- Storage plugin: 'FATAL: система баз данных стартует видимо база выросла очень...и это 3 дня работы на новой версии только, а будет как Вы говорите в гигах база... СТГ запускатся скриптами из rpm Вопрос: как оптимизировать запуск, что бы такого не было? Скриптом rc.local все по очереди с использование sleep n? Link to post Share on other sites
madf 279 Posted 2010-06-17 06:59:53 Author Share Posted 2010-06-17 06:59:53 ))) значит сервер СТГ вещался из-за магнитных бурь или всплеской солнечной активности... чудом совпадающие с вызовом консольного конфигуратора ))) ладно проехали, а по существу вопрос появислся: ребутнули сервер с виртуалками где СТГ живет, и получили: 2010-06-16 17:29:11 -- Storage plugin: 'FATAL: система баз данных стартует видимо база выросла очень...и это 3 дня работы на новой версии только, а будет как Вы говорите в гигах база... СТГ запускатся скриптами из rpm Вопрос: как оптимизировать запуск, что бы такого не было? Скриптом rc.local все по очереди с использование sleep n? sleep некошерно. А остальное зависит от дистрибутива. Но идея такая: сделать базу зависимостью для Stragazer. Т.е. стартовать его только после полного старта базы. К стати, что за СУБД и на сколько "выросла очень"? У нас за 6 месяцев на серваке с 300/800 примерно 140 Гб занимает. При чем сами данные около 100 Гб, остальное - индексы. И стартует все довольно шустро на не самом быстром железе и не самых быстрых винтах. Link to post Share on other sites
Kucher2 122 Posted 2010-06-17 11:25:46 Share Posted 2010-06-17 11:25:46 В надежде что в этой версии таки не снимается АП с замороженного счёта- поставил её и себе. Всё сделал как обычно, всё работает. Только пришлось sgconf пересобрать (о чудо, в этот раз он собрался без всяких матюков!), т.к. с личной странички юзера вешался php-скрипт, после чего не подключался виндовый конфигуратор и СТГ начинал кушать проц на 50-60%. Большое спасибо. Link to post Share on other sites
Recommended Posts