Hello,
another edition of FOSDEM is approaching, about 2 weeks left:
- https://fosdem.org/2017/
Couple of devs and many Kamailio friends will be around.
Like past year, there is a Realtime Communications devroom, this edition
on Sunday. Very interesting presentation for our ecosystem: Olle giving
a presentation about IPv4/IPv6, Inaki introducing its SFU media server
project, Jose talking about JsSIP, Daniel debating about fundraising
FreeRTC, Lorenzo with Janus SIP-WebRTC gateway, the other Lorenzo with
Homer Sipcature, Saul with Jitsi, Dan with cgrates, Matt with Asterisk,
Giovanni with FreeSwitch... Schedule at:
- https://fosdem.org/2017/schedule/track/real_time_communications/
On Sunday morning, part of Lua devroom, I will present about using Lua
for building RTC services with Kamailio:
- https://fosdem.org/2017/schedule/track/lua/
- https://fosdem.org/2017/schedule/event/luartcserviceskamailio/
During the past editions we organized a dinner on Saturday evening.
Shall we attempt to do it again in advance this year? Or should we do it
on spot based on the weather and mood at the end of Saturday?
Cheers,
Daniel
--
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - Mar 6-8 (Europe) and Mar 20-22 (USA) - www.asipto.com
Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
We do have this ``presence`` module parameters:
```
modparam("presence", "subs_db_mode", 3)
modparam("presence", "publ_cache", 0)
modparam("presence", "db_table_lock_type", 0)
modparam("presence", "notifier_processes", 3)
modparam("presence", "send_fast_notify", 0)
```
And we are getting this errors several times per second
```
proxy[9056]: ERROR: db_mysql [km_dbase.c:602]: db_mysql_start_transaction(): transaction
already started
proxy[9056]: ERROR: presence [notify.c:1365]: publ_notify_notifier(): in start_transaction
proxy[9056]: ERROR: presence [presentity.c:1132]: update_presentity(): updating watcher
records
proxy[9056]: ERROR: presence [publish.c:462]: handle_publish(): when updating presentity
```
This logs are from kamailio 4.4.4 but I think the problem is in master too.
I do see that publ_notify_notifier() has a call to start_transaction()
https://github.com/kamailio/kamailio/blob/master/src/modules/presence/notif…
but we are already inside a transaction either at
https://github.com/kamailio/kamailio/blob/master/src/modules/presence/prese…
or
https://github.com/kamailio/kamailio/blob/master/src/modules/presence/prese…
--
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/960
* publ_notify_notifier() and mark_presentity_for_delete() are
called inside a already created transaction
* adding transaction handle for msg_presentity_clean()
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/961
-- Commit Summary --
* presence: remove transaction creation from publ_notify_notifier() and mark_presentity_for_delete()
-- File Changes --
M src/modules/presence/notify.c (24)
M src/modules/presence/presentity.c (24)
M src/modules/presence/publish.c (26)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/961.patchhttps://github.com/kamailio/kamailio/pull/961.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/961
### Description
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
When trying to use a htable with column names different than globally configured, Kamailio won't start.
### Troubleshooting
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
* Take Kamailio with a sample configuration.
* Enable htable and db_mysql module.
* In your Kamailio database, execute the following statements:
`create table htable_different like htable;`
` alter table htable_different change key_name foo_name varchar(64) not null default '';`
* Now you have a table looking almost as the sample htable table, but with a changed column name for the key name column.
* Add the following configuration parameters:
`modparam("htable", "db_url", "mysql://user:password@127.0.0.1/ser")`
`modparam("htable", "htable", 'foo=>size=4;dbtable=htable_different;cols="foo_name,key_value";')`
* Try starting Kamailio. It will fail with the following error:
` ERROR: db_mysql [km_dbase.c:128]: db_mysql_submit_query(): driver error on query: Unknown column 'key_name' in 'order clause' (1054)`
#### Debugging Data
When running an an ngrep trace while starting Kamailio, you can see the following statement:
```
T 2017/01/24 22:29:58.603428 127.0.0.1:53843 -> 127.0.0.1:3306 [AP]
I....select `foo_name`,`key_value` from `htable_different` order by key_name
T 2017/01/24 22:29:58.603555 127.0.0.1:3306 -> 127.0.0.1:53843 [AP]
4......#42S22Unknown column 'key_name' in 'order clause'
```
So when trying to read from the database, it correctly uses the changed column name in the select part, but uses the default column name in the order by part of the query.
### Additional Information
* **Kamailio Version** - output of `kamailio -v`
```
version: kamailio 4.4.5 (x86_64/linux)
flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, Q_MALLOC, F_MALLOC, TLSF_MALLOC, DBG_SR_MEMORY, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 8MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: unknown
compiled with gcc 4.9.2
```
* **Operating System**:
<!--
Details about the operating system, the type: Linux (e.g.,: Debian 8.4, Ubuntu 16.04, CentOS 7.1, ...), MacOS, xBSD, Solaris, ...;
Kernel details (output of `uname -a`)
-->
```
Debian 8.6
Linux osboxes 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03) x86_64 GNU/Linux
```
--
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/948
I am not a big fan of too many packages either (on the other hand I mainly install from git), but there are also cases when a module from a group has plenty of dependencies that one could think of why installing them if needing only another module from a group.
Is there a recommendation from Debian in similar cases? I was trying to analyze on this topic in the past and it seems that other apps/projects with modules have typically one package per module. I noticed that for PHP, with the typical modules I use there (php mysql, gd, curl, ...).
Maybe we should open an issue to debate the packaging. You can propose a grouping that you think it is the best and the others can contribute from there.
--
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/commit/71d42ee8d7ad2bb4e00b460276e4853…
@lazedo @miconda reverted. But having more and more debs for single modules is not a good idea in my opinion. We should reach to a balance between dependences and number of module packages
--
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/commit/e3297bccc97ddc4349bcf69de59eb33…
@lazedo @miconda reverted. But having more and more debs for single modules is not a good idea in my opinion. We should reach to a balance between dependences and number of module packages
--
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/commit/71d42ee8d7ad2bb4e00b460276e4853…
I see in the Makefile that kazoo depends on more libs, not only rabbitmq. Having it packaged alone is probably better.
--
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/commit/71d42ee8d7ad2bb4e00b460276e4853…