* perf(sqllab): Rendering perf improvement using immutable state
- keep queryEditors immutable during active state
- add unsavedQueryEditor to store all active changes
- refactor each component to subscribe the related unsaved editor state only
* revert ISaveableDatasource type cast
* missing trigger prop
* a default of an empty object and optional operator
* Moving entire split save btn PR
* Addressed review comments
* Remove arbitrary div from ErrorBoundary in Chart
* Added accidentally removed comment
* Fix act errors in SaveQuery tests
* Fix SaveDatasetActionButton test
* SaveDatasetModal test almost working
* SaveDatasetModal tests all passing
* Clean SaveDatasetModal test
* Fix create chart button and SaveDatasetModal text in SQL Lab
* Fix untitled dataset name on SaveDatasetModal in explore
* Fix styling on split save button
* Empty SQL table message on zero tabs
* sql editor no editor tab bug fix
* Revert Error message
* empty state tab state
* added a unit test
* addressed reviews
* kasia feedback
Co-authored-by: Yahya Kayani <yahyakiani1@gmail.com>
* fix: SQL Lab show "Refetch Results" button while fetching new query results (#15109)
* fix: SQL Lab show "Refetch Results" button while fetching new query results
* fix comments
(cherry picked from commit 408d58f937)
* handle exception caused by invalid query id
* feat: cancel db query on stop
* fix pylint
* Add unit tests
* Do not bind multiple times
* Stop only running queries
* Postgres to cancel only the required query
* Remove extra log
* Add docstring
* Better types, docstring and naming
* Use python3 format strings
* Update superset/sql_lab.py
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>
* Add cancel_query_on_windows_unload option to database
* Return cancel_query as bool
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net>