mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-15 13:19:53 +05:00
Improve functionality for Drone CI
This commit is contained in:
committed by
Dan Christian Bogos
parent
8ef305d64c
commit
fdadd1ab81
@@ -5,7 +5,7 @@
|
||||
DROP TABLE IF EXISTS cdrs;
|
||||
CREATE TABLE cdrs (
|
||||
id SERIAL PRIMARY KEY,
|
||||
cgrid VARCHAR(40) NOT NULL,
|
||||
|
||||
run_id VARCHAR(64) NOT NULL,
|
||||
origin_host VARCHAR(64) NOT NULL,
|
||||
source VARCHAR(64) NOT NULL,
|
||||
@@ -28,7 +28,7 @@ CREATE TABLE cdrs (
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
updated_at TIMESTAMP WITH TIME ZONE NULL,
|
||||
deleted_at TIMESTAMP WITH TIME ZONE NULL,
|
||||
UNIQUE (cgrid, run_id)
|
||||
UNIQUE ( run_id)
|
||||
);
|
||||
;
|
||||
DROP INDEX IF EXISTS deleted_at_cp_idx;
|
||||
@@ -38,7 +38,6 @@ CREATE INDEX deleted_at_cp_idx ON cdrs (deleted_at);
|
||||
DROP TABLE IF EXISTS session_costs;
|
||||
CREATE TABLE session_costs (
|
||||
id SERIAL PRIMARY KEY,
|
||||
cgrid VARCHAR(40) NOT NULL,
|
||||
run_id VARCHAR(64) NOT NULL,
|
||||
origin_host VARCHAR(64) NOT NULL,
|
||||
origin_id VARCHAR(128) NOT NULL,
|
||||
@@ -47,10 +46,8 @@ CREATE TABLE session_costs (
|
||||
cost_details jsonb,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
deleted_at TIMESTAMP WITH TIME ZONE NULL,
|
||||
UNIQUE (cgrid, run_id)
|
||||
UNIQUE ( run_id)
|
||||
);
|
||||
DROP INDEX IF EXISTS cgrid_sessionscost_idx;
|
||||
CREATE INDEX cgrid_sessionscost_idx ON session_costs (cgrid, run_id);
|
||||
DROP INDEX IF EXISTS origin_sessionscost_idx;
|
||||
CREATE INDEX origin_sessionscost_idx ON session_costs (origin_host, origin_id);
|
||||
DROP INDEX IF EXISTS run_origin_sessionscost_idx;
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
#
|
||||
# Sample db and users creation. Replace here with your own details
|
||||
#
|
||||
|
||||
sudo -u postgres dropdb -e cgrates
|
||||
sudo -u postgres dropuser -e cgrates
|
||||
sudo -u postgres psql -c "CREATE USER cgrates password 'CGRateS.org';"
|
||||
sudo -u postgres createdb -e -O cgrates cgrates
|
||||
@@ -1,5 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# extra DB for ers
|
||||
sudo -u postgres dropdb -e cgrates2
|
||||
sudo -u postgres createdb -e -O cgrates cgrates2
|
||||
@@ -1,242 +1,3 @@
|
||||
--
|
||||
-- Table structure for table `tp_timings`
|
||||
--
|
||||
DROP TABLE IF EXISTS tp_timings;
|
||||
CREATE TABLE tp_timings (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
years VARCHAR(255) NOT NULL,
|
||||
months VARCHAR(255) NOT NULL,
|
||||
month_days VARCHAR(255) NOT NULL,
|
||||
week_days VARCHAR(255) NOT NULL,
|
||||
time VARCHAR(32) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag)
|
||||
);
|
||||
CREATE INDEX tptimings_tpid_idx ON tp_timings (tpid);
|
||||
CREATE INDEX tptimings_idx ON tp_timings (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_destinations`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_destinations;
|
||||
CREATE TABLE tp_destinations (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
prefix VARCHAR(24) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, prefix)
|
||||
);
|
||||
CREATE INDEX tpdests_tpid_idx ON tp_destinations (tpid);
|
||||
CREATE INDEX tpdests_idx ON tp_destinations (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_rates`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_rates;
|
||||
CREATE TABLE tp_rates (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
connect_fee NUMERIC(7,4) NOT NULL,
|
||||
rate NUMERIC(10,4) NOT NULL,
|
||||
rate_unit VARCHAR(16) NOT NULL,
|
||||
rate_increment VARCHAR(16) NOT NULL,
|
||||
group_interval_start VARCHAR(16) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, group_interval_start)
|
||||
);
|
||||
CREATE INDEX tprates_tpid_idx ON tp_rates (tpid);
|
||||
CREATE INDEX tprates_idx ON tp_rates (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table `destination_rates`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_destination_rates;
|
||||
CREATE TABLE tp_destination_rates (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
destinations_tag VARCHAR(64) NOT NULL,
|
||||
rates_tag VARCHAR(64) NOT NULL,
|
||||
rounding_method VARCHAR(255) NOT NULL,
|
||||
rounding_decimals SMALLINT NOT NULL,
|
||||
max_cost NUMERIC(7,4) NOT NULL,
|
||||
max_cost_strategy VARCHAR(16) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag , destinations_tag)
|
||||
);
|
||||
CREATE INDEX tpdestrates_tpid_idx ON tp_destination_rates (tpid);
|
||||
CREATE INDEX tpdestrates_idx ON tp_destination_rates (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_rating_plans`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_rating_plans;
|
||||
CREATE TABLE tp_rating_plans (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
destrates_tag VARCHAR(64) NOT NULL,
|
||||
timing_tag VARCHAR(64) NOT NULL,
|
||||
weight NUMERIC(8,2) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, destrates_tag, timing_tag)
|
||||
);
|
||||
CREATE INDEX tpratingplans_tpid_idx ON tp_rating_plans (tpid);
|
||||
CREATE INDEX tpratingplans_idx ON tp_rating_plans (tpid,tag);
|
||||
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_rate_profiles`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_rating_profiles;
|
||||
CREATE TABLE tp_rating_profiles (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
loadid VARCHAR(64) NOT NULL,
|
||||
tenant VARCHAR(64) NOT NULL,
|
||||
category VARCHAR(32) NOT NULL,
|
||||
subject VARCHAR(64) NOT NULL,
|
||||
activation_time VARCHAR(26) NOT NULL,
|
||||
rating_plan_tag VARCHAR(64) NOT NULL,
|
||||
fallback_subjects VARCHAR(64),
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, loadid, tenant, category, subject, activation_time)
|
||||
);
|
||||
CREATE INDEX tpratingprofiles_tpid_idx ON tp_rating_profiles (tpid);
|
||||
CREATE INDEX tpratingprofiles_idx ON tp_rating_profiles (tpid,loadid,tenant,category,subject);
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_shared_groups`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_shared_groups;
|
||||
CREATE TABLE tp_shared_groups (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
account VARCHAR(64) NOT NULL,
|
||||
strategy VARCHAR(24) NOT NULL,
|
||||
rating_subject VARCHAR(24) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, account , strategy , rating_subject)
|
||||
);
|
||||
CREATE INDEX tpsharedgroups_tpid_idx ON tp_shared_groups (tpid);
|
||||
CREATE INDEX tpsharedgroups_idx ON tp_shared_groups (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_actions`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_actions;
|
||||
CREATE TABLE tp_actions (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
action VARCHAR(24) NOT NULL,
|
||||
extra_parameters VARCHAR(256) NOT NULL,
|
||||
filters VARCHAR(256) NOT NULL,
|
||||
balance_tag VARCHAR(64) NOT NULL,
|
||||
balance_type VARCHAR(24) NOT NULL,
|
||||
categories VARCHAR(32) NOT NULL,
|
||||
destination_tags VARCHAR(64) NOT NULL,
|
||||
rating_subject VARCHAR(64) NOT NULL,
|
||||
shared_groups VARCHAR(64) NOT NULL,
|
||||
expiry_time VARCHAR(26) NOT NULL,
|
||||
timing_tags VARCHAR(128) NOT NULL,
|
||||
units VARCHAR(256) NOT NULL,
|
||||
balance_weight VARCHAR(10) NOT NULL,
|
||||
balance_blocker VARCHAR(5) NOT NULL,
|
||||
balance_disabled VARCHAR(5) NOT NULL,
|
||||
weight NUMERIC(8,2) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, action, balance_tag, balance_type, expiry_time, timing_tags, destination_tags, shared_groups, balance_weight, weight)
|
||||
);
|
||||
CREATE INDEX tpactions_tpid_idx ON tp_actions (tpid);
|
||||
CREATE INDEX tpactions_idx ON tp_actions (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_action_timings`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_action_plans;
|
||||
CREATE TABLE tp_action_plans (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
actions_tag VARCHAR(64) NOT NULL,
|
||||
timing_tag VARCHAR(64) NOT NULL,
|
||||
weight NUMERIC(8,2) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, actions_tag, timing_tag)
|
||||
);
|
||||
CREATE INDEX tpactionplans_tpid_idx ON tp_action_plans (tpid);
|
||||
CREATE INDEX tpactionplans_idx ON tp_action_plans (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table tp_action_triggers
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_action_triggers;
|
||||
CREATE TABLE tp_action_triggers (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
tag VARCHAR(64) NOT NULL,
|
||||
unique_id VARCHAR(64) NOT NULL,
|
||||
threshold_type VARCHAR(64) NOT NULL,
|
||||
threshold_value NUMERIC(20,4) NOT NULL,
|
||||
recurrent BOOLEAN NOT NULL,
|
||||
min_sleep VARCHAR(16) NOT NULL,
|
||||
expiry_time VARCHAR(26) NOT NULL,
|
||||
activation_time VARCHAR(26) NOT NULL,
|
||||
balance_tag VARCHAR(64) NOT NULL,
|
||||
balance_type VARCHAR(24) NOT NULL,
|
||||
balance_categories VARCHAR(32) NOT NULL,
|
||||
balance_destination_tags VARCHAR(64) NOT NULL,
|
||||
balance_rating_subject VARCHAR(64) NOT NULL,
|
||||
balance_shared_groups VARCHAR(64) NOT NULL,
|
||||
balance_expiry_time VARCHAR(26) NOT NULL,
|
||||
balance_timing_tags VARCHAR(128) NOT NULL,
|
||||
balance_weight VARCHAR(10) NOT NULL,
|
||||
balance_blocker VARCHAR(5) NOT NULL,
|
||||
balance_disabled VARCHAR(5) NOT NULL,
|
||||
actions_tag VARCHAR(64) NOT NULL,
|
||||
weight NUMERIC(8,2) NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, tag, balance_tag, balance_type, threshold_type, threshold_value, balance_destination_tags, actions_tag)
|
||||
);
|
||||
CREATE INDEX tpactiontrigers_tpid_idx ON tp_action_triggers (tpid);
|
||||
CREATE INDEX tpactiontrigers_idx ON tp_action_triggers (tpid,tag);
|
||||
|
||||
--
|
||||
-- Table structure for table tp_account_actions
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_account_actions;
|
||||
CREATE TABLE tp_account_actions (
|
||||
id SERIAL PRIMARY KEY,
|
||||
tpid VARCHAR(64) NOT NULL,
|
||||
loadid VARCHAR(64) NOT NULL,
|
||||
tenant VARCHAR(64) NOT NULL,
|
||||
account VARCHAR(64) NOT NULL,
|
||||
action_plan_tag VARCHAR(64),
|
||||
action_triggers_tag VARCHAR(64),
|
||||
allow_negative BOOLEAN NOT NULL,
|
||||
disabled BOOLEAN NOT NULL,
|
||||
created_at TIMESTAMP WITH TIME ZONE,
|
||||
UNIQUE (tpid, loadid, tenant, account)
|
||||
);
|
||||
CREATE INDEX tpaccountactions_tpid_idx ON tp_account_actions (tpid);
|
||||
CREATE INDEX tpaccountactions_idx ON tp_account_actions (tpid,loadid,tenant,account);
|
||||
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_resources`
|
||||
@@ -255,7 +16,7 @@ CREATE TABLE tp_resources (
|
||||
"allocation_message" varchar(64) NOT NULL,
|
||||
"blocker" BOOLEAN NOT NULL,
|
||||
"stored" BOOLEAN NOT NULL,
|
||||
"weight" NUMERIC(8,2) NOT NULL,
|
||||
"weights" varchar(32) NOT NULL,
|
||||
"threshold_ids" varchar(64) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
@@ -267,23 +28,23 @@ CREATE INDEX tp_resources_unique ON tp_resources ("tpid", "tenant", "id", "fil
|
||||
-- Table structure for table `tp_stats`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_stats;
|
||||
DROP TABLE IF EXISTS tp_stats;
|
||||
CREATE TABLE tp_stats (
|
||||
"pk" SERIAL PRIMARY KEY,
|
||||
"tpid" varchar(64) NOT NULL,
|
||||
"tenant"varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"weights" VARCHAR(128) NOT NULL,
|
||||
"blockers" VARCHAR(128) NOT NULL,
|
||||
"queue_length" INTEGER NOT NULL,
|
||||
"ttl" varchar(32) NOT NULL,
|
||||
"min_items" INTEGER NOT NULL,
|
||||
"stored" BOOLEAN NOT NULL,
|
||||
"threshold_ids" VARCHAR(64) NOT NULL,
|
||||
"metric_ids" VARCHAR(128) NOT NULL,
|
||||
"metric_filter_ids" VARCHAR(128) NOT NULL,
|
||||
"stored" BOOLEAN NOT NULL,
|
||||
"blocker" BOOLEAN NOT NULL,
|
||||
"weight" decimal(8,2) NOT NULL,
|
||||
"threshold_ids" varchar(64) NOT NULL,
|
||||
"metric_blockers" VARCHAR(128) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_stats_idx ON tp_stats (tpid);
|
||||
@@ -305,13 +66,13 @@ CREATE TABLE tp_thresholds (
|
||||
"min_hits" INTEGER NOT NULL,
|
||||
"min_sleep" varchar(16) NOT NULL,
|
||||
"blocker" BOOLEAN NOT NULL,
|
||||
"weight" decimal(8,2) NOT NULL,
|
||||
"action_ids" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
"action_profile_ids" varchar(64) NOT NULL,
|
||||
"async" BOOLEAN NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_thresholds_idx ON tp_thresholds (tpid);
|
||||
CREATE INDEX tp_thresholds_unique ON tp_thresholds ("tpid","tenant", "id","filter_ids","action_ids");
|
||||
CREATE INDEX tp_thresholds_unique ON tp_thresholds ("tpid","tenant", "id","filter_ids","action_profile_ids");
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_filter`
|
||||
@@ -343,25 +104,25 @@ CREATE TABLE tp_routes (
|
||||
"tenant"varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
`blockers` varchar(64) NOT NULL,
|
||||
"sorting" varchar(32) NOT NULL,
|
||||
"sorting_parameters" varchar(64) NOT NULL,
|
||||
"route_id" varchar(32) NOT NULL,
|
||||
"route_filter_ids" varchar(64) NOT NULL,
|
||||
"route_account_ids" varchar(64) NOT NULL,
|
||||
"route_ratingplan_ids" varchar(64) NOT NULL,
|
||||
"route_rate_profile_ids" varchar(64) NOT NULL,
|
||||
"route_resource_ids" varchar(64) NOT NULL,
|
||||
"route_stat_ids" varchar(64) NOT NULL,
|
||||
"route_weight" decimal(8,2) NOT NULL,
|
||||
"route_weights" varchar(64) NOT NULL,
|
||||
"route_blocker" BOOLEAN NOT NULL,
|
||||
"route_parameters" varchar(64) NOT NULL,
|
||||
"weight" decimal(8,2) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_routes_idx ON tp_routes (tpid);
|
||||
CREATE INDEX tp_routes_unique ON tp_routes ("tpid", "tenant", "id",
|
||||
"filter_ids","route_id","route_filter_ids","route_account_ids",
|
||||
"route_ratingplan_ids","route_resource_ids","route_stat_ids");
|
||||
"route_rate_profile_ids","route_resource_ids","route_stat_ids");
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_attributes`
|
||||
@@ -373,15 +134,14 @@ CREATE INDEX tp_routes_unique ON tp_routes ("tpid", "tenant", "id",
|
||||
"tpid" varchar(64) NOT NULL,
|
||||
"tenant"varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"contexts" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
"blockers" varchar(64) NOT NULL,
|
||||
"attribute_filter_ids" varchar(64) NOT NULL,
|
||||
"attribute_blockers" varchar(64) NOT NULL,
|
||||
"path" varchar(64) NOT NULL,
|
||||
"type" varchar(64) NOT NULL,
|
||||
"value" varchar(64) NOT NULL,
|
||||
"blocker" BOOLEAN NOT NULL,
|
||||
"weight" decimal(8,2) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_attributes_ids ON tp_attributes (tpid);
|
||||
@@ -399,10 +159,10 @@ CREATE INDEX tp_routes_unique ON tp_routes ("tpid", "tenant", "id",
|
||||
"tenant"varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
"blockers" varchar(64) NOT NULL,
|
||||
"run_id" varchar(64) NOT NULL,
|
||||
"attribute_ids" varchar(64) NOT NULL,
|
||||
"weight" decimal(8,2) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_chargers_ids ON tp_chargers (tpid);
|
||||
@@ -419,7 +179,6 @@ CREATE INDEX tp_routes_unique ON tp_routes ("tpid", "tenant", "id",
|
||||
"tpid" varchar(64) NOT NULL,
|
||||
"tenant" varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"subsystems" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"strategy" varchar(64) NOT NULL,
|
||||
@@ -463,7 +222,98 @@ CREATE INDEX tp_routes_unique ON tp_routes ("tpid", "tenant", "id",
|
||||
CREATE INDEX tp_dispatcher_hosts_unique ON tp_dispatcher_hosts ("tpid", "tenant", "id",
|
||||
"address");
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_rate_profiles`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS tp_rate_profiles;
|
||||
CREATE TABLE tp_rate_profiles (
|
||||
"pk" SERIAL PRIMARY KEY,
|
||||
"tpid" varchar(64) NOT NULL,
|
||||
"tenant" varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
"min_cost" decimal(8,4) NOT NULL,
|
||||
"max_cost" decimal(8,4) NOT NULL,
|
||||
"max_cost_strategy" VARCHAR(64) NOT NULL,
|
||||
"rate_id" VARCHAR(64) NOT NULL,
|
||||
"rate_filter_ids" VARCHAR(64) NOT NULL,
|
||||
"rate_activation_times" VARCHAR(64) NOT NULL,
|
||||
"rate_weights" varchar(64) NOT NULL,
|
||||
"rate_blocker" BOOLEAN NOT NULL,
|
||||
"rate_interval_start" VARCHAR(64) NOT NULL,
|
||||
"rate_fixed_fee" decimal(8,4) NOT NULL,
|
||||
"rate_recurrent_fee" decimal(8,4) NOT NULL,
|
||||
"rate_unit" VARCHAR(64) NOT NULL,
|
||||
"rate_increment" VARCHAR(64) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_rate_profiles_ids ON tp_rate_profiles (tpid);
|
||||
CREATE INDEX tp_rate_profiles_unique ON tp_rate_profiles ("tpid", "tenant", "id",
|
||||
"filter_ids", "rate_id");
|
||||
|
||||
--
|
||||
-- Table structure for table `tp_action_profiles`
|
||||
--
|
||||
|
||||
|
||||
DROP TABLE IF EXISTS tp_action_profiles;
|
||||
CREATE TABLE tp_action_profiles (
|
||||
"pk" SERIAL PRIMARY KEY,
|
||||
"tpid" varchar(64) NOT NULL,
|
||||
"tenant" varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
"blockers" varchar(64) NOT NULL,
|
||||
"schedule" varchar(64) NOT NULL,
|
||||
"target_type" varchar(64) NOT NULL,
|
||||
"target_ids" varchar(64) NOT NULL,
|
||||
"action_id" varchar(64) NOT NULL,
|
||||
"action_filter_ids" varchar(64) NOT NULL,
|
||||
"action_blockers" varchar(64) NOT NULL,
|
||||
"action_ttl" varchar(64) NOT NULL,
|
||||
"action_type" varchar(64) NOT NULL,
|
||||
"action_opts" varchar(256) NOT NULL,
|
||||
"action_path" varchar(64) NOT NULL,
|
||||
"action_value" varchar(64) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_action_profiles_ids ON tp_action_profiles (tpid);
|
||||
CREATE INDEX tp_action_profiles_unique ON tp_action_profiles ("tpid", "tenant", "id",
|
||||
"filter_ids", "action_id");
|
||||
|
||||
|
||||
DROP TABLE IF EXISTS tp_accounts;
|
||||
CREATE TABLE tp_accounts (
|
||||
"pk" SERIAL PRIMARY KEY,
|
||||
"tpid" varchar(64) NOT NULL,
|
||||
"tenant" varchar(64) NOT NULL,
|
||||
"id" varchar(64) NOT NULL,
|
||||
"filter_ids" varchar(64) NOT NULL,
|
||||
"activation_interval" varchar(64) NOT NULL,
|
||||
"weights" varchar(64) NOT NULL,
|
||||
"blockers" varchar(64) NOT NULL,
|
||||
"opts" varchar(256) NOT NULL,
|
||||
"balance_id" varchar(64) NOT NULL,
|
||||
"balance_filter_ids" varchar(64) NOT NULL,
|
||||
"balance_weights" varchar(64) NOT NULL,
|
||||
"balance_blockers" varchar(64) NOT NULL,
|
||||
"balance_type" varchar(64) NOT NULL,
|
||||
"balance_units" varchar(64) NOT NULL,
|
||||
"balance_unit_factors" varchar(64) NOT NULL,
|
||||
"balance_opts" varchar(256) NOT NULL,
|
||||
"balance_cost_increments" varchar(64) NOT NULL,
|
||||
"balance_attribute_ids" varchar(64) NOT NULL,
|
||||
"balance_rate_profile_ids" varchar(64) NOT NULL,
|
||||
"threshold_ids" varchar(64) NOT NULL,
|
||||
"created_at" TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
CREATE INDEX tp_accounts_ids ON tp_accounts (tpid);
|
||||
CREATE INDEX tp_accounts_unique ON tp_accounts ("tpid", "tenant", "id",
|
||||
"filter_ids", "balance_id");
|
||||
|
||||
--
|
||||
-- Table structure for table `versions`
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
/*
|
||||
This script will migrate CDRs from the old CGRateS tables to the new cdrs table
|
||||
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.
|
||||
*/
|
||||
|
||||
DO $$
|
||||
DECLARE
|
||||
max_cdrs bigint;
|
||||
start_id bigint;
|
||||
end_id bigint;
|
||||
step bigint;
|
||||
BEGIN
|
||||
/* You must change the step var to commit every step rows inserted */
|
||||
step := 10000;
|
||||
start_id := 0;
|
||||
end_id := start_id + step;
|
||||
select max(id) INTO max_cdrs from rated_cdrs;
|
||||
WHILE start_id <= max_cdrs
|
||||
LOOP
|
||||
--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,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.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
|
||||
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
|
||||
INNER JOIN cost_details ON rated_cdrs.cgrid = cost_details.cgrid
|
||||
WHERE cdrs_primary.usage > '0'
|
||||
AND not exists (select 1 from cdrs c where c.cgrid = cdrs_primary.cgrid)
|
||||
AND rated_cdrs.id >= start_id
|
||||
AND rated_cdrs.id < end_id
|
||||
;
|
||||
start_id = start_id + step;
|
||||
end_id = end_id + step;
|
||||
END LOOP;
|
||||
END
|
||||
$$;
|
||||
@@ -1,30 +0,0 @@
|
||||
#! /usr/bin/env sh
|
||||
|
||||
|
||||
user=$1
|
||||
if [ -z "$1" ]; then
|
||||
user="cgrates"
|
||||
fi
|
||||
|
||||
host=$2
|
||||
if [ -z "$2" ]; then
|
||||
host="localhost"
|
||||
fi
|
||||
|
||||
DIR="$(dirname "$(readlink -f "$0")")"
|
||||
|
||||
"$DIR"/create_db_with_users.sh
|
||||
|
||||
export PGPASSWORD="CGRateS.org"
|
||||
|
||||
psql -U $user -h $host -d cgrates -f "$DIR"/create_cdrs_tables.sql
|
||||
cdrt=$?
|
||||
psql -U $user -h $host -d cgrates -f "$DIR"/create_tariffplan_tables.sql
|
||||
tpt=$?
|
||||
|
||||
if [ $cdrt = 0 ] && [ $tpt = 0 ]; then
|
||||
echo "\n\t+++ CGR-DB successfully set-up! +++\n"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user