On 08/12/2010 12:33 AM, Konrad Meier wrote:
Yes, if think it is triggered by the size of the database. My hlr.sqlite is about 20MB big an is growing every day about 2MB. If I take a look at the Tables, I can see that the only big table is "Counters". Is there any reason why the table "Counters" is growing this fast?
In src/bsc_hack.c we are scheduling to sync the "Counters" every 60 seconds you might want to increase the define as a hacky workaround.
-) Figure out why we are stalling (rw locks inside sqlite?) -) Create an index for the sqlite databases... (proof it is making things faster with a standalone benchmark having the same pattern as bsc_hack in your network...) -) Making the DB interface asynchronous (send and forget, send and async reply) -) Maybe go so far to use TCAP/MAP and implement a proper VLR module..
I will see what I can do.
It would be very nice to have a histogram of which functions block, is it everything, just one query or really the write?