The unified diff between revisions [83b5270b..] and [5587f68e..] is displayed below. It can also be downloaded as a raw diff.
This diff has been restricted to the following files: 'database.cc'
#
#
# patch "database.cc"
# from [83c0e4fe4b672da030bc50966c118ac0c2c98017]
# to [4a6486b38a02fec9b281ae4a665f209bb9f3440e]
#
============================================================
--- database.cc 83c0e4fe4b672da030bc50966c118ac0c2c98017
+++ database.cc 4a6486b38a02fec9b281ae4a665f209bb9f3440e
@@ -757,7 +757,9 @@ database::space_usage(string const & tab
database::space_usage(string const & table, string const & concatenated_columns)
{
results res;
- string query = "SELECT SUM(LENGTH(" + concatenated_columns + ")) FROM " + table;
+ // COALESCE is required since SUM({empty set}) is NULL.
+ // the sqlite docs for SUM suggest this as a workaround
+ string query = "SELECT COALESCE(SUM(LENGTH(" + concatenated_columns + ")), 0) FROM " + table;
fetch(res, one_col, one_row, query.c_str());
return lexical_cast<unsigned long>(res[0][0]);
}