Commit Graph

17 Commits

Author SHA1 Message Date
x4base
4c6026fdda Add access control over metrics (#584)
* Add the new field "is_restricted" to SqlMetric and DruidMetric

* Add the access control on metrics

* Add the more descriptions on is_restricted

* Update docs/security.rst

* Update docs/security.rst
2016-06-10 15:49:33 -07:00
Maxime Beauchemin
60ed3e4050 TOX / Travis build matrix (#593)
* Building on many dbs

* Fixing some translation related error msg
2016-06-09 18:05:58 -07:00
Riccardo Magliocchetti
5bc50210ad utils: generalize utility to find find_constraint_name (#557)
See https://github.com/airbnb/caravel/pull/531
2016-06-03 09:47:51 -07:00
Luca Albertalli
fe6628b0a4 Fix #529 2 - "This Session's transaction has been rolled back" (#531)
* Created migration to fix the bug

* Working also on MySQL

* Added support for Vertica Grains (#515)

* Fix #529 1 "This Session's transaction has been rolled back" (#530)

* Fixing the specific issue

* Added an additional fix for a similar error in #529

Background:
- When an object is modified by SQLAlchemy, it is invalidated so need to be fetched again from the DB
- If there's an exception during a transaction, SQLAlchemy performs a rollback and mark the connection as dirty.

Bug:
- When handling exceptions, the exception handler tries to access the name of the cluster in the main object. Since the name has been invalidated due to a write, SQLAlchemy tries to fetch it on a 'dirty' connection and spits out an error. Solution:
- Fetch the information for handling the exception before starting the process.

* Modified the migration function to to automatically detect the the foreign keys based on the signature.
It supports also sqlite using batch migrations

* i18n: Fix typo in Druid cluster broker port label (#512)

* Update models.py (#541)

removing duplicated `user_id` def
2016-06-02 12:27:59 -07:00
x4base
5a870fe1c2 Mysql key length (#459)
* Use varchar(255) in MySQL

* Adjust the key lengths in old migration scripts
2016-05-12 10:27:38 -07:00
Maxime Beauchemin
0ca3f5ec80 Improving SQLA query generation (#421)
* Improving SQLA query generation

* Fixing debug
2016-05-02 10:00:28 -07:00
x4base
7b5b602e96 Use batch_alter_table to drop column in the migration script (#406) 2016-04-30 08:30:40 -07:00
Maxime Beauchemin
b634d03ac3 Show only Slices and Dashboards users have access to (#404)
* Introducing more security features

* Many to many owners for slices and dashboards
* Slices are filtered to only slices that the user has access to

* Adding unit tests
2016-04-26 16:44:51 -07:00
Maxime Beauchemin
5597eb4cc4 Fix db upgrade script b4456560d4f3 (#370)
* Recreating db upgrade error first

* Wrapping alter table calls in try statements
2016-04-18 12:49:13 -07:00
Maxime Beauchemin
01c2c7baf8 Fixing unique constraint in SqlaTable model (#360) 2016-04-15 14:53:06 -07:00
Ludovic
eb5a41728e Change the size of the column datasource_name in datasource creation … (#345)
* Change the size of the column datasource_name in datasource creation table to fix a Sql server specific issue.

* Change the model according to the change of the database script done in the PR 345
2016-04-13 22:32:48 -07:00
Maxime Beauchemin
5cadd6794c Allowing to specify schema for tables (#330)
* Allowing to specify schema for tables

* Installed postgres and tested/fixed
2016-04-13 17:28:12 -07:00
Maxime Beauchemin
5b822492c8 Linting to 99% (#317) 2016-04-10 22:49:08 -07:00
Siddharth Gupta
eff0beb195 Optimizing import statements for better readability and to avoid unused, excessive and duplicating imports in the project. (#294) 2016-04-07 23:01:40 -07:00
greens231
c2bb49fec5 Fix 4e6a06bad7a8_init.py migration script to work with Postgres
* Update 4e6a06bad7a8_init.py

* removed comments
2016-04-06 08:24:52 -07:00
Maxime Beauchemin
889844407f Adding extra options to deeper configure sqlalchemy 2016-04-04 16:13:08 -07:00
Maxime Beauchemin
d48796f00e Caravel - renaming files 2016-03-28 21:53:24 -07:00