You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue Summary
When a service generate a lot of alerts API Key usage counter going out of range on Postgres data base.
Environment
OS: Linux
API version: [eg. 6.8.1]
Deployment: self-hosted
For self-hosted, WSGI environment: [eg. nginx/uwsgi, apache/mod_wsgi]
Database: Postgres
Server config:
Auth enabled: Yes
Auth provider: OpenID
server version 9.0.1
To Reproduce
Steps to reproduce the behavior:
generate over 2147483647 alert using one API Key
generate additional alert
See error (include command output)
2024-08-06 08:38:33,854 - alerta.app[7784]: ERROR - integer out of range
[in /app/./alerta/exceptions.py:126]
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1484, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1469, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "/usr/local/lib/python3.9/site-packages/flask_cors/decorator.py", line 128, in wrapped_function
resp = make_response(f(*args, **kwargs))
File "/app/./alerta/auth/decorators.py", line 42, in wrapped
key_info = ApiKey.verify_key(key)
File "/app/./alerta/models/key.py", line 165, in verify_key
db.update_key_last_used(key)
File "/app/./alerta/database/backends/postgres/base.py", line 1065, in update_key_last_used
return self._updateone(update, (key, key))
File "/app/./alerta/database/backends/postgres/base.py", line 1632, in _updateone
cursor.execute(query, vars)
File "/usr/local/lib/python3.9/site-packages/psycopg2/extras.py", line 312, in execute
returnsuper().execute(query, vars)
psycopg2.errors.NumericValueOutOfRange: integer out of range
Expected behavior
Python threats conversion from integer to long (bigint) automatically , so when value overgrowth integer size it change it type to long 'under the hood' and no code changes required, but Postgres is strict typed, and unable to handle long value into integer field.
So make the 'count' field as bigint type will resolve this issue
The text was updated successfully, but these errors were encountered:
Issue Summary
When a service generate a lot of alerts API Key usage counter going out of range on Postgres data base.
Environment
OS: Linux
API version: [eg. 6.8.1]
Deployment: self-hosted
For self-hosted, WSGI environment: [eg. nginx/uwsgi, apache/mod_wsgi]
Database: Postgres
Server config:
Auth enabled: Yes
Auth provider: OpenID
server version 9.0.1
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Python threats conversion from integer to long (bigint) automatically , so when value overgrowth integer size it change it type to long 'under the hood' and no code changes required, but Postgres is strict typed, and unable to handle long value into integer field.
So make the 'count' field as bigint type will resolve this issue
The text was updated successfully, but these errors were encountered: