]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
Reduce startup time for cdr_tds with large CDR tables.
authorSean Bright <sean@malleable.com>
Tue, 8 Jun 2010 15:28:49 +0000 (15:28 +0000)
committerSean Bright <sean@malleable.com>
Tue, 8 Jun 2010 15:28:49 +0000 (15:28 +0000)
Since we are just checking for table existence, add a WHERE clause that will
return no rows but will raise an error if the table doesn't exist.

(closes issue #17380)
Reported by: kkwong
Patches:
      issue17380-01.patch uploaded by seanbright (license 71)
Tested by: kkwong

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@269006 65c4cc65-6c06-0410-ace0-fbb531ad65f3

cdr/cdr_tds.c

index 4e44e4ee1cf6e8f5fa6bcce277816990805bec74..6e2c4412b08b7e67c3a151af128b0891bb68c1f7 100644 (file)
@@ -477,7 +477,7 @@ static int mssql_connect(void)
                goto connect_fail;
        }
 
-       snprintf(query, sizeof(query), "SELECT 1 FROM %s", table);
+       snprintf(query, sizeof(query), "SELECT 1 FROM %s WHERE 1 = 0", table);
 #ifdef FREETDS_PRE_0_62
        if ((tds_submit_query(tds, query) != TDS_SUCCEED) || (tds_process_simple_query(tds, &result_type) != TDS_SUCCEED || result_type != TDS_CMD_SUCCEED))
 #else