On 20/07/10 01:38 AM, Vladimir Kotal wrote:
On 07/16/10 03:06 AM, James C. McPherson wrote:

<snip>

(a) please add timestamps to the wsdiff section in nightly.sh so
we know how long it's taking

added.

Thanks

(b) how long does this take on a full debug+nondebug build?

Depends on the machine and the nature of the changes. The speedup
observed during my test runs on different machines was at least 5 times.
If you're interested in specific setup/HW just let me know and I will
run the tests.

Heck, I'm not demanding - 5x is *fine* :-)

(c) have you tested this with python2.6 as well?

Only just now. It complains about popen2 module being deprecated but
otherwise runs without a problem. In fact, wsdiff does not need that
module anymore so I removed it.

Cool.

(d) have you had a crack at making the calls to elfdump an internal
implementation?

You mean there is a Python library which implements the elfdump
functionality ? Can you point me to it ?

I found a library to do it (http://sourceforge.net/projects/python-elf)
but it's pre-alpha, GPLv3 and the path to using such a thing under our
new overlords is murky.


(e) likewise, how about using the difflib and filecmp modules rather
than calling out for the OS versions?

I believe this entails:
a) replacing diff_cmd as it is used in diffFileData() by some function
from difflib.
b) using filecmp for both top-level (proto area comparison in
protoCatalog()) and archive contents comparison compareArchives())

Ad
a) using difflib probably means to abandon the current diff format in
the results file since it basically supports
ndiff/unified_diff/context_diff. Okay, I could post-process the output
from unified_diff() to simulate the currently used context-less diff (as
produced by /usr/bin/diff when run w/o arguments) but maybe it's time to
make the output better. I'd vote for unified_diff() with default context
(n=3). (and maybe make the number tunable ?)

That's fine from my point of view

b) filecmp.dircmp() nicely does the job of recursively comparing 2
directories (at least according to the examples/capabilities, haven't
played with it yet) and will simplify the code a bit.

Both are good ideas but since they are not directly related to the
changes and will take some time to finish I'd like to do them separately.

For sure - making wsdiff parallelised is enough of a jump in itself.

While going through the code again I also removed the .esa file support.
webrev refreshed.

Excellent, thankyou.

I'm really looking forward to getting this change into onbld tools.

Thankyou,
James
--
Oracle
http://www.jmcp.homeunix.com/blog
_______________________________________________
tools-discuss mailing list
tools-discuss@opensolaris.org

Reply via email to