Commit Graph

24 Commits

Author SHA1 Message Date
Jannis Leidel
44dff83046 Add "Active at" column to user list. (#3026)
* add last_active_at to users page

* Use our JSON encoder as the SQLAlchemy JSON serializer.

* Fixed some inconsistencies in the user query class methods.

* Minor cosmetic fixes.

* Add some make tasks for easier development.

* Add user detail sync system based on Redis backend.

There is a periodic Celery task that updates a new “details” JSONB column in the “user” table with the data from Redis.

Currently this is only used for tracking the date of last activity of a user but can be extended with other user information later.

Updates a few dependencies.

* Normalize a few Flask extension API names.

* Reduce implementation complexity of JSONEncoder.

* Use request_started signal to make sure we have a request context.

Otherwise loading the user based on the request won’t work.

* Fix test that checks if disabled users can login.

This correctly uses a URL path that includes the current organization and checks for the error message.

The previous test seems to have been a red herring.

* Minor cosmetic fixes.

* Remove needs_sync in favor of just deleting things.

* Misc review fixes.

* Ignore line length.

* Split redash.models import several modules.

* Move walrus UTC DateTimeField into redash.models.types.

* Restore distinctly loading dashboards.

* Simplify default values for user details.

* Define __repr__ methods generically.

* Consistently have underscore methods at the top of model methods.

* Fix tests.

* Split redash.models import several modules.

* Update to latest walrus and redis-py.

* Update kombu to 4.2.2 for redis-py 3.x compatibility.

* Remove redis-cli container after running Make task.

* Move buffer condition after datetime/time conditions.

* Update walrus to 0.7.1.

* Refactor some query APIs.

This uses the flask-sqlalchemy helpers consistently and makes more use of mixins.

* Post rebase fixes.

* Use correct kombu version

* Fix migration down revision
2019-01-07 10:30:42 +02:00
Marina Samuel
cdd2259d08 Closes #2396: Add finer-grained scheduling. (#2426)
* Closes #187: Add finer-grained scheduling - backend.

* Closes #2396 - Add finer-grained scheduling - frontend.

* Fix linting issues

* Rename ScheduleDialgo to .jsx
2019-01-06 10:59:50 +02:00
Alison
d8ced1401f add test for using saved parameters in scheduled queries (#2802) 2018-09-16 10:45:25 +03:00
Alison
341a68c7d4 Propagate query execution errors from Celery tasks properly (#2713)
Refs https://github.com/mozilla/redash/issues/458
2018-08-23 20:33:43 +02:00
Arik Fraimovich
c054731794 Change: close metadata database connection early in the execute query
Celery task. This to prevent the task holding an idle connection for
a long period of time, while waiting for the query to finish.
2018-03-08 11:06:15 +02:00
Arik Fraimovich
3807510bfe Split refresh schemas into separate tasks and add a timeout. 2017-05-18 13:39:34 +03:00
Arik Fraimovich
d8a0885953 Fix: tests were using old method signature 2017-03-06 21:22:29 +02:00
Arik Fraimovich
83e6b6f50c Tests use the same session as the tested code, and we can't use the same
objects after the tested code calls commit() without disabling expire
on commit.

It seems like a safe thing in our case.
2017-03-06 13:49:29 +02:00
Allen Short
2407b115e4 Exponential backoff for failing queries 2017-02-22 10:29:08 -06:00
Allen Short
ca3e125da8 Refactor outdated_queries/refresh_queries tests 2017-02-22 10:28:35 -06:00
Arik Fraimovich
907b33b5a0 Fix: tests failling because they run on different app contextes 2017-02-22 14:06:47 +02:00
Arik Fraimovich
3e23143910 Fix: alert subscriptions were not triggered 2017-02-18 12:30:02 +02:00
Arik Fraimovich
8c2b310419 Add tests to alerts celery task 2016-12-07 12:01:22 +02:00
Arik Fraimovich
4459c464ca use Query#query_text instead of Query#query 2016-12-07 02:13:20 -06:00
Arik Fraimovich
f4c76527ee Fix refresh queries tests 2016-12-07 02:13:20 -06:00
Allen Short
ea166665d3 test_models passes 2016-12-07 02:13:20 -06:00
Arik Fraimovich
6c5dd09a78 Add change tracking and fix tests 2016-10-26 16:09:55 +03:00
Arik Fraimovich
ae2cd5363f Change: pass the user object to the run_query method
This to allow different use cases like checking permissions
based on who is currently running the query.
2016-10-20 23:42:25 +03:00
Arik Fraimovich
7159f0beb0 Remove potnetially concurrency not safe code form enqueue_query.
This might have been causing the behavior described in #1097.
2016-06-09 16:53:29 +03:00
Arik Fraimovich
b67f412f58 Add test for enqueue_query 2016-06-08 20:00:59 +03:00
Arik Fraimovich
59f8af2c44 Switch to Redis for pause state storage 2016-05-30 22:44:09 +03:00
Arik Fraimovich
9538ee7c31 Feature: API to pause a data source 2016-05-30 18:30:05 +03:00
Arik Fraimovich
b2e2277d0b Fix: old task trackers were not really removed 2016-05-19 09:58:30 +03:00
Arik Fraimovich
d38ab20c45 Feature: running queries (tasks) monitor
- Refactored tasks module into a package.
- Add new admins screens (running queries & outdated queries).
2016-04-18 13:46:31 +03:00