[
https://issues.apache.org/jira/browse/BEAM-10265?focusedWorklogId=764968&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-764968
]
ASF GitHub Bot logged work on BEAM-10265:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 02/May/22 14:01
Start Date: 02/May/22 14:01
Worklog Time Spent: 10m
Work Description: andreigurau commented on code in PR #17477:
URL: https://github.com/apache/beam/pull/17477#discussion_r862871477
##########
sdks/java/extensions/protobuf/src/main/java/org/apache/beam/sdk/extensions/protobuf/ProtoSchemaTranslator.java:
##########
@@ -126,6 +127,7 @@
* </ul>
*/
@SuppressWarnings({
+ "nullness", // TODO(https://issues.apache.org/jira/browse/BEAM-10402)
Review Comment:
Ok, I modified the code to use an empty Schema as a placeholder in the map,
instead of ```null```. Also, I added a unit test to show that the placeholder
empty Schema is not the same as an empty proto object, so it won't accidentally
throw an exception if an empty Schema is passed in to the ```getSchema```
function.
Issue Time Tracking
-------------------
Worklog Id: (was: 764968)
Time Spent: 4h 40m (was: 4.5h)
> GetterBasedSchemaProvider#schemaFor stack overflows when given a recursive
> schema
> ---------------------------------------------------------------------------------
>
> Key: BEAM-10265
> URL: https://issues.apache.org/jira/browse/BEAM-10265
> Project: Beam
> Issue Type: Bug
> Components: sdk-java-core
> Affects Versions: 2.21.0, 2.22.0
> Reporter: Reza ardeshir rokni
> Assignee: Andrei Gurau
> Priority: P3
> Labels: Clarified, starter
> Time Spent: 4h 40m
> Remaining Estimate: 0h
>
> Proto:
> message TSFoo {
> string a = 1;
> string b = 2;
> TSFoo theOlderMe = 3;
> }
> new ProtoMessageSchema().schemaFor(TypeDescriptor.of(Foo.TSFoo.class));
> Causes a stackoverflow.
>
>
--
This message was sent by Atlassian Jira
(v8.20.7#820007)