[
https://issues.apache.org/jira/browse/FLINK-8754?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16374108#comment-16374108
]
ASF GitHub Bot commented on FLINK-8754:
---
GitHub user GJL opened a pull request:
https://github.com/apache/flink/pull/5566
[FLINK-8754][flip6] Make TaskManagerInfo implement Serializable
## What is the purpose of the change
*`TaskManagerInfo` can be returned from RPC calls, e.g.,
`ResourceManagerGateway#requestTaskManagerInfo(ResourceID, Time)`. All messages
passed via RPC must be serializable. This PR makes `TaskManagerInfo`
serializable.*
## Brief change log
- *Make TaskManagerInfo implement Serializable*
## Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (yes / **no**)
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: (yes / **no**)
- The serializers: (yes / **no** / don't know)
- The runtime per-record code paths (performance sensitive): (yes /
**no** / don't know)
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / **no** / don't know)
- The S3 file system connector: (yes / **no** / don't know)
## Documentation
- Does this pull request introduce a new feature? (yes / **no**)
- If yes, how is the feature documented? (**not applicable** / docs /
JavaDocs / not documented)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/GJL/flink FLINK-8754
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/5566.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #5566
commit e024c388516e6644ee2fa837069c87992043ee87
Author: gyao
Date: 2018-02-23T09:10:11Z
[FLINK-8754][flip6] Make TaskManagerInfo implement Serializable
> TaskManagerInfo is not serializable
> ---
>
> Key: FLINK-8754
> URL: https://issues.apache.org/jira/browse/FLINK-8754
> Project: Flink
> Issue Type: Bug
> Components: Distributed Coordination
>Affects Versions: 1.5.0
>Reporter: Gary Yao
>Assignee: Gary Yao
>Priority: Blocker
> Labels: flip-6
> Fix For: 1.5.0
>
>
> Taskmanager info cannot be fetched reliably through REST API.
> *Steps to reproduce*
> # Start flink on a cluster (519639c64039563ac4f2a875a8cfa630b25e4e8b)
> #
> {code:java}
> curl host:port/taskmanagers{code}
> # Search for stacktrace in taskmanager log
> {noformat}
> akka.remote.MessageSerializer$SerializationException: Failed to serialize
> remote message [class java.util.ArrayList] using serializer [class
> akka.serialization.JavaSerializer].
> at akka.remote.MessageSerializer$.serialize(MessageSerializer.scala:61)
> at
> akka.remote.EndpointWriter$$anonfun$serializeMessage$1.apply(Endpoint.scala:889)
> at
> akka.remote.EndpointWriter$$anonfun$serializeMessage$1.apply(Endpoint.scala:889)
> at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)
> at akka.remote.EndpointWriter.serializeMessage(Endpoint.scala:888)
> at akka.remote.EndpointWriter.writeSend(Endpoint.scala:780)
> at akka.remote.EndpointWriter$$anonfun$4.applyOrElse(Endpoint.scala:755)
> at akka.actor.Actor$class.aroundReceive(Actor.scala:502)
> at akka.remote.EndpointActor.aroundReceive(Endpoint.scala:446)
> at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526)
> at akka.actor.ActorCell.invoke(ActorCell.scala:495)
> at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
> at akka.dispatch.Mailbox.run(Mailbox.scala:224)
> at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
> at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
> at
> scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
> at
> scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
> at
> scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
> Caused by: java.io.NotSerializableException:
> org.apache.flink.runtime.rest.messages.taskmanager.TaskManagerInfo
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184)
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348)
> at java.util.ArrayList.writeObject(ArrayList.java:762)
> {noformat}
--
This message was sent by Atlassian JIRA