[ 
https://issues.apache.org/jira/browse/DRILL-7945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17356761#comment-17356761
 ] 

Laurent Goujon commented on DRILL-7945:
---------------------------------------

It looks like this is not as serious as thought: Several methods were added in 
the {{GuavaPatcher}} class because Apache Iceberg was using a more recent 
version of Guava than Drill, but by moving to Guava 30, those methods are not 
necessary anymore, and the reason the patch fails is because the formatting 
method used in previous version of Guava (and used to patch the code) has been 
removed since. But even if patching fails, because the methods used by Iceberg 
are still present, there's no compatibility issues.

It seems anyway that we should add a test case to make sure patching doesn't 
fail so that the next time Guava is updated, we can be alerted about checking 
the state of this class.



> Unable to patch Guava classes
> -----------------------------
>
>                 Key: DRILL-7945
>                 URL: https://issues.apache.org/jira/browse/DRILL-7945
>             Project: Apache Drill
>          Issue Type: Bug
>    Affects Versions: 1.19.0
>            Reporter: Vova Vysotskyi
>            Assignee: Vitalii Diravka
>            Priority: Blocker
>             Fix For: 1.19.0
>
>
> When starting Drill in embedded mode, logs have the following line:
> {noformat}
> 2021-06-03 21:59:07,711 [main] WARN  o.a.drill.common.util.GuavaPatcher - 
> Unable to patch Guava classes: [source error] 
> format(java.lang.String,java.lang.Object[]) not found in 
> com.google.common.base.Preconditions
> {noformat}
> Most likely it is a regression after DRILL-7904.
> The importance of this issue is that all 3rd party libraries that initially 
> relied on patched methods from {{Preconditions}} will stop working because of 
> method not found errors during the runtime.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to