From df533d30fc5d7b3b00385be80997e31cd3d51e6a Mon Sep 17 00:00:00 2001 From: Maxime Beauchemin Date: Mon, 12 Sep 2016 23:09:18 -0700 Subject: [PATCH] [sql lab] specify schema name when generating vanila query (#1096) * [sql lab] specify schema name when generating vanila query * Fixing some react warnings --- .../javascripts/SqlLab/components/QueryAutoRefresh.jsx | 4 ++-- .../assets/javascripts/SqlLab/components/ResultSet.jsx | 4 ++-- .../javascripts/SqlLab/components/SqlEditorLeft.jsx | 2 +- .../assets/javascripts/SqlLab/components/SqlShrink.jsx | 4 ++-- .../javascripts/SqlLab/components/TableElement.jsx | 6 +++++- .../javascripts/SqlLab/components/VisualizeModal.jsx | 9 ++++++--- 6 files changed, 18 insertions(+), 11 deletions(-) diff --git a/caravel/assets/javascripts/SqlLab/components/QueryAutoRefresh.jsx b/caravel/assets/javascripts/SqlLab/components/QueryAutoRefresh.jsx index 0a18c98ee8b9f..609b106a67530 100644 --- a/caravel/assets/javascripts/SqlLab/components/QueryAutoRefresh.jsx +++ b/caravel/assets/javascripts/SqlLab/components/QueryAutoRefresh.jsx @@ -46,8 +46,8 @@ class QueryAutoRefresh extends React.Component { } QueryAutoRefresh.propTypes = { actions: React.PropTypes.object, - queriesLastUpdate: React.PropTypes.integer, - networkOn: React.PropTypes.boolean, + queriesLastUpdate: React.PropTypes.number, + networkOn: React.PropTypes.bool, }; QueryAutoRefresh.defaultProps = { // queries: null, diff --git a/caravel/assets/javascripts/SqlLab/components/ResultSet.jsx b/caravel/assets/javascripts/SqlLab/components/ResultSet.jsx index f2f8e0b9e8fcd..46f54ecf8a2b7 100644 --- a/caravel/assets/javascripts/SqlLab/components/ResultSet.jsx +++ b/caravel/assets/javascripts/SqlLab/components/ResultSet.jsx @@ -88,8 +88,8 @@ class ResultSet extends React.Component { } ResultSet.propTypes = { query: React.PropTypes.object, - showControls: React.PropTypes.boolean, - search: React.PropTypes.boolean, + showControls: React.PropTypes.bool, + search: React.PropTypes.bool, searchText: React.PropTypes.string, }; ResultSet.defaultProps = { diff --git a/caravel/assets/javascripts/SqlLab/components/SqlEditorLeft.jsx b/caravel/assets/javascripts/SqlLab/components/SqlEditorLeft.jsx index d2441414a9ef3..d2db70ad427de 100644 --- a/caravel/assets/javascripts/SqlLab/components/SqlEditorLeft.jsx +++ b/caravel/assets/javascripts/SqlLab/components/SqlEditorLeft.jsx @@ -179,7 +179,7 @@ SqlEditorTopToolbar.propTypes = { queryEditor: React.PropTypes.object, tables: React.PropTypes.array, actions: React.PropTypes.object, - networkOn: React.PropTypes.boolean, + networkOn: React.PropTypes.bool, }; SqlEditorTopToolbar.defaultProps = { diff --git a/caravel/assets/javascripts/SqlLab/components/SqlShrink.jsx b/caravel/assets/javascripts/SqlLab/components/SqlShrink.jsx index 7bd08f2d2d3e6..c67dfc469df42 100644 --- a/caravel/assets/javascripts/SqlLab/components/SqlShrink.jsx +++ b/caravel/assets/javascripts/SqlLab/components/SqlShrink.jsx @@ -32,8 +32,8 @@ SqlShrink.defaultProps = { SqlShrink.propTypes = { sql: React.PropTypes.string, - maxWidth: React.PropTypes.integer, - maxLines: React.PropTypes.integer, + maxWidth: React.PropTypes.number, + maxLines: React.PropTypes.number, }; export default SqlShrink; diff --git a/caravel/assets/javascripts/SqlLab/components/TableElement.jsx b/caravel/assets/javascripts/SqlLab/components/TableElement.jsx index 50a8668ccffeb..59632d7d3129b 100644 --- a/caravel/assets/javascripts/SqlLab/components/TableElement.jsx +++ b/caravel/assets/javascripts/SqlLab/components/TableElement.jsx @@ -19,7 +19,11 @@ class TableElement extends React.Component { cols += ', '; } }); - return `SELECT ${cols}\nFROM ${this.props.table.name}`; + let tableName = this.props.table.name; + if (this.props.table.schema) { + tableName = this.props.table.schema + '.' + tableName; + } + return `SELECT ${cols}\nFROM ${tableName}`; } popSelectStar() { diff --git a/caravel/assets/javascripts/SqlLab/components/VisualizeModal.jsx b/caravel/assets/javascripts/SqlLab/components/VisualizeModal.jsx index d6d7ee6ba626d..718a9fda232df 100644 --- a/caravel/assets/javascripts/SqlLab/components/VisualizeModal.jsx +++ b/caravel/assets/javascripts/SqlLab/components/VisualizeModal.jsx @@ -26,6 +26,8 @@ class VisualizeModal extends React.Component { columns: {}, hints: [], }; + } + componentDidMount() { this.validate(); } validate() { @@ -135,8 +137,8 @@ class VisualizeModal extends React.Component { /> ), })); - const alerts = this.state.hints.map((hint) => ( - {hint} + const alerts = this.state.hints.map((hint, i) => ( + {hint} )); const modal = (
@@ -191,11 +193,12 @@ class VisualizeModal extends React.Component { } VisualizeModal.propTypes = { query: React.PropTypes.object, - show: React.PropTypes.boolean, + show: React.PropTypes.bool, onHide: React.PropTypes.function, }; VisualizeModal.defaultProps = { show: false, + onHide: () => {}, }; function mapStateToProps() {