Findbugs reports potential performance problems with the URLs in MoMLParser:

> Dm: The equals and hashCode methods of URL are blocking 
(DMI_BLOCKING_METHODS_ON_URL)
>
> The equals and hashCode method of URL perform domain name resolution,
> this can result in a big performance hit. See
> 
http://michaelscharf.blogspot.com/2006/11/javaneturlequals-and-hashcode-make.html
> for more information. Consider using java.net.URI instead.
> Dm: Maps and sets of URLs can be performance hogs (DMI_COLLECTION_OF_URLS)
>
> This method or field is or uses a Map or Set of URLs. Since both the equals 
and
> hashCode method of URL perform domain name resolution, this can result in a 
big
> performance hit. See 
http://michaelscharf.blogspot.com/2006/11/javaneturlequals-and-hashcode-make.html
> for more information. Consider using java.net.URI instead.

To see the FindBugs output for the ptII repository, see
http://chess.eecs.berkeley.edu/ptexternal/nightly/findbugs.htm

I checked the access logs on the Ptolemy web server and it looks
like the nightly build is only accessing the dtd once, which is during the
running of a test.  I'll see if I can track down which test.
The rest of the accesses from the nightly build are for tests that
specifically access a model on the Ptolemy web server.

I also experimented using dtruss on the Mac and tried creating URLs and
using equals() on them.  It looked like Java was only attempting to resolve
addresses when the URL included a network protocol such as http:.
When I created and compared file: URLs, then I did not see any kernel
calls to resolve names.

I also ran the tests in ptolemy/moml and ptolemy/actor/lib while sniffing my
network connection using Wireshark and saw no outgoing traffic.

So, I think the FindBugs URL warnings for MoMLParser may be safely ignored.
If we were going to rewrite MoMLParser, it would better to use URIs instead
of URLs.

_Christopher

--
Christopher Brooks, PMP                       University of California
CHESS Executive Director                      US Mail: 337 Cory Hall
Programmer/Analyst CHESS/Ptolemy/Trust        Berkeley, CA 94720-1774
ph: 510.643.9841                              (Office: 545Q Cory)
home: (F-Tu) 707.665.0131 cell: 707.332.0670
_______________________________________________
Kepler-dev mailing list
[email protected]
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-dev

Reply via email to