-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding table config overrides for disabling groovy #8196
Conversation
22f9f34
to
17880f6
Compare
pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java
Outdated
Show resolved
Hide resolved
pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java
Outdated
Show resolved
Hide resolved
17880f6
to
8d43486
Compare
Codecov Report
@@ Coverage Diff @@
## master #8196 +/- ##
============================================
- Coverage 70.97% 69.77% -1.20%
- Complexity 4313 4314 +1
============================================
Files 1626 1626
Lines 84851 84943 +92
Branches 12790 12787 -3
============================================
- Hits 60221 59273 -948
- Misses 20496 21542 +1046
+ Partials 4134 4128 -6
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
8d43486
to
e888e84
Compare
e888e84
to
9774962
Compare
pinot-spi/src/main/java/org/apache/pinot/spi/config/table/QueryConfig.java
Outdated
Show resolved
Hide resolved
tableConfig.setQueryConfig(new QueryConfig(5L, Boolean.TRUE)); | ||
updateTableConfig(tableConfig); | ||
|
||
reloadOfflineTable(getTableName()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't need to reload the table because that won't update the table config on broker, which is ZK watcher based. We can keep sending queries using TestUtils.waitForCondition()
until the query fails.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added the waitForCondition but for some reason the testDistinctCountHll
test is flaky when I remove the reload. Any ideas why this is happening?
...on-tests/src/test/java/org/apache/pinot/integration/tests/OfflineClusterIntegrationTest.java
Outdated
Show resolved
Hide resolved
pinot-segment-local/src/main/java/org/apache/pinot/segment/local/utils/TableConfigUtils.java
Outdated
Show resolved
Hide resolved
pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java
Outdated
Show resolved
Hide resolved
805c666
to
e9a7c35
Compare
e9a7c35
to
dd4c2e4
Compare
@@ -37,14 +37,27 @@ | |||
// because by the time the server times out, the broker should already timed out and returned the response. | |||
private final Long _timeoutMs; | |||
|
|||
// Table config override for disable Groovy broker property | |||
private final Boolean _disableGroovy; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to #7966, it looks that we would eventually want to disable Groovy by default. What's our plan on changing the default behavior?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR is backward compatible. We can probably submit a separate small backward incompatible PR to simply change the default value for it
Introduced new query config value `disableGroovy` which is a table config override for enabling/disable Groovy queries.
Description
This PR adds a table config override for disabling Groovy in query and ingestion. This is a follow up to #8159. This PR introduces a new boolean config value in the queryConfig named
disableGroovy
. If it is not set, then it will use the disable Groovy query configs defined in the broker configs.Note that this table override does not apply to ingestion Groovy functions given that the Groovy is defined within the table config as well.
Upgrade Notes
Does this PR prevent a zero down-time upgrade? (Assume upgrade order: Controller, Broker, Server, Minion)
backward-incompat
, and complete the section below on Release Notes)Does this PR fix a zero-downtime upgrade introduced earlier?
backward-incompat
, and complete the section below on Release Notes)Does this PR otherwise need attention when creating release notes? Things to consider:
release-notes
and complete the section on Release Notes)Release Notes
Introduced new query config value
disableGroovy
which is a table config override for enabling/disable Groovy queries.Documentation
Will update documentation after this is merged.