mirror of
https://github.com/apache/superset.git
synced 2026-06-09 01:29:18 +00:00
[SQL Lab] fix unnecessary offline action (#7594)
This commit is contained in:
@@ -30,9 +30,20 @@ const MAX_QUERY_AGE_TO_POLL = 21600000;
|
||||
const QUERY_TIMEOUT_LIMIT = 10000;
|
||||
|
||||
class QueryAutoRefresh extends React.PureComponent {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
offline: props.offline,
|
||||
};
|
||||
}
|
||||
componentWillMount() {
|
||||
this.startTimer();
|
||||
}
|
||||
componentDidUpdate(prevProps) {
|
||||
if (prevProps.offline !== this.state.offline) {
|
||||
this.props.actions.setUserOffline(this.state.offline);
|
||||
}
|
||||
}
|
||||
componentWillUnmount() {
|
||||
this.stopTimer();
|
||||
}
|
||||
@@ -70,12 +81,12 @@ class QueryAutoRefresh extends React.PureComponent {
|
||||
if (Object.keys(json).length > 0) {
|
||||
this.props.actions.refreshQueries(json);
|
||||
}
|
||||
this.props.actions.setUserOffline(false);
|
||||
}).catch(() => {
|
||||
this.props.actions.setUserOffline(true);
|
||||
});
|
||||
this.setState({ offline: false });
|
||||
}).catch(() => {
|
||||
this.setState({ offline: true });
|
||||
});
|
||||
} else {
|
||||
this.props.actions.setUserOffline(false);
|
||||
this.setState({ offline: false });
|
||||
}
|
||||
}
|
||||
render() {
|
||||
@@ -83,6 +94,7 @@ class QueryAutoRefresh extends React.PureComponent {
|
||||
}
|
||||
}
|
||||
QueryAutoRefresh.propTypes = {
|
||||
offline: PropTypes.bool.isRequired,
|
||||
queries: PropTypes.object.isRequired,
|
||||
actions: PropTypes.object.isRequired,
|
||||
queriesLastUpdate: PropTypes.number.isRequired,
|
||||
@@ -90,6 +102,7 @@ QueryAutoRefresh.propTypes = {
|
||||
|
||||
function mapStateToProps({ sqlLab }) {
|
||||
return {
|
||||
offline: sqlLab.offline,
|
||||
queries: sqlLab.queries,
|
||||
queriesLastUpdate: sqlLab.queriesLastUpdate,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user