You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "Stephen Haberman (JIRA)" <ji...@apache.org> on 2014/11/18 05:44:33 UTC

[jira] [Commented] (IVY-1498) Mixed use of symlinks leads to cache corruption

    [ https://issues.apache.org/jira/browse/IVY-1498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14215705#comment-14215705 ] 

Stephen Haberman commented on IVY-1498:
---------------------------------------

We've had this fixed in our Ivy fork for awhile, but used Files.isSymbolLink (in Java 7, which means Ivy can probably never use it), so I hadn't bothered submitting a patch so far.

But here's the fix:

https://github.com/stephenh/ivy/commit/43328166d322efba785e6e6777adb8325e6504e0

Maybe "blocker" status isn't quite right; if a person only uses symlink mode, and never purposefully/accidentally switches back to non-symlink mode, then they would be okay.

> Mixed use of symlinks leads to cache corruption
> -----------------------------------------------
>
>                 Key: IVY-1498
>                 URL: https://issues.apache.org/jira/browse/IVY-1498
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>            Reporter: Stephen Haberman
>            Priority: Blocker
>
> If a user switches between "use symlinks" or not (or, say, has ant/ivy configured with symlinks but Eclipse/IvyDE without symlinks), the ivycache can be corrupted.
> Specifically, if a symlink was setup in symlink mode:
> lib/foo.jar --> ivycache/com/foo/foo-1.2.jar
> And then later we retrieve into lib without symlink mode, Ivy retrieve will write, say, foo-1.3.jar's bytes into the lib/foo.jar location...which will then overwrite the foo-1.2.jar bytes in the ivycache.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)