Long background queries of the form "SELECT t.* FROM some_table t"
Hi
First, great job to the DataGrip team on an excellent SQL IDE. There are still a lot of features and enhancements I'd like to see, but for a 1.0 release this is promising to be the best in class very soon.
Since I started evaluating DataGrip, I've noticed long running queries under my user name that I did not explicitly run. I suspect these are some introspection queries. The queries look like this:
SELECT t.* FROM some_schema.some_table t
The problem is that in many cases the table being queried has billions of rows and a query like the above is a really bad idea.
Is there a way to disable this sort of introspection? (If this is introspection, it should ideally put a limit on the query.)
Some details:
- Mac OSX 10.10.5
- DataGrip 1.0.1 Build #DB-143.1411
- JRE 1.8.0_40-release-b108 x86_64
- Driver: Vertica JDBC 7.1.2-0
- Dialect: Generic
As you can see, this is a Vertica db using the generic driver settings.
thanks,
Dennis
请先登录再写评论。
Hello Dennis, thanks for feedback!
There could be still some issues with Vertica DB support: https://youtrack.jetbrains.com/issue/DBE-1190 . Can you please post Test Connection output for the data source you have configured? Thanks.
Also you could try enabling Use legacy introspector in Schemas tab for the data source.
Thanks for the reply Andrey.
Here's the output from Test Connection:
I don't see an option for "Use legacy introspector" in the schemas tab for the data source. Is this something I can try adding to the Advanced tab as a new key-value pair?
Thanks for the details! Unfortunately there is no native introspection implemented for Vertica DB yet. Related issue is https://youtrack.jetbrains.com/issue/DBE-1190 .
For this case I've created the https://youtrack.jetbrains.com/issue/DBE-2203 . Feel free to follow it for the updates.
I run queries on a Netezza server and have been encountering this issue, as well.
There have been instances where I will run a query referencing and aggregating a [large_table], and receive results in DataGrip's output console in less than 2 minutes. However, I have been contacted several times by my database administrator about needing to kill long-running "SELECT t.* FROM [large_table] t" queries that I never kicked-off, myself. Said query " ..was attempting to return 2.78 billion rows (which was over 0.6 TB of data)."
First question, how do I make this stop?
Second question (just because I'm curious) is DataGrip essentially creating a locally stored view of [large_table] in the background of my query, which is comprised of several CTEs that refine results from [large_table]?
Thanks!
Nathan
Please try this solution: https://youtrack.jetbrains.com/issue/DBE-2203#comment=27-1625864