nicknezis opened a new issue, #3850: URL: https://github.com/apache/incubator-heron/issues/3850
With our major rewrite to Python 3, we introduced a bug which wasn't noticed until now. When storing the `SchedulerLocation` Protobuf message in the state manager repo, such as Zookeeper, we are storing `job_page_link` as a `repeated string` which produces a Python `List` and not a `str`. ([Protobuf field](https://github.com/apache/incubator-heron/blob/41e098862f5d10a39738fe5e1139649d1c47c151/heron/proto/scheduler.proto#L33)). When running the Heron Tracker, we experience crashes at [this point](https://github.com/apache/incubator-heron/blob/41e098862f5d10a39738fe5e1139649d1c47c151/heron/tools/tracker/src/python/topology.py#L570 ) in the codebase. This is because Python 3 is now using the new type hint system. The returned `TopologyInfoSchedulerLocation` is expecting `job_page_link` to be a `str`. A simple fix would be to extract the first string from the Protobuf [`RepeatedScalarFieldContainer`](https://googleapis.dev/python/protobuf/latest/google/protobuf/internal/containers.html#google.protobuf.internal.containers.RepeatedScalarFieldContainer). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
