Compare commits

..

22 Commits

Author SHA1 Message Date
Hugh A. Miles II
40c692dd5d Update viz.py 2018-01-22 21:02:57 -08:00
Maxime Beauchemin
712212fc51 Use the query_obj as the basis for the cache key
When we recently moved from hashing form_data to define the cache_key
towards using the rendered query instead,
it made is such that non deterministic form
control values like relative times specified in "from" and "until" time
bound resulted in making those miss cache 100% of the time.

Here we move away from using the rendered query and using the query_obj
instead.
2018-01-22 21:01:42 -08:00
Maxime Beauchemin
36956a5d24 Using a NullPool for external connections by default
Currently, even though `get_sqla_engine` calls get memoized, engines are
still short lived since they are attached to an models.Database ORM
object. All engines created through this method have the scope of a web
request.

Knowing that the SQLAlchemy objects are short lived means that
a related connection pool would also be short lived and mostly useless.
I think it's pretty rare that connections get reused within the context
of a view or Celery worker task.

We've noticed on Redshift that Superset was leaving many connections
opened (hundreds). This is probably due to a combination of the current
process not garbage collecting connections properly, and perhaps the
absence of connection timeout on the redshift side of things. This
could also be related to the fact that we experience web requests timeouts
(enforced by gunicorn) and that process-killing may not allow SQLAlchemy
to clean up connections as they occur (which this PR may not help
fixing...)

For all these reasons, it seems like the right thing to do to use
NullPool for external connection (but not for our connection to the metadata
db!).

Opening the PR for conversation. Putting this query into our staging
today to run some tests.
2018-01-22 16:59:18 -08:00
Hugh A. Miles II
1c76d583b3 Added DeckGL.Polygon Layer w/ JS controls (#4227)
* Working polygon layer for deckGL

* add js controls

* add thumbnail

* better description

* refactor to leverage line_column controls

* templates: open code and documentation on a new tab (#4217)

As they are external resources.

* Fix tutorial doesn't match the current interface #4138 (#4215)

* [bugfix] markup and iframe viz raise 'Empty query' (#4225)

closes https://github.com/apache/incubator-superset/issues/4222

Related to: https://github.com/apache/incubator-superset/pull/4016

* [bugfix] time_pivot entry got missing in merge conflict (#4221)

PR here https://github.com/apache/incubator-superset/pull/3518 missed a
line of code while merging conflicts with time_pivot viz

* Improve deck.gl GeoJSON visualization (#4220)

* Improve geoJSON

* Addressing comments

* lint

* refactor to leverage line_column controls

* refactor to use DeckPathViz

* oops
2018-01-18 13:47:04 -08:00
Hugh A. Miles II
ee77f11b27 remove setting spatial in DeckPathViz class (#4235) 2018-01-18 13:47:04 -08:00
michellethomas
3b40e90b40 Don't cache if there's no cache key (#4229) 2018-01-18 13:47:04 -08:00
Peter Lubell-Doughtie
6cd83c3025 add Ona as a user (#4234) 2018-01-18 13:47:03 -08:00
Maxime Beauchemin
af941736a4 Improve deck.gl GeoJSON visualization (#4220)
* Improve geoJSON

* Addressing comments

* lint
2018-01-18 13:47:03 -08:00
Maxime Beauchemin
e502c22c70 [bugfix] time_pivot entry got missing in merge conflict (#4221)
PR here https://github.com/apache/incubator-superset/pull/3518 missed a
line of code while merging conflicts with time_pivot viz
2018-01-18 13:47:03 -08:00
Maxime Beauchemin
46411bc4ad [bugfix] markup and iframe viz raise 'Empty query' (#4225)
closes https://github.com/apache/incubator-superset/issues/4222

Related to: https://github.com/apache/incubator-superset/pull/4016
2018-01-18 13:47:03 -08:00
Yongjie Zhao
32e06616d9 Fix tutorial doesn't match the current interface #4138 (#4215) 2018-01-18 13:47:03 -08:00
Riccardo Magliocchetti
b3bc1429ac templates: open code and documentation on a new tab (#4217)
As they are external resources.
2018-01-18 13:47:03 -08:00
michellethomas
9b3eef893a Adding limit to time_table viz to get druid query to work (#4207) 2018-01-18 13:47:03 -08:00
Maxime Beauchemin
151657ba3e [line chart] fix time shift color (#4202) 2018-01-18 13:47:03 -08:00
Hugh Miles
23cc83f300 fix mergeconflicts 2018-01-12 13:45:17 -08:00
Hugh Miles
6e820b8355 rm merge arrows 2018-01-09 16:04:24 -08:00
Hugh Miles
8db14c47e7 fixed permissions 2018-01-09 15:44:00 -08:00
Hugh Miles
58ff72776d updated cherry-pick for lyft-endpoints 2018-01-09 14:12:22 -08:00
Maxime Beauchemin
b72bf98f68 Using JS to customize spatial viz and tooltips
(cherry picked from commit df22f29aa49f8e5991e19430aeed816ab08d2dd3)
2018-01-09 09:01:59 -08:00
Hugh Miles
32b466184e Moved lyft specific endpoints into its own file
(cherry picked from commit a2630b41c8d7da859a39fe5f9f5e51e66e9e97b9)
2018-01-09 08:57:21 -08:00
Maxime Beauchemin
bfdfd66160 Simplify login form for oauth
(cherry picked from commit 89ba06d9a6)
2018-01-09 08:57:10 -08:00
Maxime Beauchemin
a4c1d6d5c0 0.23.0rc1 2018-01-09 08:51:11 -08:00
216 changed files with 1500 additions and 4185 deletions

2
.gitignore vendored
View File

@@ -31,7 +31,7 @@ app.db
*.entry.js
*.js.map
node_modules
npm-debug.log*
npm-debug.log
yarn.lock
superset/assets/version_info.json

View File

@@ -2,11 +2,7 @@ recursive-include superset/data *
recursive-include superset/migrations *
recursive-include superset/static *
recursive-exclude superset/static/docs *
recursive-exclude superset/static/assets/docs *
recursive-exclude superset/static/assets/visualizations *
recursive-exclude superset/static/assets/images/viz_thumbnails_large *
recursive-exclude superset/static/spec *
recursive-exclude superset/static/images/viz_thumbnails_large *
recursive-exclude superset/static/assets/node_modules *
recursive-include superset/templates *
recursive-include superset/translations *

View File

@@ -165,7 +165,6 @@ the world know they are using Superset. Join our growing community!
- [Konfío](http://konfio.mx)
- [Lyft](https://www.lyft.com/)
- [Maieutical Labs](https://cloudschooling.it)
- [PeopleDoc](https://www.people-doc.com)
- [Ona](https://ona.io)
- [Pronto Tools](http://www.prontotools.io)
- [Qunar](https://www.qunar.com/)

View File

@@ -2,7 +2,6 @@ codeclimate-test-reporter
coveralls
flake8
flask_cors
ipdb
mock
mysqlclient
nose

View File

@@ -2,88 +2,88 @@ Gallery
=======
.. image:: _static/img/viz_thumbnails/line.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/bubble.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/table.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/pie.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/bar.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/world_map.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/sankey.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/word_cloud.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/filter_box.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/pivot_table.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/directed_force.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/compare.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/sunburst.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/area.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/big_number.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/big_number_total.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/bullet.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/dist_bar.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/heatmap.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/markup.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/para.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/iframe.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/box_plot.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/treemap.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/cal_heatmap.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/horizon.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/mapbox.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/separator.png
:scale: 50 %
:scale: 25 %
.. image:: _static/img/viz_thumbnails/histogram.png
:scale: 50 %
:scale: 25 %

View File

@@ -53,12 +53,6 @@ the required dependencies are installed: ::
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
**Ubuntu 16.04** If you have python3.5 installed alongside with python2.7, as is default on **Ubuntu 16.04 LTS**, run this command also
sudo apt-get install build-essential libssl-dev libffi-dev python3.5-dev python-pip libsasl2-dev libldap2-dev
otherwhise build for ``cryptography`` fails.
For **Fedora** and **RHEL-derivatives**, the following command will ensure
that the required dependencies are installed: ::
@@ -349,16 +343,6 @@ For setting your timeouts, this is done in the Superset metadata and goes
up the "timeout searchpath", from your slice configuration, to your
data source's configuration, to your database's and ultimately falls back
into your global default defined in ``CACHE_CONFIG``.
.. code-block:: python
CACHE_CONFIG = {
'CACHE_TYPE': 'redis',
'CACHE_DEFAULT_TIMEOUT': 60 * 60 * 24, # 1 day default (in secs)
'CACHE_KEY_PREFIX': 'superset_results',
'CACHE_REDIS_URL': 'redis://localhost:6379/0',
}
Deeper SQLAlchemy integration

View File

@@ -49,38 +49,37 @@ setup(
'colorama==0.3.9',
'cryptography==1.9',
'flask==0.12.2',
'flask-appbuilder==1.9.6',
'flask-appbuilder==1.9.5',
'flask-cache==0.13.1',
'flask-migrate==2.1.1',
'flask-script==2.0.6',
'flask-migrate==2.0.3',
'flask-script==2.0.5',
'flask-sqlalchemy==2.1',
'flask-testing==0.7.1',
'flask-testing==0.6.2',
'flask-wtf==0.14.2',
'flower==0.9.2',
'flower==0.9.1',
'future>=0.16.0, <0.17',
'python-geohash==0.8.5',
'humanize==0.5.1',
'gunicorn==19.7.1',
'idna==2.6',
'markdown==2.6.11',
'pandas==0.22.0',
'idna==2.5',
'markdown==2.6.8',
'pandas==0.20.3',
'parsedatetime==2.0.0',
'pathlib2==2.3.0',
'polyline==1.3.2',
'pydruid==0.4.1',
'pydruid==0.3.1',
'PyHive>=0.4.0',
'python-dateutil==2.6.1',
'python-dateutil==2.6.0',
'pyyaml>=3.11',
'requests==2.18.4',
'simplejson==3.13.2',
'requests==2.17.3',
'simplejson==3.10.0',
'six==1.11.0',
'sqlalchemy==1.2.2',
'sqlalchemy-utils==0.32.21',
'sqlparse==0.2.4',
'sqlalchemy==1.1.9',
'sqlalchemy-utils==0.32.16',
'sqlparse==0.2.3',
'thrift>=0.9.3',
'thrift-sasl>=0.2.1',
'unidecode>=0.04.21',
'bleach==2.1.2',
],
extras_require={
'cors': ['Flask-Cors>=2.0.0'],

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 398 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 253 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 296 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 177 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 KiB

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

After

Width:  |  Height:  |  Size: 968 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 511 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 433 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 777 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 578 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.3 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 425 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 161 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 738 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 314 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 222 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

After

Width:  |  Height:  |  Size: 743 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 53 KiB

After

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 133 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 398 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 296 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 177 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 968 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 511 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 433 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 777 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 578 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 161 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 738 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 314 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 743 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 494 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

Some files were not shown because too many files have changed in this diff Show More