[sr-dev] UAC registrations - notes for the archive

Olle E. Johansson oej at edvina.net
Wed Feb 25 08:50:36 CET 2015


Yesterday I used the UAC module to register 10.000 accounts while testing a platform. I guess this is something it wasn't built for. I just wanted to add some notes to the archives about this:

- The module seems to read all 10.000 entries from the database in one go and then add them to shared memory.
  It may be good for the future to limit the amounts of records for each read and take it in multiple batches (other modules
  have this functionality).

- The module registers all at once, it's very fast. I think we could add a throttle and register in batches in the future.

- The error handling seems very simple. If something goes bad, we disable the account. I am not sure if the
  TM module will handle failover and retries if we get a 503 with retry-after. There's no code in uac_reg.c for it.

- There's no different handling of local timeouts and remote 408s. Again, maybe the TM module handles some
  of that. 

- Maybe we need an event route for disabling/enabling registrations.

I created a branch and added counter support for all database entries, disabled entries and active entries (working registrations). Pull request will come :-)

All in all, while this is not a normal use of it, I think it is a very good tool for testing of new platforms. As usual - Kamailio rocks!

/O


More information about the sr-dev mailing list