ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oliver Jowett (Created) (JIRA)" <>
Subject [jira] [Created] (IVY-1318) Faster symlink creation (avoid a JVM fork per symlink)
Date Mon, 03 Oct 2011 02:36:33 GMT
Faster symlink creation (avoid a JVM fork per symlink)

                 Key: IVY-1318
             Project: Ivy
          Issue Type: New Feature
          Components: Core
    Affects Versions: 2.2.0
            Reporter: Oliver Jowett
            Priority: Minor

We have a large project using Ivy with many large artifacts.
In theory we should benefit from symlink="true" (space savings and reduced I/O), but in practice
the overhead of forking the Ant JVM for each individual symlink means that a build using symlink="true"
actually runs a lot (30%+) slower, which is too much of a cost to justify using it.

To work around this I modified FileUtils to run a single long-lived shell process that reads
instructions from stdin and performs symlinks accordingly.
This makes symlink="true" no slower than symlink="false".

I will attach a patch against 2.2.0. Tested only in a Linux environment, but in theory it
should work on anything POSIX-y, and should fall back to file copy much as the existing code
does if anything goes wrong.

Any interest in getting this included in an official version?

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message