You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@druid.apache.org by Furkan KAMACI <fu...@gmail.com> on 2019/02/02 13:08:53 UTC

Re: Forbiddenapis Plugin

Hi,

By the way, Locale.ENGLISH is used to fix such cases. However, we may
prefer Locale.ROOT?

Kind Regards,
Furkan KAMACI

On Thu, Jan 31, 2019 at 9:50 PM Julian Hyde <jh...@apache.org> wrote:

> I’ve seen a similar problem in Calcite, which also uses forbiddenApis. It
> only seems to occurs in a “bad build”; when you do “mvn clean” the problems
> disappear.
>
> My hypothesis is that the code is generated by javac, for example for the
> messages from “assert”, or when concatenating string literals separated by
> “+", and it really is not something to worry about.
>
> Julian
>
>
> > On Jan 31, 2019, at 9:40 AM, Gian Merlino <gi...@apache.org> wrote:
> >
> > Good question. I'm not sure. They are at least doing String.format on
> > _something_ with no default locale.
> >
> > On Thu, Jan 31, 2019 at 9:36 AM Charles Allen
> > <ch...@snap.com.invalid> wrote:
> >
> >> Is this indicative of latent bugs the generated sources have?
> >>
> >> On Thu, Jan 31, 2019 at 8:55 AM Gian Merlino <gi...@apache.org> wrote:
> >>
> >>> I get those sometimes with generated sources -- typically doing a "mvn
> >>> clean" beforehand clears it up. We might be able to add exclusions for
> >> the
> >>> generated source directories in order to avoid the need to do this.
> >>>
> >>> On Thu, Jan 31, 2019 at 5:15 AM Furkan KAMACI <fu...@gmail.com>
> >>> wrote:
> >>>
> >>>> I try to run forbiddenapis plugin at Druid. However I get that errors
> >> but
> >>>> does not know where they actually points:
> >>>>
> >>>> [INFO] Scanning classes for violations...
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.BinaryEvalOpExprBase
> >> (Expr.java,
> >>>> method body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.LongExpr (Expr.java, method
> >> body
> >>> of
> >>>> '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.FunctionExpr (Expr.java,
> method
> >>>> body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.data.input.impl.InputRowParser
> >>>> (InputRowParser.java, method body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.BinAndExpr (Expr.java, method
> >>> body
> >>>> of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.java.util.common.concurrent.Execs
> >>>> (Execs.java, method body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.BinOrExpr (Expr.java, method
> >> body
> >>>> of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.StringExpr (Expr.java, method
> >>> body
> >>>> of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.DoubleExpr (Expr.java, method
> >>> body
> >>>> of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.UnaryMinusExpr (Expr.java,
> >> method
> >>>> body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.UnaryNotExpr (Expr.java,
> method
> >>>> body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Forbidden method invocation:
> >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> >>> default
> >>>> locale]
> >>>> [ERROR]   in org.apache.druid.math.expr.IdentifierExpr (Expr.java,
> >> method
> >>>> body of '$$$reportNull$$$0(int)')
> >>>> [ERROR] Scanned 714 class file(s) for forbidden API invocations (in
> >>> 0.65s),
> >>>> 12 error(s).
> >>>>
> >>>> Do you have any idea?
> >>>>
> >>>> Kind Regards,
> >>>> Furkan KAMACI
> >>>>
> >>>
> >>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@druid.apache.org
> For additional commands, e-mail: dev-help@druid.apache.org
>
>

Re: Forbiddenapis Plugin

Posted by Gian Merlino <gi...@apache.org>.
Would it change any behaviors? I'm not familiar with the difference between
the two locales in practice.

On Sat, Feb 2, 2019 at 5:09 AM Furkan KAMACI <fu...@gmail.com> wrote:

> Hi,
>
> By the way, Locale.ENGLISH is used to fix such cases. However, we may
> prefer Locale.ROOT?
>
> Kind Regards,
> Furkan KAMACI
>
> On Thu, Jan 31, 2019 at 9:50 PM Julian Hyde <jh...@apache.org> wrote:
>
> > I’ve seen a similar problem in Calcite, which also uses forbiddenApis. It
> > only seems to occurs in a “bad build”; when you do “mvn clean” the
> problems
> > disappear.
> >
> > My hypothesis is that the code is generated by javac, for example for the
> > messages from “assert”, or when concatenating string literals separated
> by
> > “+", and it really is not something to worry about.
> >
> > Julian
> >
> >
> > > On Jan 31, 2019, at 9:40 AM, Gian Merlino <gi...@apache.org> wrote:
> > >
> > > Good question. I'm not sure. They are at least doing String.format on
> > > _something_ with no default locale.
> > >
> > > On Thu, Jan 31, 2019 at 9:36 AM Charles Allen
> > > <ch...@snap.com.invalid> wrote:
> > >
> > >> Is this indicative of latent bugs the generated sources have?
> > >>
> > >> On Thu, Jan 31, 2019 at 8:55 AM Gian Merlino <gi...@apache.org> wrote:
> > >>
> > >>> I get those sometimes with generated sources -- typically doing a
> "mvn
> > >>> clean" beforehand clears it up. We might be able to add exclusions
> for
> > >> the
> > >>> generated source directories in order to avoid the need to do this.
> > >>>
> > >>> On Thu, Jan 31, 2019 at 5:15 AM Furkan KAMACI <
> furkankamaci@gmail.com>
> > >>> wrote:
> > >>>
> > >>>> I try to run forbiddenapis plugin at Druid. However I get that
> errors
> > >> but
> > >>>> does not know where they actually points:
> > >>>>
> > >>>> [INFO] Scanning classes for violations...
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.BinaryEvalOpExprBase
> > >> (Expr.java,
> > >>>> method body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.LongExpr (Expr.java, method
> > >> body
> > >>> of
> > >>>> '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.FunctionExpr (Expr.java,
> > method
> > >>>> body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.data.input.impl.InputRowParser
> > >>>> (InputRowParser.java, method body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.BinAndExpr (Expr.java,
> method
> > >>> body
> > >>>> of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.java.util.common.concurrent.Execs
> > >>>> (Execs.java, method body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.BinOrExpr (Expr.java, method
> > >> body
> > >>>> of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.StringExpr (Expr.java,
> method
> > >>> body
> > >>>> of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.DoubleExpr (Expr.java,
> method
> > >>> body
> > >>>> of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.UnaryMinusExpr (Expr.java,
> > >> method
> > >>>> body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.UnaryNotExpr (Expr.java,
> > method
> > >>>> body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Forbidden method invocation:
> > >>>> java.lang.String#format(java.lang.String,java.lang.Object[]) [Uses
> > >>> default
> > >>>> locale]
> > >>>> [ERROR]   in org.apache.druid.math.expr.IdentifierExpr (Expr.java,
> > >> method
> > >>>> body of '$$$reportNull$$$0(int)')
> > >>>> [ERROR] Scanned 714 class file(s) for forbidden API invocations (in
> > >>> 0.65s),
> > >>>> 12 error(s).
> > >>>>
> > >>>> Do you have any idea?
> > >>>>
> > >>>> Kind Regards,
> > >>>> Furkan KAMACI
> > >>>>
> > >>>
> > >>
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@druid.apache.org
> > For additional commands, e-mail: dev-help@druid.apache.org
> >
> >
>