summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/asterisk/astdb.h9
-rw-r--r--main/db.c2
2 files changed, 2 insertions, 9 deletions
diff --git a/include/asterisk/astdb.h b/include/asterisk/astdb.h
index 1eff7908c..8a870ae83 100644
--- a/include/asterisk/astdb.h
+++ b/include/asterisk/astdb.h
@@ -50,14 +50,7 @@ int ast_db_get(const char *family, const char *key, char *value, int valuelen);
*/
int ast_db_get_allocated(const char *family, const char *key, char **out);
-/*! \brief Store value addressed by family/key
- *
- * Try to insert a row first. If a row already exists with the given key
- * we will then perform an update on this row.
- *
- * The attempt here is to increase disk I/O performance by not deleting an existing
- * row and then inserting a new row when one already exists.
- */
+/*! \brief Store value addressed by family/key */
int ast_db_put(const char *family, const char *key, const char *value);
/*! \brief Delete entry in astdb */
diff --git a/main/db.c b/main/db.c
index 80af29f75..5a0f17434 100644
--- a/main/db.c
+++ b/main/db.c
@@ -119,7 +119,7 @@ static void db_sync(void);
#define DEFINE_SQL_STATEMENT(stmt,sql) static sqlite3_stmt *stmt; \
const char stmt##_sql[] = sql;
-DEFINE_SQL_STATEMENT(put_stmt, "INSERT OR IGNORE INTO astdb (key, value) VALUES (?1, ?2); UPDATE astdb SET value=?2 WHERE changes()=0 AND key=?1")
+DEFINE_SQL_STATEMENT(put_stmt, "INSERT OR REPLACE INTO astdb (key, value) VALUES (?, ?)")
DEFINE_SQL_STATEMENT(get_stmt, "SELECT value FROM astdb WHERE key=?")
DEFINE_SQL_STATEMENT(del_stmt, "DELETE FROM astdb WHERE key=?")
DEFINE_SQL_STATEMENT(deltree_stmt, "DELETE FROM astdb WHERE key || '/' LIKE ? || '/' || '%'")