-
Notifications
You must be signed in to change notification settings - Fork 28.6k
[SPARK-33045][SQL] Support build-in function like_all and fix StackOverflowError issue. #29999
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
Changes from all commits
4a6f903
96456e2
4314005
d6af4a7
f69094f
b86a42d
2ac5159
9021d6c
74a2ef4
9828158
9cd1aaf
abfcbb9
07c6c81
580130b
3712808
6107413
4b799b4
ee0ecbf
596bc61
0164e2f
90b79fc
4163382
1909298
054fc1b
a7cd416
0aa4e18
3e41cff
2cef3a9
70b0843
d841b54
369959f
1f1f42c
de65829
1754f0d
60f01f4
c32f89b
ec53b83
c52d004
b770f92
be5eb8a
fcab4e3
f657ff0
c26b64f
8df5231
ad4d2d9
55465b8
2e02cd2
f160c64
391ba5d
7b7120f
1fc5214
53406d3
15bac5b
d039c33
0c7785b
7af8ffe
97c1c73
1614933
f0e3de1
001eb38
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -216,6 +216,18 @@ object SQLConf { | |
"for using switch statements in InSet must be non-negative and less than or equal to 600") | ||
.createWithDefault(400) | ||
|
||
val OPTIMIZER_LIKE_ALL_CONVERSION_THRESHOLD = | ||
buildConf("spark.sql.optimizer.likeAllConversionThreshold") | ||
.internal() | ||
.doc("Configure the maximum size of the pattern sequence in like all. Spark will convert " + | ||
"the logical combination of like to avoid StackOverflowError. 200 is an empirical value " + | ||
"that will not cause StackOverflowError.") | ||
.version("3.1.0") | ||
.intConf | ||
.checkValue(threshold => threshold >= 0, "The maximum size of pattern sequence " + | ||
"in like all must be non-negative") | ||
.createWithDefault(200) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. A tree of 200 And-reduced expressions is already a huge expr tree. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We have removed this config: beliefer@9273d42#diff-13c5b65678b327277c68d17910ae93629801af00117a0e3da007afd95b6c6764L219 We will always use the new expression for LIKE ALL if values are all literal. |
||
|
||
val PLAN_CHANGE_LOG_LEVEL = buildConf("spark.sql.planChangeLog.level") | ||
.internal() | ||
.doc("Configures the log level for logging the change from the original plan to the new " + | ||
|
@@ -2972,6 +2984,8 @@ class SQLConf extends Serializable with Logging { | |
|
||
def optimizerInSetSwitchThreshold: Int = getConf(OPTIMIZER_INSET_SWITCH_THRESHOLD) | ||
|
||
def optimizerLikeAllConversionThreshold: Int = getConf(OPTIMIZER_LIKE_ALL_CONVERSION_THRESHOLD) | ||
|
||
def planChangeLogLevel: String = getConf(PLAN_CHANGE_LOG_LEVEL) | ||
|
||
def planChangeRules: Option[String] = getConf(PLAN_CHANGE_LOG_RULES) | ||
|
Uh oh!
There was an error while loading. Please reload this page.