-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3559/#review11973
-----------------------------------------------------------



/trunk/cdr/cdr_sqlite3_custom.c
<https://reviewboard.asterisk.org/r/3559/#comment21884>

    So, I'm definitely a fan of using the busy timeout rather than this 
arbitrary polling (which, as the comment suggests, is ... not good).
    
    I do think we should be handling the return code from sqlite3_exec here 
however, rather than simply relying on something being in error:
    
    res = sqlite3_exec(db, sql, NULL, NULL, &error);
    
    if (res != SQLITE_OK) {
        ast_log(LOG_ERROR, "%s. SQL: %s.\n", error, sql);
        sqlite3_free(error);
    }



/trunk/cel/cel_sqlite3_custom.c
<https://reviewboard.asterisk.org/r/3559/#comment21885>

    And handle the error here as well



/trunk/main/db.c
<https://reviewboard.asterisk.org/r/3559/#comment21886>

    This one is the only usage that concerns me, simply because small changes 
in the AstDB code could have unforeseen effects.
    
    Have you run into a situation where the AstDB had similar problems under 
high load?


- Matt Jordan


On May 22, 2014, 1:29 p.m., Igor Goncharovsky wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/3559/
> -----------------------------------------------------------
> 
> (Updated May 22, 2014, 1:29 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Bugs: ASTERISK-23766
>     https://issues.asterisk.org/jira/browse/ASTERISK-23766
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> We have faced situation when using CDR and CEL by sqlite3 modules. With 
> system having high load (~100 concurrent calls created by sipp) we found many 
> cdr and cel records missed. There is special finction in sqlite3, that make 
> able to fix this situation - sqlite3_wait_timeout, that also can replace 
> awful code cdr_sqlite3 ad cel_sqlite3 modules. Also this function can be used 
> for aastdb and res_config_sqlite3 to avoid missed writes to sqlite db.
> 
> 
> Diffs
> -----
> 
>   /trunk/res/res_config_sqlite3.c 414121 
>   /trunk/main/db.c 414121 
>   /trunk/cel/cel_sqlite3_custom.c 414121 
>   /trunk/cdr/cdr_sqlite3_custom.c 414121 
> 
> Diff: https://reviewboard.asterisk.org/r/3559/diff/
> 
> 
> Testing
> -------
> 
> Adding sqlite3_wait_timeout already used as patch in AskoziaPBX and show good 
> result.
> 
> 
> Thanks,
> 
> Igor Goncharovsky
> 
>

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to