Commit Graph

141 Commits

Author SHA1 Message Date
Maxime Beauchemin
e4bd1884d3 [druid] adding support for dimensionspecs (#1545)
More about it here:
http://druid.io/docs/latest/querying/dimensionspecs.html

fixes https://github.com/airbnb/caravel/issues/1086
2016-11-07 17:05:41 -08:00
Alanna Scott
d9b49ca2bc [exploreV2] remove /exploreV2 endpoint, add v2 bootstrap data to /explore endpoint (#1536)
* remove exploreV2 endpoint, add v2 bootstrap data to explore endpoint

* delete empty line

* move bootstrap data inside elif condition
2016-11-03 13:37:29 -07:00
Maxime Beauchemin
1b124bfb87 [druid] optimize Druid queries where possible (#1517)
* [druid] optimize Druid queries where possible

Trying to use timeseries, topn where possible, falling back on 2-phases
groupby only where needed

* Fixing py3 bug
2016-11-02 11:25:33 -07:00
Maxime Beauchemin
61509bbd44 [sqllab] surfacing more table metadata (indices, pk, fks) (#1485)
* Expose more table/column metadata

* [sqllab] expose more table metadata

* more tests
2016-10-31 23:52:37 -07:00
vera-liu
45efcb381c Added time filter to query search page (#1329)
* Added time filter to query search page

* Added start date

* Updated python endpoint test

* changed spec

* Added specs and tests

* Modified python/js tests and some function/file names
based on code review comments

* Resolved conflicts in DashboardSelect_spec and QuerySearch_spec

* Break python tests for separate functions, Move sql queries to setUp()

* Get around eslint error for spec

* Small changes based on comments
2016-10-28 14:12:53 -07:00
vera-liu
64d196442f Added dashboard standalone page (#1429)
* Added dashboard standalone page

* Deleted additional template, parameterized dashboard.html for standalone

* Only wrap add-slice-container for standalone instead of including whole modal

* Use standalone_mode argument passed from both explore view and dashboard view
2016-10-26 15:24:05 -07:00
Maxime Beauchemin
63161b11c3 [sqllab] proper, quoted, select * on the server side (#1404)
* [sqllab] proper, quoted, select * on the server side

* fixing tests
2016-10-21 16:55:37 -07:00
Bogdan
4f886d65ec Fix None view_menues in permissions. (#1409) 2016-10-21 16:09:51 -07:00
Maxime Beauchemin
6fb3b305ad [sqllab] add support for results backends (#1377)
* [sqllab] add support for results backends

Long running SQL queries (beyond the scope of a web request) can now use
a k/v store to hold their result sets.

* Addressing comments, fixed js tests

* Fixing mysql has gone away

* Adressing more comments

* Touchups
2016-10-20 23:40:24 -07:00
Bogdan
5c3966a32d Override the role with perms for given datasources. (#1399)
* Override the role with perms for give datasources.

* Address comments.
2016-10-20 15:30:09 -07:00
Maxime Beauchemin
c255e89219 [sqllab] show partition metadata for Presto (#1342) 2016-10-19 09:17:08 -07:00
Maxime Beauchemin
8f299448ea [bugfix] text as subquery fails with 'Series Limit' (#1347) 2016-10-17 18:36:49 -07:00
Maxime Beauchemin
82bcadf7f8 Moving 'CSS TEmplates' to the Manage menu category (#1336) 2016-10-13 20:55:44 -07:00
Bogdan
f0f8478922 Revert "Override the role with perms for give datasources." (#1345) 2016-10-13 19:21:21 -07:00
Bogdan
40e7057bce Override the role with perms for give datasources. (#1335)
* Override the role with perms for give datasources.

* Address comments.
2016-10-13 18:18:03 -07:00
Bogdan
11a8e3591d Some dashboard import/export fixes. (#1340) 2016-10-13 14:36:39 -07:00
Maxime Beauchemin
89cb726284 [hotfix] explore errors are not raise properly 2 2016-10-12 17:46:31 -07:00
Maxime Beauchemin
4e9392d21b [hotfix] explore errors are not raise properly 2016-10-12 17:20:42 -07:00
Bogdan
8626c80d3a Stop duplicating datasources (#1321)
* Prevent creating duplicate tables.

* Stop duplicating the tables and druid datasouces.

* Use sqlalchemy func.count
2016-10-12 12:48:24 -07:00
Bogdan
73cd2ea3b1 Import / export of the dashboards. (#1197)
* Implement import / export dashboard functionality.

* Address comments from discussion.

* Add function descriptions.

* Minor fixes

* Fix tests for python 3.

* Export datasources.

* Implement tables import.

* Json.loads does not support trailing commas.

* Improve alter_dict func

* Resolve comments.

* Refactor tests

* Move params_dict and alter_params to the ImportMixin

* Fix flask menues.
2016-10-11 17:54:40 -07:00
Juho Lamminmäki
1e6e144d24 Fixed viewing dashboards as anonymous (#1320) 2016-10-11 08:04:00 -07:00
Alanna Scott
9012b11101 add ImmutableMultiDict back to views.py (#1298) 2016-10-07 18:27:19 -07:00
Maxime Beauchemin
f70d301f0d Refactor the explore view (#1252)
* Refactor the explore view

* Fixing the tests

* Addressing comments
2016-10-07 16:24:39 -07:00
vera-liu
66b498de25 Added controls for Table Viz (#1253)
* Added controls for Table Viz

* Change control panel container to stateless

* Changed specs

* Resolved conflicts
2016-10-05 14:53:51 -07:00
vera-liu
659bf6d7e8 Moved time column and grains to models.py (#1255) 2016-10-05 13:02:35 -07:00
vera-liu
8ab5e5015a Added access check + Druid in endpoint (#1224)
* Explore control panel - Chart control, TimeFilter, GroupBy, Filters (#1205)

* create structure for new forked explore view (#1099)

* create structure for new forked explore view

* update component name

* add bootstrap data pattern

* remove console.log

* Associate version to entry files (#1060)

* Associate version to entry files

* Modified path joins for configs

* Made changes based on comments

* Created store and reducers (#1108)

* Created store and reducers

* Added spec

* Modifications based on comments

* Explore control panel components: Chart control, Time filter, SQL,
GroupBy and Filters

* Modifications based on comments

* Added access check + Druid in endpoint

* pull grains to constants

* Switch explore.html to old version
2016-10-04 13:44:45 -07:00
Alanna Scott
e6e902e8df [explore-v2] setup, basic layout, control panels, v2 url (#1233)
* Explore control panel - Chart control, TimeFilter, GroupBy, Filters (#1205)

* create structure for new forked explore view (#1099)

* create structure for new forked explore view

* update component name

* add bootstrap data pattern

* remove console.log

* Associate version to entry files (#1060)

* Associate version to entry files

* Modified path joins for configs

* Made changes based on comments

* Created store and reducers (#1108)

* Created store and reducers

* Added spec

* Modifications based on comments

* Explore control panel components: Chart control, Time filter, SQL,
GroupBy and Filters

* Modifications based on comments

* accommodate old and new explore urls

* move bootstrap data up in scope

* fix code climate issues

* fix long lines

* fix syntax error
2016-10-03 22:47:39 -07:00
Maxime Beauchemin
472679bb38 [security] allow for requesting access when denied on a dashboard view (#1192)
* Request access on dashboard view

* Fixing the unit tests

* Refactored much in the tests
2016-10-02 18:03:19 -07:00
Maxime Beauchemin
f0289cef3a [minor] fixing the icons in the navbar
the top item on the navbar had no icon, and the content of the menu had
two items with the same icon
2016-09-28 10:44:55 -07:00
Maxime Beauchemin
1a29163530 A few bugfixes 2016-09-27 10:20:20 -07:00
vera-liu
5f6ef84c4e Vliu query search (#1187)
* Query search page under SQL Lab tab

* Modifications based on comments

* Hash

* Added spec and endpoint test with modifications
based on second round comments

* Changed permission menu in https://github.com/airbnb/caravel/pull/1095/files
2016-09-23 17:41:24 -07:00
vera-liu
551c97112c Revert "Query Search Page" (#1186) 2016-09-23 16:28:21 -07:00
vera-liu
d5c5c0d6ac Query Search Page (#1122)
* Query search page under SQL Lab tab

* Modifications based on comments

* Hash

* Added spec and endpoint test with modifications
based on second round comments

* Changed permission menu in https://github.com/airbnb/caravel/pull/1095/files
2016-09-23 16:13:18 -07:00
Maxime Beauchemin
fc921d63a1 Simplifying source_registry (#1180) 2016-09-22 21:19:03 -07:00
Maxime Beauchemin
aed473d0d2 [filtering] define combo of slice/fields unafected by filtering (#1179)
* [FilterBox] dashboard date range filtering

* [filtering] define combo of slice/fields unafected by filtering

* adding an entry to the docs

* Addressed comments
2016-09-22 20:12:48 -07:00
Dennis O'Brien
1fa18922fa when adding a new database use Database.set_sqlalchemy_uri so that the password is stored encrypted. (#1177)
This fixes a regression I introduced with PR #1137
2016-09-22 14:08:42 -07:00
Maxime Beauchemin
49cefc8b00 Improve the Test Connection error message (#1175) 2016-09-22 13:09:10 -07:00
Bogdan
cbc70d3738 Implement permission request/approve flow. (#1095)
* Implement permission request/approve flow

* Address the comments.

* Refactor the code to support multiple datasources.

* Reformat the queries.
2016-09-22 09:53:14 -07:00
Bogdan
b855e2f1a6 Add dashboard creator as owner of the dashboard (#1166)
* Add dashboard creator as owner of the dashboard

* Address comments.
2016-09-22 08:17:27 -07:00
Dennis O'Brien
bc7d0ffad2 Fix TEST CONNECTION on a newly added database. (#1168)
This addresses issue #1167
If the database name passed in the request is not found in the db, test using the sqlalchemy uri passed.
2016-09-22 08:17:05 -07:00
Maxime Beauchemin
b5875764ed [security] allowing to set static headers as configuration (#1126)
* [security] setting X-Frame-Options=SAMEORIGIN to prevent clickjacking

* Changing to a more flexible approach
2016-09-21 14:41:42 -07:00
Maxime Beauchemin
f1e80a8e1b Adding indexes to table metadata (#1160) 2016-09-21 14:40:33 -07:00
ShengyaoQian
5a0e06e7a2 Generalize switch between different datasources (#1078)
* Generalize switch between different datasources.

* Fix previous migration since slice model changed

* Fix warm up cache and other small stuff

* Adding modules and datasources through config

* Replace tabs w/ spaces

* Fix other style issues

* Change add method for SliceModelView to pick the first non-empty ds

* Remove tests on slice add redirect

* Change way of db migration

* Fix styling

* Fix create slice

* Small fixes

* Fix code climate check

* Adding notes on how to create new datasource in CONTRIBUTING.md

* Fix last merge

* A commit just to trigger travis build again

* Add migration to merge two heads

* Fix codeclimate

* Simplify source_registry

* Fix codeclimate

* Remove all getter methods
2016-09-21 09:52:05 -07:00
Maxime Beauchemin
e8088d5c9a More improvements to SQL Lab (#1104)
* Handling timeouts

* Fixing timer on non-utc server

* Allowing async with results

* [bugfix] database is not selected

* Making sure the session is up and running

* Cleaning up query results and query objects

* Picking a groupby and metric field on visualize flow

* Showing local time in query history

* Using pull-left pull-right instead of grid layout for table metdata

Long column name were looking weird and icons were wrapping oddly

* Linting

* Eliminating east buttons under the sql editor

* Sort database dropdown by name

* Linting

* Allowing non-SELECT statements to run

* Adding a db config

* Making sqla checkout check cross-db
2016-09-19 15:28:10 -07:00
Maxime Beauchemin
1c544c9845 Enable list with checkboxes only on Table->Columns view (#1138) 2016-09-19 15:22:37 -07:00
Dennis O'Brien
ca66ba4893 Fix initialization of Database sqlalchemy_uri and password (#1137)
* move initialization of Database sqlalchemy_uri and password from DatabaseView.pre_add to utils.get_or_create_main_db.
Unit tests for mysql and postgres include username and password in the SQLALCHEMY_DATABASE_URI.

* modified test_testconn to work with sqlalchemy uri with a username and password.
2016-09-19 15:14:00 -07:00
Riccardo Magliocchetti
afa1f0916b Make sql test connection work with saved Database instance (#694)
Fix #596
2016-09-17 12:32:41 -07:00
Maxime Beauchemin
b62d7e3e8e [security] prevent XSS on FAB list views (#1125)
* [security] prevent XSS on FAB list views

* addressing comments
2016-09-16 16:25:42 -07:00
Maxime Beauchemin
edcc2a11c6 Fixing druid culster perms to mirror sqla databases (#1123) 2016-09-16 08:32:37 -07:00
Bogdan
a871ee7858 Clean up the druid sync api. (#1101) 2016-09-13 17:30:36 -07:00