[ https://issues.apache.org/jira/browse/IVY-1318?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
jaikiran pai resolved IVY-1318. ------------------------------- Resolution: Resolved Assignee: jaikiran pai Fix Version/s: master The upcoming (2.5) release of Ivy no longer spawns a process to create symlinks. Instead it uses Java standard APIs (introduced in Java 7) to create symlinks. > Faster symlink creation (avoid a JVM fork per symlink) > ------------------------------------------------------ > > Key: IVY-1318 > URL: https://issues.apache.org/jira/browse/IVY-1318 > Project: Ivy > Issue Type: New Feature > Components: Core > Affects Versions: 2.2.0 > Reporter: Oliver Jowett > Assignee: jaikiran pai > Priority: Minor > Labels: patch > Fix For: master > > Attachments: IVY-1318-r1373520.patch, ivy-2.2.0-symlink.txt > > > 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 was sent by Atlassian JIRA (v6.4.14#64029)