[Soot-list] A little problem when run a "wjtp" Transformer

周书林 zhoushulin1992 at gmail.com
Tue Nov 13 09:36:37 EST 2018


Hi Eric,

Thank you very much!

This
"org.apache.hadoop.hbase.regionserver.MetricsRegionServerSourceFactory" is
in another jar "hbase-hadoop-compat.jar". So there is an exception in my
analysis transformer. But I still have a problem, I have set
"allow_phantom_refs" as "true", but this unknown class/interface is not
resolved correctly. Is there any problem in soot?

Sincerely
Sep

Eric Bodden <eric.bodden at uni-paderborn.de> 于2018年11月13日周二 下午6:54写道:

> Hello.
>
> Are you absolutely sure that the type is also an interface type in the JAR
> file you are analyzing? You can try the command “javap -v —classpath
> <jarFile>
> org.apache.hadoop.hbase.regionserver.MetricsRegionServerSourceFactory” to
> find this out.
>
> If it’s really an interface type then this seems to be a bug in Soot which
> you kindly should report here:
> https://github.com/Sable/soot/issues
>
> In that case please include detailed instructions on how to reproduce the
> problem.
>
> Cheers
> Eric
>
> > On 13. Nov 2018, at 05:54, 周书林 <zhoushulin1992 at gmail.com> wrote:
> >
> > Hi, soot's developers and "experienced users", I'm new to soot and
> recently I've been using it to do some static analysis work on Java
> program(I'm also not familiar with static analysis, sorry about that).
> >
> > I wrote a Transformer to analyse some Java software. But there comes a
> problem. The attachment is the stack information.
> >
> > The detail is, this
> "org.apache.hadoop.hbase.regionserver.MetricsRegionServerSourceFactory" is
> indeed an interface defined in
> "hbase/hbase-hadoop-compat/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsRegionServerSourceFactory.java"
> as follows:
> >
> >
> > package org.apache.hadoop.hbase.regionserver;
> >
> > import org.apache.hadoop.hbase.io.MetricsIOSource;
> > import org.apache.hadoop.hbase.io.MetricsIOWrapper;
> > import org.apache.yetus.audience.InterfaceAudience;
> >
> > /**
> >  * Interface of a factory to create Metrics Sources used inside of
> regionservers.
> >  */
> > @InterfaceAudience.Private
> > public interface MetricsRegionServerSourceFactory {
> >
> >   /**
> >    * Given a wrapper create a MetricsRegionServerSource.
> >    *
> >    * @param regionServerWrapper The wrapped region server
> >    * @return a Metrics Source.
> >    */
> >   MetricsRegionServerSource createServer(MetricsRegionServerWrapper
> regionServerWrapper);
> >
> >   /**
> >    * Create a MetricsRegionSource from a MetricsRegionWrapper.
> >    *
> >    * @param wrapper The wrapped region
> >    * @return A metrics region source
> >    */
> >   MetricsRegionSource createRegion(MetricsRegionWrapper wrapper);
> >
> >   /**
> >    * Create a MetricsTableSource from a MetricsTableWrapper.
> >    *
> >    * @param table The table name
> >    * @param wrapper The wrapped table aggregate
> >    * @return A metrics table source
> >    */
> >   MetricsTableSource createTable(String table,
> MetricsTableWrapperAggregate wrapper);
> >
> >   /**
> >    * Get a MetricsTableAggregateSource
> >    *
> >    * @return A metrics table aggregate source
> >    */
> >   MetricsTableAggregateSource getTableAggregate();
> >
> >   /**
> >    * Get a MetricsHeapMemoryManagerSource
> >    * @return A metrics heap memory manager source
> >    */
> >   MetricsHeapMemoryManagerSource getHeapMemoryManager();
> >
> >   /**
> >    * Create a MetricsIOSource from a MetricsIOWrapper.
> >    *
> >    * @return A metrics IO source
> >    */
> >   MetricsIOSource createIO(MetricsIOWrapper wrapper);
> > }
> >
> > So, what should I do with soot?
> >
> > Sincerely hope for suggestions from you! Thank you very much!
> >
> > <attachment>_______________________________________________
> > Soot-list mailing list
> > Soot-list at CS.McGill.CA
> > https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20181113/d9b324aa/attachment.html>


More information about the Soot-list mailing list