Skip to content

Commit 1c6c9d5

Browse files
authored
Merge pull request #14 from vector-im/tadzik/speed-up-rmau-calculations
Simplify the user activity query
2 parents 83c6f73 + 028a1f2 commit 1c6c9d5

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

mautrix_telegram/db/user_activity.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
# along with this program. If not, see <https://www.gnu.org/licenses/>.
1717
from typing import Optional, Iterable
1818

19-
from sqlalchemy import Column, Integer, BigInteger
19+
from sqlalchemy import Column, Integer, BigInteger, func, select
2020
from sqlalchemy.ext.hybrid import hybrid_property
2121

2222
from mautrix.util.db import Base
@@ -76,7 +76,7 @@ def activity_days(self):
7676
def get_active_count(cls, min_activity_days: int, max_activity_days: Optional[int]) -> int:
7777
current_ms = time.time() * 1000
7878

79-
query = cls.t.select().where(cls.activity_days > min_activity_days)
79+
query = select([func.count(UserActivity.puppet_id)]).where(cls.activity_days > min_activity_days)
8080
if max_activity_days is not None:
8181
query = query.where((current_ms - cls.last_activity_ts) <= (max_activity_days * ONE_DAY_MS))
82-
return cls.db.execute(query.count()).scalar()
82+
return cls.db.execute(query).scalar()

0 commit comments

Comments
 (0)