• Adrian Negreanu's avatar
    sqlite3: speedup the SELECTs · d7f9bbed
    Adrian Negreanu authored
    The uniqueness of rows is maintained by first doing a select.
    In case the item is not found, it's INSERTed.
    
    This is done for files, refids, params and includes, data
    that is not unique by itself, like cross-references for example.
    In other words, you can have many memberdefs in one file,
    but you can only have one cross-reference between two functions
    since the reference location is unique.
    
    So, when SELECTing files and refids, use the file name and refids
    as primary key since that's the fastest way to do it.
    
    Also 'OR REPLACE' not necessary in 'INSERT OR REPLACE'.
    Signed-off-by: 's avatarAdrian Negreanu <adrian.m.negreanu@intel.com>
    d7f9bbed
sqlite3gen.cpp 40.4 KB