Архивация таблиц списаний

Технические вопросы по UTM 5.0
sekuzzz
Сообщения: 8
Зарегистрирован: Вс авг 24, 2014 19:46

Архивация таблиц списаний

Сообщение sekuzzz »

Читал доки

http://www.netup.ru/UTM5/documentation/ ... e_rus.html,

но так и не понял, где сам скрипт переноса таблиц в архивы?
Или ядро биллинга само это делает после заполнения таблицы archives?

Данной докой разработчики биллинга дают механизм обращения к архивам при запросах к биллингу?

Поясните плиз.

Point
Сообщения: 242
Зарегистрирован: Вт ноя 23, 2010 15:42

Сообщение Point »

В 5.3.002 ни скрипта ни утилиты для архивации нет, народ юзал самописные скрипты viewtopic.php?t=8316

Вопрос к разработчикам:
Список изменений UTM-5.3-003-release
Добавлена возможность автоматизированного архивирования больших таблиц БД в интерфейсе администратора, а так же внешней утилитой командной строки

где сабж и как использовать? в доке о нем ни слова :(

maxxsoft
Сообщения: 125
Зарегистрирован: Пт янв 18, 2013 09:23

Сообщение maxxsoft »

пробовал в админке 5.3-003 воспользоваться этой фичей на стенде, база маленькая, но при попытке создать бекап, админка ОЧЕНЬ долго думала, потом вывалила ошибку....

serjk
NetUP Team
Сообщения: 719
Зарегистрирован: Пн авг 14, 2006 08:56

Сообщение serjk »

maxxsoft писал(а):пробовал в админке 5.3-003 воспользоваться этой фичей на стенде, база маленькая, но при попытке создать бекап, админка ОЧЕНЬ долго думала, потом вывалила ошибку....
Какую ошибку? Вообще следовало обратиться в техподдержку и предоставить логи и скрин ошибки, посмотрели бы оперативно.

Point
Сообщения: 242
Зарегистрирован: Вт ноя 23, 2010 15:42

Сообщение Point »

2 Serjk!
А можно всё-таки получить описание данного функционала? (работа из командной строки) + описание функционала в плане автоматизации- задание архивной бд, создание шедулера, задание периода архивации.

Point
Сообщения: 242
Зарегистрирован: Вт ноя 23, 2010 15:42

Сообщение Point »

и что делать со старыми архивами, в которых нет архивированных таблиц 8-12?
в логах постоянная ругань:

Код: Выделить всё

Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM15print_backtraceEv+0x40) [0xb0aa10]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM8DBAErrorC2ERKSsS2_bNS_6Logger5LevelE+0x96) [0x54c286]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM15DBAGenericErrorC2ERKSsbNS_6Logger5LevelE+0x51) [0x54c371]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM8DBAccess22get_archive_table_nameEiNS_15archive_table_tERSs+0x2e2) [0x96ca22]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM8DBAccess19__get_invoices_listEiPSt3mapIiNS_7InvoiceESt4lessIiESaISt4pairIKiS2_EEEiillb+0x255) [0x9f2b85]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM8DBAccess17get_invoices_listEiPSt3mapIiNS_7InvoiceESt4lessIiESaISt4pairIKiS2_EEEiillb+0x6b) [0x8035cb]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM8DBAccess11get_invoiceEi+0x6e) [0x9f657e]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_Z29rpcf_get_doc_invoices_entriesPv+0x140) [0x840750]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM7RPCConn7processEv+0xfb7) [0x6bc6a7]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /netup/utm5/bin/utm5_core(_ZN3UTM17__rpcconn_wrapperEPv+0x47a) [0x6acd8a]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /lib/x86_64-linux-gnu/libpthread.so.0(+0x6b50) [0x7f22e4a5db50]
Aug 31 10:48:01 ?Trace : db0f0700 trace: /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f22e366d95d]
Aug 31 10&#58;48&#58;01 ?Debug &#58; db0f0700 DBConnection_mysql&#58; <0x7f22dc028230> SQL SELECT query&#58; SELECT table_name FROM archives WHERE archive_id='55' AND table_type='10'
Aug 31 10&#58;48&#58;01 ?Debug &#58; db0f0700 DBConnection_mysql&#58; <0x7f22dc028230> SQL SELECT query&#58; 0 rows in 0.000 sec
Aug 31 10&#58;48&#58;01 ?Debug &#58; db0f0700 UTM5 DBA&#58; table invoices not exists in archive_id 55
Aug 31 10&#58;48&#58;01  ERROR &#58; db0f0700 DBAGenericError&#58; table not exists in this archive
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; Obtained 12 stack frames.

Аватара пользователя
Magnum72
Сообщения: 1947
Зарегистрирован: Чт сен 22, 2005 06:54
Контактная информация:

Сообщение Magnum72 »

Point писал(а):и что делать со старыми архивами, в которых нет архивированных таблиц 8-12?
в логах постоянная ругань:

Код: Выделить всё

Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM15print_backtraceEv+0x40&#41; &#91;0xb0aa10&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM8DBAErrorC2ERKSsS2_bNS_6Logger5LevelE+0x96&#41; &#91;0x54c286&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM15DBAGenericErrorC2ERKSsbNS_6Logger5LevelE+0x51&#41; &#91;0x54c371&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM8DBAccess22get_archive_table_nameEiNS_15archive_table_tERSs+0x2e2&#41; &#91;0x96ca22&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM8DBAccess19__get_invoices_listEiPSt3mapIiNS_7InvoiceESt4lessIiESaISt4pairIKiS2_EEEiillb+0x255&#41; &#91;0x9f2b85&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM8DBAccess17get_invoices_listEiPSt3mapIiNS_7InvoiceESt4lessIiESaISt4pairIKiS2_EEEiillb+0x6b&#41; &#91;0x8035cb&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM8DBAccess11get_invoiceEi+0x6e&#41; &#91;0x9f657e&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_Z29rpcf_get_doc_invoices_entriesPv+0x140&#41; &#91;0x840750&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM7RPCConn7processEv+0xfb7&#41; &#91;0x6bc6a7&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /netup/utm5/bin/utm5_core&#40;_ZN3UTM17__rpcconn_wrapperEPv+0x47a&#41; &#91;0x6acd8a&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /lib/x86_64-linux-gnu/libpthread.so.0&#40;+0x6b50&#41; &#91;0x7f22e4a5db50&#93;
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; /lib/x86_64-linux-gnu/libc.so.6&#40;clone+0x6d&#41; &#91;0x7f22e366d95d&#93;
Aug 31 10&#58;48&#58;01 ?Debug &#58; db0f0700 DBConnection_mysql&#58; <0x7f22dc028230> SQL SELECT query&#58; SELECT table_name FROM archives WHERE archive_id='55' AND table_type='10'
Aug 31 10&#58;48&#58;01 ?Debug &#58; db0f0700 DBConnection_mysql&#58; <0x7f22dc028230> SQL SELECT query&#58; 0 rows in 0.000 sec
Aug 31 10&#58;48&#58;01 ?Debug &#58; db0f0700 UTM5 DBA&#58; table invoices not exists in archive_id 55
Aug 31 10&#58;48&#58;01  ERROR &#58; db0f0700 DBAGenericError&#58; table not exists in this archive
Aug 31 10&#58;48&#58;01 ?Trace &#58; db0f0700 trace&#58; Obtained 12 stack frames.
Создать, пусть даже пустые. главное чтобы были.

Point
Сообщения: 242
Зарегистрирован: Вт ноя 23, 2010 15:42

Сообщение Point »

[/quote]

Создать, пусть даже пустые. главное чтобы были.[/quote]

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

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

Point
Сообщения: 242
Зарегистрирован: Вт ноя 23, 2010 15:42

Сообщение Point »

Начинает проясняться с архивацией. Запускается бинарник db_arhiver с ключиком -а. никаких дополнительных настроек нет, этот же утиль используется для проверки и обновления бд при запуске ядра. к сожалению запуск на тестовой базе к положительным результатам не привел :(
db_arhiver.log

Код: Выделить всё

Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL SELECT query&#58; SHOW TABLES
Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL SELECT query&#58; 182 rows in 0.001 sec
Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query&#58; CREATE TABLE dhcp_leases_log_tmp &#40;id int NOT NULL AUTO_INCREMENT, ip int DEFAULT '0' NOT NULL, mac varchar&#40;254&#41; DEFAULT '' NOT NULL, relay_agent_info varchar&#40;254&#41; DEFAULT '' NOT NULL, account_id int DEFAULT '0' NOT NULL, expired int DEFAULT '0' NOT NULL, updated int DEFAULT '0' NOT NULL, PRIMARY KEY &#40;id&#41;&#41; ENGINE=InnoDB;
Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query takes 0.393 sec
Sep 01 14&#58;45&#58;21  Info  &#58; 91adf740 DBVerifier&#58; CREATE TABLE dhcp_leases_log_tmp
Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query&#58; CREATE TABLE dhs_sessions_detail_tmp &#40;id int NOT NULL AUTO_INCREMENT, dhs_sess_id int DEFAULT '0' NOT NULL, trange_id int DEFAULT '0' NOT NULL, recv_date int DEFAULT '0' NOT NULL, account_id int DEFAULT '0' NOT NULL, disc_per_id int DEFAULT '0' NOT NULL, slink_id int DEFAULT '0' NOT NULL, duration bigint DEFAULT '0' NOT NULL, base_cost double DEFAULT '0' NOT NULL, sum_cost double DEFAULT '0' NOT NULL, PRIMARY KEY &#40;id&#41;&#41; ENGINE=InnoDB;
Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query takes 0.315 sec
Sep 01 14&#58;45&#58;21  Info  &#58; 91adf740 DBVerifier&#58; CREATE TABLE dhs_sessions_detail_tmp
Sep 01 14&#58;45&#58;21 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query&#58; CREATE TABLE dhs_sessions_log_tmp &#40;id int NOT NULL AUTO_INCREMENT, account_id int DEFAULT '0' NOT NULL, slink_id int DEFAULT '0' NOT NULL, recv_date int DEFAULT '0' NOT NULL, last_update_date int DEFAULT '0' NOT NULL, Framed_IP_Address int DEFAULT '0' NOT NULL, Framed_IP_Address6 bigint DEFAULT '0' NOT NULL, Framed_IP_Address6_ext bigint DEFAULT '0' NOT NULL, NAS_Port int DEFAULT '0' NOT NULL, Acct_Delay_Time int DEFAULT '0' NOT NULL, Acct_Session_Id varchar&#40;255&#41; DEFAULT '' NOT NULL, NAS_Port_Type int DEFAULT '0' NOT NULL, User_Name varchar&#40;255&#41; DEFAULT '' NOT NULL, Service_Type int DEFAULT '0' NOT NULL, Framed_Protocol int DEFAULT '0' NOT NULL, NAS_IP_Address bigint DEFAULT '0' NOT NULL, NAS_IP_Address_ext bigint DEFAULT '0' NOT NULL, NAS_IP_Address_type int DEFAULT '0' NOT NULL, NAS_Id varchar&#40;255&#41; DEFAULT '' NOT NULL, Acct_Status_Type int DEFAULT '0' NOT NULL, Acct_Input_Packets bigint DEFAULT '0' NOT NULL, Acct_Input_Octets bigint DEFAULT '0' NOT NULL, Acct_Input_Gigawords bigint DEFAULT '0' NOT NULL, Acct_Output_Packets bigint DEFAULT '0' NOT NULL, Acct_Output_Octets bigint DEFAULT '0' NOT NULL, Acct_Output_Gigawords bigint DEFAULT '0' NOT NULL, Acct_Session_Time bigint DEFAULT '0' NOT NULL, Acct_Terminate_Cause int DEFAULT '0' NOT NULL, Called_Station_Id varchar&#40;255&#41; DEFAULT '' NOT NULL, Calling_Station_Id varchar&#40;255&#41; DEFAULT '' NOT NULL, flags int DEFAULT '0' NOT NULL, PRIMARY KEY &#40;id&#41;&#41; ENGINE=InnoDB;
Sep 01 14&#58;45&#58;22 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query takes 0.313 sec
Sep 01 14&#58;45&#58;22  Info  &#58; 91adf740 DBVerifier&#58; CREATE TABLE dhs_sessions_log_tmp
Sep 01 14&#58;45&#58;22 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query&#58; CREATE INDEX index_24247dc217bfec3ceaf294cc46949837 ON dhs_sessions_log_tmp&#40;account_id,last_update_date&#41;;
Sep 01 14&#58;45&#58;22 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query takes 0.328 sec
Sep 01 14&#58;45&#58;22  Info  &#58; 91adf740 DBVerifier&#58; CREATE INDEX index_24247dc217bfec3ceaf294cc46949837 ON TABLE dhs_sessions_log_tmp
Sep 01 14&#58;45&#58;22 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query&#58; CREATE INDEX index_64791de5ab4ea85459319893269706ea ON dhs_sessions_log_tmp&#40;last_update_date,Acct_Status_Type&#41;;
Sep 01 14&#58;45&#58;23 ?Debug &#58; 91adf740 DBConnection_mysql&#58; <0x7fbe88046db0> SQL query takes 0.424 sec
Sep 01 14&#58;45&#58;23  Info  &#58; 91adf740 DBVerifier&#58; CREATE INDEX index_64791de5ab4ea85459319893269706ea ON TABLE dhs_sessions_log_tmp
после чего утилита впала в кому,
mysql> SHOW PROCESSLIST;
| 2461767 | root | localhost | UTM5_TEST | Sleep | 1616 | | NULL | 0 | 0

top
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
21370 root 20 0 148m 5792 3748 R 100,2 0,0 29:09.57 db_archiver

ждал оживления очень долго, после чего ручками прибил процесс

maxxsoft
Сообщения: 125
Зарегистрирован: Пт янв 18, 2013 09:23

Сообщение maxxsoft »

Point писал(а): ждал оживления очень долго, после чего ручками прибил процесс
аналогичная ситуация, только лог остановился на другой таблице, всё чего процесс сделал, это создал таблицы:

Код: Выделить всё

dhcp_leases_log_tmp
dhs_sessions_detail_tmp
dhs_sessions_log_tmp
discount_transactions_all_tmp
discount_transactions_iptraffic_all_tmp
invoices_tmp
invoice_entry_details_tmp
invoice_entry_tmp
payment_transactions_tmp
и создает индексы,
потом встаёт колом.
повторный запуск молчит, в логе кроме проверки таблиц ничего нет.
удалял созданные таблицы, ситуация повторяется в точности:
лог заканчивается этим:

Код: Выделить всё

Sep 04 01&#58;24&#58;06 ?Debug &#58; f07740 DBConnection_mysql&#58; <0x1503800> SQL query takes 0.180 sec
Sep 04 01&#58;24&#58;06  Info  &#58; f07740 DBVerifier&#58; CREATE INDEX index_204db493907b7f4ddf2336ae78db201d ON TABLE payment_transactions_tmp
Sep 04 01&#58;24&#58;06 ?Debug &#58; f07740 DBConnection_mysql&#58; <0x1503800> SQL query&#58; CREATE INDEX index_b37e82d403f2755b32e4baece65863a7 ON payment_transactions_tmp&#40;hash&#41;;
Sep 04 01&#58;24&#58;06 ?Debug &#58; f07740 DBConnection_mysql&#58; <0x1503800> SQL query takes 0.190 sec
Sep 04 01&#58;24&#58;06  Info  &#58; f07740 DBVerifier&#58; CREATE INDEX index_b37e82d403f2755b32e4baece65863a7 ON TABLE payment_transactions_tmp
ждал долго! оставил эту шарманку на ночь, ничего не изменилось, процесс повторяется.

serjk
NetUP Team
Сообщения: 719
Зарегистрирован: Пн авг 14, 2006 08:56

Сообщение serjk »

2maxxoft

Обратитесь, пожалуйста, в техподдержку и предоставьте им дамп тестовой базу и полный лог. Сможем оперативно решить вопрос.

Point
Сообщения: 242
Зарегистрирован: Вт ноя 23, 2010 15:42

Сообщение Point »

serjk писал(а):2maxxoft

Обратитесь, пожалуйста, в техподдержку и предоставьте им дамп тестовой базу и полный лог. Сможем оперативно решить вопрос.

Код: Выделить всё

agent &#40;внешний e-mail&#41; 01.09.2015 13&#58;26&#58;26
Тема&#58;	 &#91;Ticket#&#58; 2015083110000023&#93; Bug Report
Прикрепленный файл&#58;	
Добрый день,
Мы проанализируем логи db_archiver и если проблема действительно
существует, сдадим ее разработчикам.

Аватара пользователя
TiRider
Сообщения: 568
Зарегистрирован: Сб июн 07, 2008 12:43

Сообщение TiRider »

Point писал(а):
serjk писал(а):2maxxoft

Обратитесь, пожалуйста, в техподдержку и предоставьте им дамп тестовой базу и полный лог. Сможем оперативно решить вопрос.

Код: Выделить всё

agent &#40;внешний e-mail&#41; 01.09.2015 13&#58;26&#58;26
Тема&#58;	 &#91;Ticket#&#58; 2015083110000023&#93; Bug Report
Прикрепленный файл&#58;	
Добрый день,
Мы проанализируем логи db_archiver и если проблема действительно
существует, сдадим ее разработчикам.
Ну как обычно.

serjk
NetUP Team
Сообщения: 719
Зарегистрирован: Пн авг 14, 2006 08:56

Сообщение serjk »

2 Point

Спасибо, выясняем, почему ситуация не была должным образом доведена до нас.

Аватара пользователя
Lex
NetUP Team
Сообщения: 623
Зарегистрирован: Ср мар 09, 2005 12:12
Откуда: НетАП
Контактная информация:

Сообщение Lex »

Взял рассмотрение заявки 2015083110000023 под контроль. В ближайшее время специалист рассмотрит проблему по существу. Приношу извинения за задержку.

Ответить