[SQL Lab] fix unnecessary offline action (#7594)

This commit is contained in:
Grace Guo
2019-05-30 10:38:49 -07:00
committed by GitHub
parent 145d72c52b
commit dbdb6b093a
3 changed files with 92 additions and 5 deletions

View File

@@ -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,
};