[
https://issues.apache.org/jira/browse/SPARK-3288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Patrick Wendell resolved SPARK-3288.
------------------------------------
Resolution: Fixed
Fix Version/s: 1.3.0
Target Version/s: 1.3.0 (was: 1.2.0)
> All fields in TaskMetrics should be private and use getters/setters
> -------------------------------------------------------------------
>
> Key: SPARK-3288
> URL: https://issues.apache.org/jira/browse/SPARK-3288
> Project: Spark
> Issue Type: Improvement
> Components: Spark Core
> Affects Versions: 1.1.0
> Reporter: Patrick Wendell
> Assignee: Dale Richardson
> Labels: starter
> Fix For: 1.3.0
>
>
> This is particularly bad because we expose this as a developer API.
> Technically a library could create a TaskMetrics object and then change the
> values inside of it and pass it onto someone else. It can be written pretty
> compactly like below:
> {code}
> /**
> * Number of bytes written for the shuffle by this task
> */
> @volatile private var _shuffleBytesWritten: Long = _
> def incrementShuffleBytesWritten(value: Long) = _shuffleBytesWritten +=
> value
> def decrementShuffleBytesWritten(value: Long) = _shuffleBytesWritten -=
> value
> def shuffleBytesWritten = _shuffleBytesWritten
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]