[
https://issues.apache.org/jira/browse/DRILL-4491?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15186430#comment-15186430
]
ASF GitHub Bot commented on DRILL-4491:
---------------------------------------
Github user adityakishore commented on the pull request:
https://github.com/apache/drill/pull/418#issuecomment-194097775
Until I looked at the code, I was under assumption that we are using
Jackson to extract the serializable properties. We can, and should, definitely
go that route.
The way code currently works is that it iterate through allthe table
options and see if there is a Java field present in the corresponding
FormatPluginConfig class. If it does find one, and this is why I say it is a
bug in the current implementation, it makes is accessible
(`setAccesible(true)`) implying that it is expected to work with non-public
fields and sets the value to the one passed as parameter.
> FormatPluginOptionsDescriptor requires FormatPluginConfig fields to be public
> -----------------------------------------------------------------------------
>
> Key: DRILL-4491
> URL: https://issues.apache.org/jira/browse/DRILL-4491
> Project: Apache Drill
> Issue Type: Bug
> Reporter: Aditya Kishore
> Assignee: Aditya Kishore
> Priority: Minor
> Fix For: 1.7.0
>
>
> The code uses {{getField()}} instead of {{getDeclaredField()}}, which returns
> only the public fields.
> {code:title=FormatPluginOptionsDescriptor.java:165|borderStyle=solid}
> Field field = pluginConfigClass.getField(paramDef.name);
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)