* fix 15783_not_replicated.up voip_phost_urepl_trig
lcr_rule_target update so only the correct
peering host is changed with the weight change.
* the fix is derived from 15839.up and created solely
for mr11.5/mr11.5.1
(cherry picked from commit fa6ececa59)
Change-Id: Ib525592dd55ec6c8349138236c49ea7030d58d61
* reason for this change is because the related
changes in the kamailio table get replicated to the
active node during the upgrade and that breaks outbound peer
provisioning / selection by running kamailio there
(cherry picked from commit c332fc9d9f)
Change-Id: I69416b5737cf05695cbfd1c2e4544faa8b1a2ab0
* sync RO db rework master node detection:
- preferred master node selection is now only performed when
NGCP_UPGRADE env is set
- if NGCP_UPGRADE env variable is set, the central_db_node is checked
if it's db01 then the side is picked based on "*a" or "*b" or
"sp1"/"sp2" hostname.
this logic is important because during the upgrade the sync must
be done from the db node of the same side, as otherwise old database
version and might be synced.
- mysql database is no longer synchronised to 3308 (it's already
removed from replication)
(cherry picked from commit 4d014bcdff)
Change-Id: I4ab837390dac7b1443ea454a451b491b5d70f192
Support for the new HTTPS v1 protocol. GCM doesn't exist any more.
(cherry picked from commit d75b113db8)
Change-Id: I7017e5474ef699a2dcaf6d4d7f815193a2819685
* Instead of using "set foreign_key_checks=0" before
altering voicemail_spool voicemail_users tables the
foreign key voicemail_spool.`v_s_mailboxuser_ref` is
dropped instead and re-created after the alter table operations
(same lines where "set foreign_key_checks=0" and "set
foreign_key_checks=1" were respectively.
* That addresses the changed behavior with MariaDB 10.11.6
where "alter table" statements the change columns involved
in a foreign key and potentially causing data loss are prohibited
even with "set foreign_key_checks=0".
* This change is only valid for new deployments and databases
with already applied 6425.up are not affected.
Change-Id: I2f2a85ca9f9f7d15058f41f5d8eaaec23ec501fa
(cherry picked from commit 25257f1657)
* update_sound_set_handle_parents() procedure is redesigned
to avoid "insert into select from" statements as they cause
gap locks when run concurrently and access the same index
rows.
*** WAITING FOR THIS LOCK TO BE GRANTED:
RECORD LOCKS space id 6594 page no 6 n bits 56 index parent_id_idx
of table `provisioning`.`voip_sound_sets` trx id 400852
lock mode S locks rec but not gap waiting
the "insert into select from" statements are reworked:
the "select from/with recursive" parts are now declared cursors
and the data is inserted inside the opened cursor loop (if any).
this way the selects are not causing exclusive gap locks.
Change-Id: I35ec28a33ecca42de898e67a2709eda4364e5f95
(cherry picked from commit 4017d3519c)
(cherry picked from commit 9c0fd6e4a1889ddbcbb3a90521dd3e2d3bfe73a5)
There are 2 .up scripts that modify voip_allowed_ip_groups.ipnet
15702.up - modifies it to varchar(43)
15710.up - modifies it to varchar(46)
Because in 15710.up was backported into mr9.5 but is missing in mr10.5,
existing upgrades from mr9.5 -> mr10.5 apply 15702 after 15710.up,
effectively downgrading the column to varchar(46).
This .up script fixes the scenario and also the .down script modifies
the column also to varchar(46) to respect the previous 15710.up the
sets it to varchar(46), so to achieve the consistent state.
Change-Id: If14917ef437de3abf46b1900f68c9cc3a9a4b947
(cherry picked from commit 9c6ef86372)
* use NEW.id instead of LAST_INSERT_ID() for INSERTs
into kamailio.lcr_rule_target as lcr_gw.id is now
equal to voip_peer_hosts.id
Change-Id: I5d905ddcc15cff2e72b64555a7393ec0c6dfea04
(cherry picked from commit 12ab0a6618)
* the relation between provisioning.voip_peer_hosts and kamailio.lcr_gw
is now based on id<>id instead of id<>flags. That is to address an
issue where code/components that queries kamailio.lcr_gw
or related tables like sems_registrations use voip_peer_hosts.id
and fail because there is no such record, that also frees up
lcr_gw.flags for the intended use to define peereing server attributes
and can be used in the future development.
* adjust voip_phost_crepl/urepl/drepl triggers that maintain
kamailio.lcr_gw table state to INSERT new records into lcr_gw
with forced 'id' as NEW.id, use lcr.gw in UPDATE/DELETE and no
longer change the lcr_gw.flags column
* update kamailio.lcr_gw.id to be equal 'flags' (where flags != 0)
* update kamailio.lcr_gw.flags set all to 0
Change-Id: Ied6843ef2aaa7b25af2627797f0d57c75d8f6094
(cherry picked from commit aec9db0018)
* cleanup potential leftover of method_callid_idx in
kamailio.acc that was created by the "wrong order"
issue where 15761.up (replicated) was applied first
(by replication) and then 15739_not_replicated.up
was applied afterwards (with ngcp-update-db-schema)
* this solves the mr10.5.x to mr11.5.x upgrade scenario
Change-Id: I0c8dc07d84e2fc5134b7f7a05212d07bb41f031c
(cherry picked from commit ed2d3006b9)
It was added to my.cnf in templates.git:3e304fb6 so add it to mariadb
startup options.
Change-Id: I9ee8b46a75390d286e6d756eb1c1f92785d8c4ab
(cherry picked from commit cf6f52f592)
It was initially added to reduce the diff on a review but now we
automatically merge generated schemes.
So no need to do such substitution besides it's dangerous to do such
manipulation on sql file.
Change-Id: I1e78ebe85e731f6be2f84afdf53c3befbb8d55ef
A new subscriber preference has been introduced to control the
behavior on a termination of call legs in the early dialog stage.
Name: `cloud_pbx_hunt_cancel_mode`
Values: `bye`, `cancel` (default one).
Change-Id: I8f14f5d70068311fa7444ea223305fd7f542d37d
* convert unique key set_handle_id_idx (set_id, handle_id)
to non-unique to avoid deadlocks because of forced gap locks
in INSERT and DELETE concurrent operations (when such occur)
* "update_sound_set_handle_parents" procedure:
- avoid IODKU and instead calculate entries to skip on the fly.
- WITH and WITHOUT u_handle_id is now split into 2 separate
IF blocks as otherwise "AND handle_id = u_handle_id OR 1:1"
caused full handles update even if u_handle_id was there
* fix a typo for "TRIGGER voip_sound_files_create_trig AFTER INSERT"
which wrongly had "AFTER UPDATE"
* fix warnings of 'Truncated DOUBLE' coming from using IF evaluation
variable as boolean, IF(LENGTH(cte.parent_chain) > 1 addresses
it.
Change-Id: Id6b6ab66de53c2ccd95f28d23e5e2b97ece89923
* the ngcp.timezone table is not replicated and hence
the script must be also not replicated.
- the script is renamed to _not_replicated
- the ALTER TABLE ADD COLUMN is enhanced with
"IF NOT EXISTS" to mitigate scenarios where
somebody manually added the column on the other node,
and to ensure that the upgrades are safe
Change-Id: Ic44f76b5f3f43ae4124cebad30d559224fa90b31
* this addresses an issue caused by 15739_not_replicated script
that when not applied on the other replicated node, causes
this script to break replication. "drop index if not exists"
in this script addresses the issue and makes it so the both
scenarios are covered.
Change-Id: I8713d38ce3c4eab76b1d0b28adc6c0bd4c8260e1
* new column expose_to_custeomr in billing.ncos_levels
* new column expose_to_custeomr in billing.ncos_sets
Change-Id: Ieecd1a5d1e84fe001b89ea7f6e53ed531d25638a
* on update_sound_set_handle_parents() call delete
orphaned entries from voip_sound_set_handle_parents
do not have entries in the voip_sound_sets
* update_sound_set_handle_parents() improvements:
- when u_sound_set_id is not null:
= delete only child entries (before, also the parent entries
were removed)
= on insert, on duplicate update parent_set_id and parent_chain
to effectively skip entries that already exist and only
insert new entries
Change-Id: Id0881d9f79ddd05bc5be67d1f181ea809e43e180
The following preferences are now available for resellers
- concurrent_max_total
- concurrent_max_out_total
- concurrent_max
- concurrent_max_out
- concurrent_max_in_total
- concurrent_max_in
Change-Id: Idac41f416ac1c46244cf09c03f335f02a6f776f7
New table reseller_preferences inside provisioning created.
The new table is liked to the already existing provisioning.voip_reseller_preferences.
This commit includes the trigger in order to reflect changes from
provisioning.voip_reseller_preferences into provisioning.reseller_preferences.
Change-Id: I4a5e36813a30d902a817b2545c80c668cbf9663b
Instead of using the script which is installed - use the one from
review. If it's missing for some reason - try installed one.
So you can see if there is any problem with build tools when you create a
review not after you merged it.
Change-Id: I9725db44f94c77099bdc9e50db41596fb2f29061