element-hq / mautrix-telegram

A Matrix-Telegram hybrid puppeting/relaybot bridge
https://matrix.to/#/#telegram:maunium.net
GNU Affero General Public License v3.0
14 stars 6 forks source link

Error while checking puppet activity #13

Closed Half-Shot closed 2 years ago

Half-Shot commented 2 years ago
[2021-11-10 10:02:09,383] [ERROR@mau.init] Error while checking: (psycopg2.errors.SyntaxError) subquery in FROM must have an alias
LINE 2: FROM (SELECT user_activity.puppet_id AS puppet_id, user_acti...
             ^
HINT:  For example, FROM (SELECT ...) [AS] foo.

[SQL: SELECT count(puppet_id) AS tbl_row_count 
FROM (SELECT user_activity.puppet_id AS puppet_id, user_activity.first_activity_ts AS first_activity_ts, user_activity.last_activity_ts AS last_activity_ts 
FROM user_activity 
WHERE (user_activity.last_activity_ts - user_activity.first_activity_ts / %(first_activity_ts_1)s) / %(param_1)s > %(param_2)s AND %(last_activity_ts_1)s - user_activity.last_activity_ts <= %(param_3)s)]
[parameters: {'first_activity_ts_1': 1000, 'param_1': 86400000, 'param_2': 0, 'last_activity_ts_1': 1636538529381.1926, 'param_3': 2592000000}]
(Background on this error at: http://sqlalche.me/e/13/f405)
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1276, in _execute_context
    self.dialect.do_execute(
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 593, in do_execute
    cursor.execute(statement, parameters)
psycopg2.errors.SyntaxError: subquery in FROM must have an alias
LINE 2: FROM (SELECT user_activity.puppet_id AS puppet_id, user_acti...
             ^
HINT:  For example, FROM (SELECT ...) [AS] foo.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/mautrix_telegram/__main__.py", line 168, in _loop_active_puppet_metric
    await self._update_active_puppet_metric()
  File "/usr/lib/python3.9/site-packages/mautrix_telegram/__main__.py", line 147, in _update_active_puppet_metric
    active_users = UserActivity.get_active_count(
  File "/usr/lib/python3.9/site-packages/mautrix_telegram/db/user_activity.py", line 82, in get_active_count
    return cls.db.execute(query.count()).scalar()
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 2235, in execute
    return connection.execute(statement, *multiparams, **params)
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1011, in execute
    return meth(self, multiparams, params)
  File "/usr/lib/python3.9/site-packages/sqlalchemy/sql/elements.py", line 298, in _execute_on_connection
    return connection._execute_clauseelement(self, multiparams, params)
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1124, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1316, in _execute_context
    self._handle_dbapi_exception(
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1510, in _handle_dbapi_exception
    util.raise_(
  File "/usr/lib/python3.9/site-packages/sqlalchemy/util/compat.py", line 182, in raise_
    raise exception
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1276, in _execute_context
    self.dialect.do_execute(
  File "/usr/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 593, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.ProgrammingError: (psycopg2.errors.SyntaxError) subquery in FROM must have an alias
LINE 2: FROM (SELECT user_activity.puppet_id AS puppet_id, user_acti...
             ^
HINT:  For example, FROM (SELECT ...) [AS] foo.

[SQL: SELECT count(puppet_id) AS tbl_row_count 
FROM (SELECT user_activity.puppet_id AS puppet_id, user_activity.first_activity_ts AS first_activity_ts, user_activity.last_activity_ts AS last_activity_ts 
FROM user_activity 
WHERE (user_activity.last_activity_ts - user_activity.first_activity_ts / %(first_activity_ts_1)s) / %(param_1)s > %(param_2)s AND %(last_activity_ts_1)s - user_activity.last_activity_ts <= %(param_3)s)]
[parameters: {'first_activity_ts_1': 1000, 'param_1': 86400000, 'param_2': 0, 'last_activity_ts_1': 1636538529381.1926, 'param_3': 2592000000}]
(Background on this error at: http://sqlalche.me/e/13/f405)