From 9851444f486f75bdf9ef9a17b5cf21a4865651d9 Mon Sep 17 00:00:00 2001 From: edwardro22 Date: Fri, 15 Sep 2017 15:29:53 +0000 Subject: [PATCH] Fixed broken postgres script --- data/storage/migrator/mysql_cdr_migration.sql | 4 ++-- data/storage/migrator/pg_cdr_migration.sql | 9 ++------ data/storage/migrator/rc7_to_rc8.sh | 21 ++++++++++--------- 3 files changed, 15 insertions(+), 19 deletions(-) diff --git a/data/storage/migrator/mysql_cdr_migration.sql b/data/storage/migrator/mysql_cdr_migration.sql index d1cb6bfd3..7a7e0d0a3 100755 --- a/data/storage/migrator/mysql_cdr_migration.sql +++ b/data/storage/migrator/mysql_cdr_migration.sql @@ -4,7 +4,7 @@ but it only migrate CDRs where the duration is > 0. If you need CDRs also with duration is = 0 you can make the appropriate change in the line beginning WHERE cdrs_primary.usage Also the script will process 10,000 CDRs before committing to save system resources especially in systems where they are millions of CDRs to be migrated -You can increase or lower the value of step in the line after BEGIN below. +You can increase or lower the value of step in the line after BEGIN below.P You have to use 'CALL cgrates.migration();' to execute the script. If named other then default use that database name. */ @@ -32,7 +32,7 @@ BEGIN WHILE (start_id <= max_cdrs) DO INSERT INTO cdrs(cgrid,run_id,origin_host,source,origin_id,tor,request_type,direction,tenant,category,account,subject,destination,setup_time,pdd,answer_time,`usage`,supplier,disconnect_cause,extra_fields,cost_source,cost,cost_details,extra_info, created_at, updated_at, deleted_at) - SELECT cdrs_primary.cgrid,rated_cdrs.runid as run_id,cdrs_primary.cdrhost as origin_host,cdrs_primary.cdrsource as source,cdrs_primary.accid as origin_id, cdrs_primary.tor,rated_cdrs.reqtype as request_type,rated_cdrs.direction, rated_cdrs.tenant,rated_cdrs.category, rated_cdrs.account, rated_cdrs.subject, rated_cdrs.destination,rated_cdrs.setup_time,rated_cdrs.pdd,rated_cdrs.answer_time,rated_cdrs.`usage`,rated_cdrs.supplier,rated_cdrs.disconnect_cause,cdrs_extra.extra_fields,cost_details.cost_source,rated_cdrs.cost,cost_details.timespans as cost_details,rated_cdrs.extra_info,rated_cdrs.created_at,rated_cdrs.updated_at, rated_cdrs.deleted_at + SELECT cdrs_primary.cgrid,rated_cdrs.runid as run_id,cdrs_primary.cdrhost as origin_host,cdrs_primary.cdrsource as source,cdrs_primary.accid as origin_id, cdrs_primary.tor,rated_cdrs.reqtype as request_type,rated_cdrs.direction, rated_cdrs.tenant,rated_cdrs.category, rated_cdrs.account, rated_cdrs.subject, rated_cdrs.destination,rated_cdrs.setup_time,rated_cdrs.pdd,rated_cdrs.answer_time,rated_cdrs.`usage`,rated_cdrs.supplier,rated_cdrs.disconnect_cause,cdrs_extra.extra_fields,cost_details.cost_source,rated_cdrs.cost,cost_details.timespans as cost_details,rated_cdrs.extra_info,rated_cdrs.created_at,rated_cdrs.updated_at, null FROM rated_cdrs INNER JOIN cdrs_primary ON rated_cdrs.cgrid = cdrs_primary.cgrid INNER JOIN cdrs_extra ON rated_cdrs.cgrid = cdrs_extra.cgrid diff --git a/data/storage/migrator/pg_cdr_migration.sql b/data/storage/migrator/pg_cdr_migration.sql index bb562217d..c4f41aab8 100755 --- a/data/storage/migrator/pg_cdr_migration.sql +++ b/data/storage/migrator/pg_cdr_migration.sql @@ -8,7 +8,6 @@ especially in systems where they are millions of CDRs to be migrated You can increase or lower the value of step in the line after BEGIN below. */ - DO $$ DECLARE max_cdrs bigint; @@ -26,7 +25,7 @@ BEGIN --RAISE NOTICE '%', (to_char(start_id, '99999999') || '-' || to_char(end_id, '99999999')); INSERT INTO cdrs(cgrid,run_id,origin_host,source,origin_id,tor,request_type,direction,tenant,category,account,subject,destination,setup_time,pdd,answer_time,usage,supplier,disconnect_cause,extra_fields,cost_source,cost,cost_details,extra_info, created_at, updated_at, deleted_at) - SELECT cdrs_primary.cgrid,rated_cdrs.runid as run_id,cdrs_primary.cdrhost as origin_host,cdrs_primary.cdrsource as source,cdrs_primary.accid as origin_id, cdrs_primary.tor,rated_cdrs.reqtype as request_type,rated_cdrs.direction, rated_cdrs.tenant,rated_cdrs.category, rated_cdrs.account, rated_cdrs.subject, rated_cdrs.destination,rated_cdrs.setup_time,rated_cdrs.pdd,rated_cdrs.answer_time,rated_cdrs.usage,rated_cdrs.supplier,rated_cdrs.disconnect_cause,cdrs_extra.extra_fields,cost_details.cost_source,rated_cdrs.cost,cost_details.timespans as cost_details,rated_cdrs.extra_info,rated_cdrs.created_at,rated_cdrs.updated_at, rated_cdrs.deleted_at + SELECT DISTINCT ON (cdrs_primary.cgrid, rated_cdrs.runid, cdrs_primary.accid) cdrs_primary.cgrid,rated_cdrs.runid as run_id,cdrs_primary.cdrhost as origin_host,cdrs_primary.cdrsource as source,cdrs_primary.accid as origin_id, cdrs_primary.tor,rated_cdrs.reqtype as request_type,rated_cdrs.direction, rated_cdrs.tenant,rated_cdrs.category, rated_cdrs.account, rated_cdrs.subject, rated_cdrs.destination,rated_cdrs.setup_time,rated_cdrs.pdd,rated_cdrs.answer_time,rated_cdrs.usage,rated_cdrs.supplier,rated_cdrs.disconnect_cause,cdrs_extra.extra_fields,cost_details.cost_source,rated_cdrs.cost,cost_details.timespans as cost_details,rated_cdrs.extra_info,rated_cdrs.created_at,rated_cdrs.updated_at, null FROM rated_cdrs INNER JOIN cdrs_primary ON rated_cdrs.cgrid = cdrs_primary.cgrid INNER JOIN cdrs_extra ON rated_cdrs.cgrid = cdrs_extra.cgrid @@ -40,8 +39,4 @@ BEGIN end_id = end_id + step; END LOOP; END -$$; -ALTER TABLE cdrs RENAME COLUMN usage to usage_old; -ALTER TABLE cdrs ADD usage NUMERIC(30); -UPDATE cdrs SET usage = usage_old * 1000000000 WHERE usage_old IS NOT NULL; -ALTER TABLE cdrs DROP COLUMN usage_old; \ No newline at end of file +$$; \ No newline at end of file diff --git a/data/storage/migrator/rc7_to_rc8.sh b/data/storage/migrator/rc7_to_rc8.sh index 5f6d7143e..50dce09a9 100755 --- a/data/storage/migrator/rc7_to_rc8.sh +++ b/data/storage/migrator/rc7_to_rc8.sh @@ -5,19 +5,19 @@ #DBs Config datadb="redis" -stordb="mysql" +stordb="postgres" echo "dataDB:"$datadb " storDB:"$stordb echo "" #dataDBs case $datadb in "redis") #Redis Config -export cgr_from_host='127.0.0.1' +export cgr_from_host='192.168.100.40' export cgr_from_port=6379 export cgr_from_db=11 export cgr_from_pass='' -export cgr_to_host='127.0.0.1' +export cgr_to_host='192.168.100.40' export cgr_to_port=6379 export cgr_to_db=10 export cgr_to_pass='' # Not used @@ -55,7 +55,7 @@ db="cgrates" "postgres") #postgres Config user="cgrates" -host="127.0.0.1" +host="192.168.100.40" db="cgrates" ;; esac @@ -89,14 +89,15 @@ mig=$? ;; "postgres") -psql -U $user -h $host -d cgrates -f "$DIR"/pq_tables_update.sql +psql -U $user -h $host -d cgrates -f "$DIR"/pg_tables_update.sql +echo "not mysql" up=$? -psql -U $user -h $host -d cgrates -f "$DIR"/pg_cdr_migration.sql + psql -U $user -h $host -d cgrates -f "$DIR"/pg_cdr_migration.sql mig=$? ;; esac -if [ $up = 0 ] && [ $mig = 0 ]; then - echo -e "\n\t+++ The script ran successfully ! +++\n" - exit 0 -fi \ No newline at end of file +# if [ $up == 0 ] && [ $mig == 0 ]; then +# echo -e "\n\t+++ The script ran successfully ! +++\n" +# exit 0 +# fi