From: Holger Weiss Date: Thu, 21 Feb 2019 22:50:16 +0000 (+0100) Subject: mod_mam_sql: Improve check for empty archive X-Git-Tag: 19.02~21 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f63dcdb790232e95433f0b747fa3634e1ad4fe57;p=ejabberd mod_mam_sql: Improve check for empty archive Avoid counting the messages of an archive to check whether it's empty. --- diff --git a/src/mod_mam_sql.erl b/src/mod_mam_sql.erl index 48112842c..dee2cd7c7 100644 --- a/src/mod_mam_sql.erl +++ b/src/mod_mam_sql.erl @@ -268,15 +268,13 @@ export(_Server) -> is_empty_for_user(LUser, LServer) -> case ejabberd_sql:sql_query( LServer, - ?SQL("select @(count(*))d from archive" - " where username=%(LUser)s and %(LServer)H")) of - {selected, [{Res}]} -> - case Res of - 0 -> true; - _ -> false - end; - _ -> false - end. + ?SQL("select @(1)d from archive" + " where username=%(LUser)s and %(LServer)H limit 1")) of + {selected, [{1}]} -> + false; + _ -> + true + end. is_empty_for_room(LServer, LName, LHost) -> LUser = jid:encode({LName, LHost, <<>>}),