-
Notifications
You must be signed in to change notification settings - Fork 29k
[SPARK-28869][CORE] Roll over event log files #25670
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 1 commit
6f3dd79
90698e8
e0abbae
f1087e8
064ea7b
9c72cc8
63990e0
79754be
ed79864
27946d1
f006542
9558b4d
540052d
2ff349b
a2f631d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
- Loading branch information
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -180,16 +180,18 @@ package object config { | |
| ConfigBuilder("spark.eventLog.longForm.enabled").booleanConf.createWithDefault(false) | ||
|
|
||
| private[spark] val EVENT_LOG_ENABLE_ROLLING = | ||
| ConfigBuilder("spark.eventLog.logRolling.enabled") | ||
| ConfigBuilder("spark.eventLog.rolling.enabled") | ||
| .doc("Whether rolling over event log files is enabled. If set to true, it cuts down " + | ||
| "each event log file to the configured size.") | ||
| .booleanConf | ||
| .createWithDefault(false) | ||
|
|
||
| private[spark] val EVENT_LOG_ROLLED_LOG_MAX_FILE_SIZE = | ||
| ConfigBuilder("spark.eventLog.logRolling.maxFileSize") | ||
| private[spark] val EVENT_LOG_ROLLING_MAX_FILE_SIZE = | ||
| ConfigBuilder("spark.eventLog.rolling.maxFileSize") | ||
| .doc("The max size of event log file to be rolled over.") | ||
| .bytesConf(ByteUnit.BYTE) | ||
| .checkValue(_ >= (1024 * 1024 * 10), "Max file size of event log should be configured to" + | ||
|
||
| " be at least 10 MiB.") | ||
| .createWithDefaultString("128m") | ||
|
Member
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. This is a side note for reviewer. This seems to aim to match with HDFS configuration, but, this might be too small with other cloud storage like
Contributor
Author
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. Thanks for sharing info! I'll comment about possible case of desiring to set max file size smaller: assuming we go with the plan - we would want to set up max number of event log files to retain, to address issue where storage quota is limited. (I believe I saw this requirement - limited storage quota - earlier in somewhere but can't remember.) In that case, "max file size" and "max number of event log files" work together to forecast the size of event log dir for the app (snapshot files should be considered so in reality it's going to be bigger than that), and to control the value finely, we may want to have smaller max file size. |
||
|
|
||
| private[spark] val EXECUTOR_ID = | ||
|
|
||
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.
Sorry leaving a comment late like this but it should have been better to say this configuration is only effective when
spark.eventLog.rolling.enabledis enabled.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 think there're counter examples in Spark configurations which rely on the fact once there's a configuration
.enabled, others are effective only when that is enabled.Even we only check from the SHS configuration,
spark.history.fs.cleaner.*,spark.history.kerberos.*,spark.history.ui.acls.*fall into the case.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.
Hm, I tend to disagree with omitting such dependent configurations in their documentations. Can we add and link related configurations in the documentations?
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.
Sorry. Looks like we'll have to agree to disagree then. No one has privilege to make someone do the work under his/her authorship which he/she disagrees with - it will end up putting wrong authorship on commit.
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.
@HeartSaVioR, it had to be reviewed. I just happened to review and leave some comments late. Logically if that's not documented, how do users know what configuration is effective when? At least I had to read the codes to confirm.
Also, I am trying to make sure we're on the same page so I wouldn't happen to leave this comment again since you are a regular contributor. I don't think this is a good pattern to don't document the relationship between configurations. I am going to send an email to the dev list.
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.
@HyukjinKwon
Thanks for initiating the thread in dev mailing list. I'm following up the thread and will be back once we get some sort of consensus.