Перейти к содержимому

Новая сборка СТГ 2.4


Рекомендованные сообщения

По материалам тем http://local.com.ua/forum/index.php?showtopic=9355 и http://local.com.ua/forum/index.php?showtopic=9621

 

Предрелизная сборка с максимальным исправлением ошибок.

 

Сборка находится здесь: http://stg.dp.ua/download/server/2.404.9.7...404.9.7.src.tgz

 

Что исправлено/изменено/добавлено:

 

1. Новая система сборки. Скрипт build выполняет функции аналогичные

configure в autotools и запускает make. При запуске без параметров

конфигурирует сборку релиза: без вывода лога и в режиме дэмона. При этом

включается оптимизация -O2. С параметром debug (./build debug) создается

отладочная сборка: с выводом консольного лога и без перехода в режим

дэмона. Оптимизация не включается. build проверяет наличие библиотеки

expat - без нее сборка не произойдет. Так же он проверяет наличие

библиотеки fbclient. Если она будет найдена - в дополнение к файловому

модулю собирается модуль Firebird. После одного запуска скрипта можно

дальше собирать простым запуском make. Параллельная сборка (с ключем

-j<num> для make) подерживается. make libs - сборка библиотек без сборки

сервера. make plugins - сборка плагинов без сборки сервера.

2. Установка. Скриптов install* больше нет. Установка происходит после

сборки вызовом

make install - устанавливает бинарники, базу и конфиги;

make install-bin - устанавливает только бинарники;

make install-data - устанавливает только базу и конфиги.

3. Удаление. Аналогично make install только unistall

(uninstall/uninstall-bin/uninstall-data)

4. Конфигурирование сборки/установки. До запуска ./build можно поправить

переменные в заголовке скрипта. После запуска ./build - переменные в

файле Makefile.conf, находящемся в самом корневом каталоге сборки.

Описание параметров конфигурирования будет потом в документации к релизу.

5. Пофикшены все известные баги firebird (в т.ч. невозможность создания

пользователей/админов/тарифов начинающихся с буквы z), добавлено

экранирование всех текстовых параметров (теперь можно использовать

скобки/кавычки/слеши и т.д.), слегка улучшена производительность модуля,

часть логики вынесена в хранимые процедуры (доступно инкрементное

обновление базы с помощью скрипта projects/stargazer/inst/var/inc.sql),

free_mb теперь имеет правильный тип. В таблицы заносятся временные метки

от сервера, а не 'now' от СУБД (проблемы при различных timezone для stg

и Firebird). Пофикшен баг с DayFee = 0 и DayResetTraff = 0. Раньше при

таких параметрах абонка вобще не снималась и трафик не сбрасывался.

Теперь при 0 снятие/сброс происходит в последний день месяца (например,

с 30 на 31 число в 00:00).

6. Начато добавление патчей для поддержки модулей от Max (mysql,

netflow, etc.) "из коробки". Сейчас изменено поле длины пакета в

raw_ip_packet.h - с 16 на 32 бита для поддержки netflow.

7. Для разработчиков. Внимание! Изменена структура PRIV с правами

админа. Теперь это не битовые поля а uint32_t-поля. В связи с этим

изменения затронули модуль Firebird и модуль конфигуратора.

 

Дополнительная инфа к сборке: теперь все зависимости библиотек и модулей

прописаны в самих библиотеках и модулях, а не разрешаются при линковке к

ядру (из дискуссии отсюда: http://local.com.ua/forum/index.php?act=ST&f=4&t=9466 и патчей для ALT

Linux).

 

Update 12/10/2k7:

 

* stg_timer.cpp - fixed

* convertor - fixed and improoved

* rscriptd building - fixed

* sgconf - included

* passive time for users - startup setting fixed

* userConf & userStat admin flags - fixed

* sgconf sending messages - fixed

 

Просьба отписываться только по обнаруженным ошибкам, все остальные посты будут удаляться.

Ссылка на сообщение
Поделиться на других сайтах
  • Ответы 545
  • Created
  • Последний ответ

Top Posters In This Topic

1. забыли КК в дистрибутив добавить

2. конвертатор ни в какую не желает работать, натужно думает и вываливается без единого сообщение - база пустая

Ссылка на сообщение
Поделиться на других сайтах
1. забыли КК в дистрибутив добавить

2. конвертатор ни в какую не желает работать, натужно думает и вываливается без единого сообщение - база пустая

1. КК можно взять от прошлого релиза. Исправление ошибок по КК в процессе.

2. Правильно ли настроены ли конфиги в папках file и firebird ?

Ссылка на сообщение
Поделиться на других сайтах

При установке данной версии обнаружился следущий баг со временем:

Привожу логи запуска:

 

2007-10-12 14:24:05 -- Stg v. Stg 2.403b

2007-10-12 14:24:05 -- Message queue created successfully. msgKey=5555 msgID=98304

2007-10-30 23:57:00 -- Timer thread started successfully.

2007-10-30 23:57:00 -- Storage plugin: file_store v.1.02. Loading successfull.

2007-10-30 23:57:00 -- Users started successfully.

2007-10-30 23:57:00 -- Traffcounter started successfully.

2007-10-30 23:57:00 -- Module: 'Ether_cap v.1.0'. Start successfull. 10

2007-10-30 23:57:00 -- Module: 'InetAccess authorizator v.1.1'. Start successfull. 50

2007-10-30 23:57:00 -- Module: 'Always Online authorizator v.1.0'. Start successfull. 70

2007-10-30 23:57:00 -- Module: 'Pinger v.1.01'. Start successfull. 100

2007-10-30 23:57:00 -- Module: 'Stg configurator v.0.05'. Start successfull. 220

2007-10-30 23:57:00 -- Stg started successfully.

2007-10-30 23:57:00 -- +++++++++++++++++++++++++++++++++++++++++++++

 

т.е. начинает запускаться с нормальным временем, затем он начинает писать хз выдуманную дату и время, в то время как на сервере время нормальное, т.е. не меняется.

Ссылка на сообщение
Поделиться на других сайтах

В stg_timer.cpp объявлен debug времени для запуска за 3 минуты до конца месяца, видимо забыли убрать.

Замените строчку

#define STG_TIMER_DEBUG (1)

в самом начале этого файла на

//#define STG_TIMER_DEBUG (1)

 

и все будет нормально.

Ссылка на сообщение
Поделиться на других сайтах

Обновлена сборка:

 

* stg_timer.cpp - fixed

* convertor - fixed and improoved

* rscriptd building - fixed

* sgconf - included

* passive time for users - startup setting fixed

* userConf & userStat admin flags - fixed

* sgconf sending messages - fixed

 

http://www.rapidshare.ru/428932

 

Более подробное описание - позже.

Ссылка на сообщение
Поделиться на других сайтах
Обновлена сборка:

[skip]

http://www.rapidshare.ru/428932

Попытка собрать на x86_64:

g++ -c traffcounter.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX

g++ -c user.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX

g++ -c user_property.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX

user.cpp: In member function 'int USER::AddMessage(STG_MSG*)':

user.cpp:1325: internal compiler error: in reg_or_subregno, at jump.c:2015

Please submit a full bug report,

with preprocessed source if appropriate.

See <URL:http://bugzilla.altlinux.ru/> for instructions.

g++ -c users.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX

g++ -c plugin_runner.cpp -O2 -Wall -I /usr/src/RPM/BUILD/stg-2.4-2007.10.12-15.36.05/projects/stargazer/../../include -DLINUX

Preprocessed source stored into /usr/src/tmp/cc72iUNW.out file, please attach this to your bugreport.

gmake: *** [user.o] Error 1

gmake: *** Waiting for unfinished jobs....

Ссылка на сообщение
Поделиться на других сайтах
Preprocessed source stored into /usr/src/tmp/cc72iUNW.out file, please attach this to your bugreport.

Ой, забыл совсем:

http://fly.osdn.org.ua/~drool/stargazer/cc72iUNW.out.tar.bz2

Ссылка на сообщение
Поделиться на других сайтах
user.cpp:1325: internal compiler error: in reg_or_subregno, at jump.c:2015

Please submit a full bug report,

with preprocessed source if appropriate.

See <URL:http://bugzilla.altlinux.ru/> for instructions.

...

Preprocessed source stored into /usr/src/tmp/cc72iUNW.out file, please attach this to your bugreport.

gmake: *** [user.o] Error 1

gmake: *** Waiting for unfinished jobs....

Внутренняя ошибка компилятора. Интересно, какая версия gcc?

Багрепорт не нам, а разработчика gcc :)

Ссылка на сообщение
Поделиться на других сайтах
Внутренняя ошибка компилятора. Интересно, какая версия gcc?

gcc4.1-4.1.1-alt11

Ошибка воспроизводится стабильно. Грешить на багу компилятора сложно, так как им собран 3-й по количеству пакетов в мире репозиторий.

 

P.S. У кого-нибудь на каком-то дистрибутиве старгайзер собрался для ванильного x86_64, не считая биарч?

Ссылка на сообщение
Поделиться на других сайтах

Internal compiler error - внутренняя ошибка компилятора.

Кусочек кода, на который он ругнулся не менялся уже довольно давно.

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

Ссылка на сообщение
Поделиться на других сайтах
Кусочек кода, на который он ругнулся не менялся уже довольно давно.

Может потому и не собирается для 64? :-)

К сожалению имею доступ к сборочному роботу на x86_64 только под ALT Linux. У кого-то есть возможность проверить?

Ссылка на сообщение
Поделиться на других сайтах

Повторил ошибку на

$ gcc --version
gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4)
$ uname -a
Linux bubunta 2.6.17-10-generic #2 SMP Fri Oct 13 15:34:39 UTC 2006 x86_64 GNU/Linux

Посмотрю что можно сделать...

Ссылка на сообщение
Поделиться на других сайтах
Повторил ошибку на

$ gcc --version
gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4)
$ uname -a
Linux bubunta 2.6.17-10-generic #2 SMP Fri Oct 13 15:34:39 UTC 2006 x86_64 GNU/Linux

Посмотрю что можно сделать...

Попробую узнать можно ли выделить Вам место на сборочном роботе под x86_64 для починки. Если дадут - будет, естессно, ALT :-) Со всеми вытекающими --as-needed ;-)

Ссылка на сообщение
Поделиться на других сайтах

уууууууууу

ну что ж такое

 

2007-10-16 10:57:38 -- Module: 'Stg configurator v.0.05'. Stop successfull.

2007-10-16 10:57:38 -- Module: 'Pinger v.1.01'. Stop successfull.

2007-10-16 10:57:38 -- Module: 'Always Online authorizator v.1.0'. Stop successfull.

2007-10-16 10:57:41 -- Module: 'InetAccess authorizator v.1.1'. Stop successfull.

2007-10-16 10:57:41 -- Module: 'Ether_cap v.1.0'. Stop successfull.

2007-10-16 10:57:42 -- Traffcounter: Stop successfull.

2007-10-16 10:57:42 -- Stg v. Stg 2.403b

2007-10-16 10:57:42 -- Message queue created successfully. msgKey=5555 msgID=196608

2007-10-16 10:57:42 -- Timer thread started successfully.

2007-10-16 10:57:42 -- Storage plugin: file_store v.1.02. Loading successfull.

2007-10-16 10:57:42 -- Error: Plugin loading failed. /usr/lib/stg/mod_cap_ipq.so: undefined symbol: _Z18ipq_destroy_handleP10ipq_handle

2007-10-16 10:57:42 -- Traffcounter: Stop successfull.

2007-10-16 10:57:42 -- Users: Stop successfull.

2007-10-16 10:57:43 -- Queue removed successfully.

2007-10-16 10:57:43 -- StgTimer: Stop successfull.

2007-10-16 10:57:43 -- Stg stopped successfully.

 

 

релиз от 20.09 взвелся на ура...

Ссылка на сообщение
Поделиться на других сайтах
2007-10-16 10:57:42 -- Error: Plugin loading failed. /usr/lib/stg/mod_cap_ipq.so: undefined symbol: _Z18ipq_destroy_handleP10ipq_handle

Пардон! Заменить

SRCS = ./ipq_cap.cpp

на

SRCS = ./ipq_cap.cpp \ 
      ./libipq.c

в файле projects/stargazer/plugins/capture/ipq_linux/Makefile

Ссылка на сообщение
Поделиться на других сайтах
По идее --as-needed уже не должны волновать :)

У меня сложилось впечатление что все еще волнуют. Боюсь, что пост выше из-за отсутствия --as-needed в дистрибутиве человека привел именно к критическому унресолведу. Хоть эта фича и затрудняет написание кода, но таки есть большая польза.

 

P.S. Место на сборочном роботе дают, подробности ушли личкой. Всем страждущим придется подождать, если это починится и соберется на альте - соберется и заработает везде :(

Ссылка на сообщение
Поделиться на других сайтах
У меня сложилось впечатление что все еще волнуют. Боюсь, что пост выше из-за отсутствия --as-needed в дистрибутиве человека привел именно к критическому унресолведу.

Нет, это просто издержки перехода на новую систему сборки. Прошляпил один файлик.

Ссылка на сообщение
Поделиться на других сайтах
Нет, это просто издержки перехода на новую систему сборки. Прошляпил один файлик.

Да нет, не только это. У меня при сборке унресолведы сыпались как из рога изобилия :)

Ссылка на сообщение
Поделиться на других сайтах
Повторил ошибку на

$ gcc --version
gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4)
$ uname -a
Linux bubunta 2.6.17-10-generic #2 SMP Fri Oct 13 15:34:39 UTC 2006 x86_64 GNU/Linux

Посмотрю что можно сделать...

Нужно еще не забывать, что в x86_64 либы лежат не в /usr/lib а в /usr/lib64. Нужно вставлять какой-то механизм проверки. В rpm-based дистрибутивах встречается переменная %_lib которая равна либо /lib либо /lib64. А вот как сделать не на rpm-based - не знаю. Но как-то делают.

Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.
  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.


×
×
  • Создать...