siptrace module is still broken. would it be high time to revert back
to 5.2 level and then make a new commit when the problem is fixed and
fix properly tested?
-- Juha
### Description
Current kamailio package (checked via RPM) is contains lot of modules. Some of this is not important to include in every kamailio installation. May be create own packages for this modules and other in next 5.3 branch?
Modules examples:
```
benchmark.so
db_cluster.so
db_text.so
rtpengine.so
rtpproxy.so
sipcapture.so
siptrace.so
sipt.so
sms.so
smsops.so
ss7ops.so
```
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/1862
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [x] PR should be backported to stable branches
- [x] Tested changes locally
- [] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
9757bb8c0e2fea5173f4fa3dd7798d61759f04af introduced a memory leak due to not cleaning all the ucontacts created at get_urecord() so every time that there are expired contacts in the db we will leave some ucontacts in shared mem and will be never free
This only happens on DB_ONLY mode
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/1947
-- Commit Summary --
* usrloc: udomain_contact_expired_cb fix memory leak
-- File Changes --
M src/modules/usrloc/udomain.c (4)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/1947.patchhttps://github.com/kamailio/kamailio/pull/1947.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/1947
Module: kamailio
Branch: master
Commit: db89b4baca48c96df613d441703b63de3522e6d5
URL: https://github.com/kamailio/kamailio/commit/db89b4baca48c96df613d441703b63d…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2019-05-06T16:31:53+02:00
modules: readme files regenerated - dialplan ... [skip ci]
---
Modified: src/modules/dialplan/README
---
Diff: https://github.com/kamailio/kamailio/commit/db89b4baca48c96df613d441703b63d…
Patch: https://github.com/kamailio/kamailio/commit/db89b4baca48c96df613d441703b63d…
---
diff --git a/src/modules/dialplan/README b/src/modules/dialplan/README
index c5bdaea8eb..3b89fbd7da 100644
--- a/src/modules/dialplan/README
+++ b/src/modules/dialplan/README
@@ -55,6 +55,7 @@ Luis Martin
5.12. fetch_rows (int)
5.13. match_dynamic (int)
5.14. append_branch (int)
+ 5.15. reload_delta (int)
6. Functions
@@ -89,11 +90,12 @@ Luis Martin
1.12. Set fetch_rows parameter
1.13. Set match_dynamic parameter
1.14. Set append_branch parameter
- 1.15. dp_replace usage
- 1.16. dp_match usage
- 1.17. dp_translate usage
+ 1.15. Set reload_delta parameter
+ 1.16. dp_replace usage
+ 1.17. dp_match usage
1.18. dp_translate usage
- 1.19. Example of rules
+ 1.19. dp_translate usage
+ 1.20. Example of rules
Chapter 1. Admin Guide
@@ -123,6 +125,7 @@ Chapter 1. Admin Guide
5.12. fetch_rows (int)
5.13. match_dynamic (int)
5.14. append_branch (int)
+ 5.15. reload_delta (int)
6. Functions
@@ -223,6 +226,7 @@ Chapter 1. Admin Guide
5.12. fetch_rows (int)
5.13. match_dynamic (int)
5.14. append_branch (int)
+ 5.15. reload_delta (int)
5.1. db_url (string)
@@ -393,6 +397,23 @@ modparam("dialplan", "match_dynamic", 1)
modparam("dialplan", "append_branch", 0)
...
+5.15. reload_delta (int)
+
+ The number of seconds that have to be waited before executing a new
+ reload of dialplan rules. By default there is a rate limiting of
+ maximum one reload in five seconds.
+
+ If set to 0, no rate limit is configured. Note carefully: use this
+ configuration only in tests environments because executing two dialplan
+ reloads at the same time can cause to kamailio to crash.
+
+ Default value is “5”.
+
+ Example 1.15. Set reload_delta parameter
+...
+modparam("dialplan", "reload_delta", 1)
+...
+
6. Functions
6.1. dp_replace(dpid, inval, outvar)
@@ -423,7 +444,7 @@ modparam("dialplan", "append_branch", 0)
This function can be used from ANY_ROUTE.
- Example 1.15. dp_replace usage
+ Example 1.16. dp_replace usage
...
dp_replace("240", "$rU", "$var(newru)");
xlog("'$rU' was translated to '$var(newru)'\n");
@@ -450,7 +471,7 @@ dp_replace("240", "+49$rU", "$var(newval)");
This function can be used from ANY_ROUTE.
- Example 1.16. dp_match usage
+ Example 1.17. dp_match usage
...
dp_match("240", "+49$rU");
xlog("the attributes associated with '+49$rU' are '$var(attrs)'\n");
@@ -491,13 +512,13 @@ xlog("the attributes associated with '+49$rU' are '$var(attrs)'\n");
This function can be used from ANY_ROUTE.
- Example 1.17. dp_translate usage
+ Example 1.18. dp_translate usage
...
dp_translate("240", "$ruri.user/$avp(s:dest)");
xlog("translated to var $avp(s:dest) \n");
...
- Example 1.18. dp_translate usage
+ Example 1.19. dp_translate usage
...
$avp(s:src) = $ruri.user;
dp_translate("$var(x)", "$avp(s:src)/$var(y)");
@@ -507,7 +528,8 @@ xlog("translated to var $var(y) \n");
6.4. dp_reload()
Reload the translation rules from the database. Note that there is a
- rate limiting of maximum one reload in five seconds.
+ rate limiting defined by 'reload_delta' paramenter. By default is
+ allowed maximum one reload in five seconds.
Name: dp_reload
@@ -571,7 +593,7 @@ xlog("translated to var $var(y) \n");
Some sample records from a dialplan table are presented in the next
figure.
- Example 1.19. Example of rules
+ Example 1.20. Example of rules
...
dpid: 1
pr: 1
<!-- Kamailio Pull Request Template -->
<!--
IMPORTANT:
- for detailed contributing guidelines, read:
https://github.com/kamailio/kamailio/blob/master/.github/CONTRIBUTING.md
- pull requests must be done to master branch, unless they are backports
of fixes from master branch to a stable branch
- backports to stable branches must be done with 'git cherry-pick -x ...'
- code is contributed under BSD for core and main components (tm, sl, auth, tls)
- code is contributed GPLv2 or a compatible license for the other components
- GPL code is contributed with OpenSSL licensing exception
-->
#### Pre-Submission Checklist
<!-- Go over all points below, and after creating the PR, tick all the checkboxes that apply -->
<!-- All points should be verified, otherwise, read the CONTRIBUTING guidelines from above-->
<!-- If you're unsure about any of these, don't hesitate to ask on sr-dev mailing list -->
- [ ] Commit message has the format required by CONTRIBUTING guide
- [ ] Commits are split per component (core, individual modules, libs, utils, ...)
- [ ] Each component has a single commit (if not, squash them into one commit)
- [ ] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [ ] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
<!-- Go over all points below, and after creating the PR, tick the checkboxes that apply -->
- [ ] PR should be backported to stable branches
- [ ] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
<!-- Describe your changes in detail -->
In commit 99d5da8d595961063249f871a5d150474fa6f317 a mechanism for basic safety in case of concurent rpc reload were added. This works fine but it is limiting our test scenarios where multiple changes should happen quickly.
The new dialplan paramenter reload_delta allows everyone to configure rpc reload rate limit to the preferred number of seconds.
In case the parameter is not specified. the default value is 5 seconds.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/1946
-- Commit Summary --
* dialplan: add reload_delta parameter
-- File Changes --
M src/modules/dialplan/dialplan.c (7)
M src/modules/dialplan/doc/dialplan_admin.xml (32)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/1946.patchhttps://github.com/kamailio/kamailio/pull/1946.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/1946
Module: kamailio
Branch: master
Commit: 926a97f4eb741401b193fb711e6c439555c646ab
URL: https://github.com/kamailio/kamailio/commit/926a97f4eb741401b193fb711e6c439…
Author: Marco Capetta <mcapetta(a)sipwise.com>
Committer: Victor Seva <linuxmaniac(a)torreviejawireless.org>
Date: 2019-05-06T16:29:48+02:00
dialplan: add reload_delta parameter
- make the rate limit of maximum allowed dialplan reload configurable
using the new 'reload_delta' paramenter.
---
Modified: src/modules/dialplan/dialplan.c
Modified: src/modules/dialplan/doc/dialplan_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/926a97f4eb741401b193fb711e6c439…
Patch: https://github.com/kamailio/kamailio/commit/926a97f4eb741401b193fb711e6c439…
---
diff --git a/src/modules/dialplan/dialplan.c b/src/modules/dialplan/dialplan.c
index d8685d52f2..20b7744e21 100644
--- a/src/modules/dialplan/dialplan.c
+++ b/src/modules/dialplan/dialplan.c
@@ -87,6 +87,7 @@ dp_param_p default_par2 = NULL;
int dp_fetch_rows = 1000;
int dp_match_dynamic = 0;
int dp_append_branch = 1;
+int dp_reload_delta = 5;
static time_t *dp_rpc_reload_time = NULL;
@@ -105,6 +106,7 @@ static param_export_t mod_params[]={
{ "fetch_rows", PARAM_INT, &dp_fetch_rows },
{ "match_dynamic", PARAM_INT, &dp_match_dynamic },
{ "append_branch", PARAM_INT, &dp_append_branch },
+ { "reload_delta", PARAM_INT, &dp_reload_delta },
{0,0,0}
};
@@ -182,6 +184,9 @@ static int mod_init(void)
if(dp_fetch_rows<=0)
dp_fetch_rows = 1000;
+ if(dp_reload_delta<0)
+ dp_reload_delta = 5;
+
if(init_data() != 0) {
LM_ERR("could not initialize data\n");
return -1;
@@ -619,7 +624,7 @@ static void dialplan_rpc_reload(rpc_t* rpc, void* ctx)
rpc->fault(ctx, 500, "Not ready for reload");
return;
}
- if(*dp_rpc_reload_time!=0 && *dp_rpc_reload_time > time(NULL) - 5) {
+ if(*dp_rpc_reload_time!=0 && *dp_rpc_reload_time > time(NULL) - dp_reload_delta) {
LM_ERR("ongoing reload\n");
rpc->fault(ctx, 500, "ongoing reload");
return;
diff --git a/src/modules/dialplan/doc/dialplan_admin.xml b/src/modules/dialplan/doc/dialplan_admin.xml
index 371120fac4..e524524fb8 100644
--- a/src/modules/dialplan/doc/dialplan_admin.xml
+++ b/src/modules/dialplan/doc/dialplan_admin.xml
@@ -410,6 +410,33 @@ modparam("dialplan", "append_branch", 0)
</example>
</section>
+ <section id="dialplan.p.reload_delta">
+ <title><varname>reload_delta</varname> (int)</title>
+ <para>
+ The number of seconds that have to be waited before executing a new reload
+ of dialplan rules. By default there is a rate limiting of maximum one reload
+ in five seconds.
+ </para>
+ <para>
+ If set to 0, no rate limit is configured. Note carefully: use this configuration
+ only in tests environments because executing two dialplan reloads at the same
+ time can cause to kamailio to crash.
+ </para>
+ <para>
+ <emphasis>
+ Default value is <quote>5</quote>.
+ </emphasis>
+ </para>
+ <example>
+ <title>Set <varname>reload_delta</varname> parameter</title>
+ <programlisting format="linespecific">
+...
+modparam("dialplan", "reload_delta", 1)
+...
+ </programlisting>
+ </example>
+ </section>
+
</section>
@@ -620,8 +647,9 @@ xlog("translated to var $var(y) \n");
<function moreinfo="none">dp_reload()</function>
</title>
<para>
- Reload the translation rules from the database. Note that there is
- a rate limiting of maximum one reload in five seconds.
+ Reload the translation rules from the database. Note that there is a
+ rate limiting defined by 'reload_delta' paramenter. By default is allowed
+ maximum one reload in five seconds.
</para>
<para>
Name: <emphasis>dp_reload</emphasis>