[
https://issues.apache.org/jira/browse/IVY-707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12561023#action_12561023
]
Jim Adams commented on IVY-707:
-------------------------------
Xavier, your example is not what I have. I have:
#A -> { #B;1.0 }
#B;1.0 -> { #C;1.0 }
And I am building D requesting latest.integration of A,B,C. All versions are
known and none of them should be pusblished as unknown, which is what is
happening.
> Deliver delivers the wrong version when a dynamic revision is evicted before
> being resolved
> -------------------------------------------------------------------------------------------
>
> Key: IVY-707
> URL: https://issues.apache.org/jira/browse/IVY-707
> Project: Ivy
> Issue Type: Bug
> Affects Versions: 2.0.0-beta-1
> Environment: Unix
> Reporter: Jim Adams
> Assignee: Xavier Hanin
> Fix For: 2.0.0-beta-2
>
> Attachments: testIvy.zip
>
>
> I have 3 modules A, B, and C. C->B->A. These are in the repo with version
> 1.0.0. I then have an ivy.xml for the module test which has dependencies of
> A(latest.integration), C(latest.integration) and B(latest.integration) in
> that order. Order seems to change the outcome. During the resolve I see
> messages when resolving each of the modules that seems incorrect but that may
> only be a symptom of the real problem. A resolves to a version, C resolves
> and brings in B. B resolves A again but instead of listing the version number
> in the repo for A it lists latest.integration. In this case that will return
> the correct version but it seems wrong to see latest.integration and not
> 1.0.0. In any case the resolve finishes and we deliver the ivy.xml file and
> publish it. What gets published includes a list of dependencies that includes
> latest.integration for the resolved version. This is clearly wrong and is
> causing us lots of pain in our environment. If we move to latest-revision as
> the conflict manager then the problem goes away.
> Here are the 3 ivy files from the repo:
> <?xml version="1.0" encoding="UTF-8"?>
> <ivy-module version="1.3">
> <info organisation="SAS" module="a" revision="1.0.0.aaa_a"
> status="integration" publication="20080117045213"/>
> <configurations>
> <conf name="compile"/>
> </configurations>
> <publications/>
> <dependencies>
>
> </dependencies>
> </ivy-module>
> <?xml version="1.0" encoding="UTF-8"?>
> <ivy-module version="1.3">
> <info organisation="SAS" module="b" revision="1.0.0.bbb_b"
> status="integration" publication="20080117045213"/>
> <configurations>
> <conf name="compile"/>
> </configurations>
> <publications/>
> <dependencies>
> <dependency name="a" rev="1.0.0.aaa_a" org="SAS" conf="compile"/>
> </dependencies>
> </ivy-module>
> <?xml version="1.0" encoding="UTF-8"?>
> <ivy-module version="1.3">
> <info organisation="SAS" module="c" revision="1.0.0.ccc_c"
> status="integration" publication="20080117045213"/>
> <configurations>
> <conf name="compile"/>
> </configurations>
> <publications/>
> <dependencies>
> <dependency name="b" rev="1.0.0.bbb_b" org="SAS" conf="compile"/>
> </dependencies>
> </ivy-module>
> Here is the source ivy.xml file:
> <?xml version='1.0' encoding='UTF-8'?>
> <ivy-module version='1.3'>
> <info status='integration' module='test' organisation='SAS'>
> <ivyauthor name='SAS Build Technologies Team'
> url='http://bt.unx.sas.com'/>
> <description>Please describe sas.svc.sec.login here.</description>
> </info>
> <configurations>
> <conf name='compile'/>
> <!--conf name='runtime'-->
> </configurations>
> <publications>
> </publications>
> <dependencies>
> <dependency name='a' rev='latest.integration' org='SAS' conf='compile'/>
> <dependency name='c' rev='latest.integration' org='SAS' conf='compile'/>
> <dependency name='b' rev='latest.integration' org='SAS' conf='compile'/>
> </dependencies>
> </ivy-module>
> and here is the published ivy file
> <?xml version="1.0" encoding="UTF-8"?>
> <ivy-module version="1.3">
> <info organisation="SAS" module="test" revision="20080117162421"
> status="integration" publication="20080117162421">
> <ivyauthor name="SAS Build Technologies Team"
> url="http://bt.unx.sas.com"/>
> <description>Please describe sas.svc.sec.login here.</description>
> </info>
> <configurations>
> <conf name="compile"/>
> <!--conf name='runtime'-->
> </configurations>
> <publications>
> </publications>
> <dependencies>
> <dependency name="a" rev="1.0.0.aaa_a" org="SAS" conf="compile"/>
> <dependency name="c" rev="1.0.0.ccc_c" org="SAS" conf="compile"/>
> <dependency name="b" rev="latest.integration" org="SAS" conf="compile"/>
> </dependencies>
> </ivy-module>
> Here is the resolve portion of the log:
> [ivy:resolve] parameter found as ivy variable: ivy.configurations=*
> [ivy:resolve] parameter found as ivy variable:
> ivy.resolve.default.type.filter=*
> [ivy:resolve] using ivy parser to parse file:/sasusr/u/sasjaa/testIvy/ivy.xml
> [ivy:resolve] post 1.3 ivy file: using exact as default matcher
> [ivy:resolve] :: resolving dependencies :: SAS#test;[EMAIL PROTECTED]
> [ivy:resolve] confs: [compile]
> [ivy:resolve] validate = true
> [ivy:resolve] resolving dependencies for configuration 'compile'
> [ivy:resolve] == resolving dependencies for SAS#test;[EMAIL PROTECTED]
> [compile]
> [ivy:resolve] loadData of SAS#test;[EMAIL PROTECTED] of rootConf=compile
> [ivy:resolve] == resolving dependencies SAS#test;[EMAIL
> PROTECTED]>SAS#a;latest.integration [compile->compile]
> [ivy:resolve] loadData of SAS#a;latest.integration of rootConf=compile
> [ivy:resolve] using sas-repo to resolve SAS#a;latest.integration
> [ivy:resolve] sas-repo: no latest strategy defined: using default
> [ivy:resolve] local: no namespace defined: using system
> [ivy:resolve] local: no latest strategy defined: using default
> [ivy:resolve] trying
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/latest.integration/ivy.xml
> [ivy:resolve] tried
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/latest.integration/ivy.xml
> [ivy:resolve] tried
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/[revision]/ivy.xml
> [ivy:resolve] listing all in
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/[revision]/ivy.xml
> [ivy:resolve] using local to list all in
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/
> [ivy:resolve] found 1 resources
> [ivy:resolve] found revs: [1.0.0.aaa_a]
> [ivy:resolve] local: found md file for SAS#a;latest.integration
> [ivy:resolve] =>
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/1.0.0.aaa_a/ivy.xml (1.0.0.aaa_a)
> [ivy:resolve] parser = ivy parser
> [ivy:resolve] no ivy file in cache for SAS#a;1.0.0.aaa_a: tried
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/SAS/a/ivy-1.0.0.aaa_a.xml
> [ivy:resolve] downloading
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/1.0.0.aaa_a/ivy.xml ...
> [ivy:resolve] local: downloading
> /sasusr/u/sasjaa/testIvy/repo/SAS/a/1.0.0.aaa_a/ivy.xml
> [ivy:resolve] to
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/a/ivys/ivy.original-1.0.0.aaa_a.xml.part
> [ivy:resolve] [SUCCESSFUL ] SAS#a;1.0.0.aaa_a!ivy.original.xml(ivy)
> (35ms)
> [ivy:resolve] post 1.3 ivy file: using exact as default matcher
> [ivy:resolve] cache: parsed downloaded md file for SAS#a;1.0.0.aaa_a;
> parsed=SAS#a;1.0.0.aaa_a
> [ivy:resolve] [1.0.0.aaa_a] SAS#a
> [ivy:resolve] found SAS#a;1.0.0.aaa_a in local
> [ivy:resolve] [1.0.0.aaa_a] SAS#a;latest.integration
> [ivy:resolve] == resolving dependencies SAS#test;[EMAIL
> PROTECTED]>SAS#c;latest.integration [compile->compile]
> [ivy:resolve] loadData of SAS#c;latest.integration of rootConf=compile
> [ivy:resolve] using sas-repo to resolve SAS#c;latest.integration
> [ivy:resolve] trying
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/latest.integration/ivy.xml
> [ivy:resolve] tried
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/latest.integration/ivy.xml
> [ivy:resolve] tried
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/[revision]/ivy.xml
> [ivy:resolve] listing all in
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/[revision]/ivy.xml
> [ivy:resolve] using local to list all in
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/
> [ivy:resolve] found 1 resources
> [ivy:resolve] found revs: [1.0.0.ccc_c]
> [ivy:resolve] local: found md file for SAS#c;latest.integration
> [ivy:resolve] =>
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/1.0.0.ccc_c/ivy.xml (1.0.0.ccc_c)
> [ivy:resolve] parser = ivy parser
> [ivy:resolve] no ivy file in cache for SAS#c;1.0.0.ccc_c: tried
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/SAS/c/ivy-1.0.0.ccc_c.xml
> [ivy:resolve] downloading
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/1.0.0.ccc_c/ivy.xml ...
> [ivy:resolve] local: downloading
> /sasusr/u/sasjaa/testIvy/repo/SAS/c/1.0.0.ccc_c/ivy.xml
> [ivy:resolve] to
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/c/ivys/ivy.original-1.0.0.ccc_c.xml.part
> [ivy:resolve] [SUCCESSFUL ] SAS#c;1.0.0.ccc_c!ivy.original.xml(ivy)
> (21ms)
> [ivy:resolve] post 1.3 ivy file: using exact as default matcher
> [ivy:resolve] cache: parsed downloaded md file for SAS#c;1.0.0.ccc_c;
> parsed=SAS#c;1.0.0.ccc_c
> [ivy:resolve] [1.0.0.ccc_c] SAS#c
> [ivy:resolve] found SAS#c;1.0.0.ccc_c in local
> [ivy:resolve] [1.0.0.ccc_c] SAS#c;latest.integration
> [ivy:resolve] == resolving dependencies
> SAS#c;latest.integration->SAS#b;1.0.0.bbb_b [compile->compile]
> [ivy:resolve] loadData of SAS#b;1.0.0.bbb_b of rootConf=compile
> [ivy:resolve] using sas-repo to resolve SAS#b;1.0.0.bbb_b
> [ivy:resolve] no ivy file in cache for SAS#b;1.0.0.bbb_b: tried
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/SAS/b/ivy-1.0.0.bbb_b.xml
> [ivy:resolve] trying
> /sasusr/u/sasjaa/testIvy/repo/SAS/b/1.0.0.bbb_b/ivy.xml
> [ivy:resolve] tried
> /sasusr/u/sasjaa/testIvy/repo/SAS/b/1.0.0.bbb_b/ivy.xml
> [ivy:resolve] local: found md file for SAS#b;1.0.0.bbb_b
> [ivy:resolve] =>
> /sasusr/u/sasjaa/testIvy/repo/SAS/b/1.0.0.bbb_b/ivy.xml (1.0.0.bbb_b)
> [ivy:resolve] parser = ivy parser
> [ivy:resolve] no ivy file in cache for SAS#b;1.0.0.bbb_b: tried
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/SAS/b/ivy-1.0.0.bbb_b.xml
> [ivy:resolve] downloading
> /sasusr/u/sasjaa/testIvy/repo/SAS/b/1.0.0.bbb_b/ivy.xml ...
> [ivy:resolve] local: downloading
> /sasusr/u/sasjaa/testIvy/repo/SAS/b/1.0.0.bbb_b/ivy.xml
> [ivy:resolve] to
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/b/ivys/ivy.original-1.0.0.bbb_b.xml.part
> [ivy:resolve] [SUCCESSFUL ] SAS#b;1.0.0.bbb_b!ivy.original.xml(ivy)
> (88ms)
> [ivy:resolve] post 1.3 ivy file: using exact as default matcher
> [ivy:resolve] cache: parsed downloaded md file for SAS#b;1.0.0.bbb_b;
> parsed=SAS#b;1.0.0.bbb_b
> [ivy:resolve] found SAS#b;1.0.0.bbb_b in local
> [ivy:resolve] == resolving dependencies
> SAS#b;1.0.0.bbb_b->SAS#a;latest.integration [compile->compile]
> [ivy:resolve] loadData of SAS#a;1.0.0.aaa_a of rootConf=compile
> [ivy:resolve] compile is loaded and no conf to load. Skip loading
> [ivy:resolve] == resolving dependencies SAS#test;[EMAIL
> PROTECTED]>SAS#b;latest.integration [compile->compile]
> [ivy:resolve] loadData of SAS#b;latest.integration of rootConf=compile
> [ivy:resolve] compile is evicted. Skip loading
> [ivy:resolve] == resolving dependencies SAS#test;[EMAIL
> PROTECTED]>SAS#b;1.0.0.bbb_b [compile->compile]
> [ivy:resolve] loadData of SAS#b;1.0.0.bbb_b of rootConf=compile
> [ivy:resolve] compile is loaded and no conf to load. Skip loading
> [ivy:resolve] == resolving dependencies SAS#test;[EMAIL
> PROTECTED]>SAS#b;latest.integration [compile->compile]
> [ivy:resolve] loadData of SAS#b;latest.integration of rootConf=compile
> [ivy:resolve] compile is evicted. Skip loading
> [ivy:resolve] == resolving dependencies SAS#test;[EMAIL
> PROTECTED]>SAS#b;1.0.0.bbb_b [compile->compile]
> [ivy:resolve] loadData of SAS#b;1.0.0.bbb_b of rootConf=compile
> [ivy:resolve] compile is loaded and no conf to load. Skip loading
> [ivy:resolve] Nbr of module to sort : 3
> [ivy:resolve] Sort dependencies of : SAS#a;1.0.0.aaa_a / Number of
> dependencies = 0
> [ivy:resolve] Sort done for : SAS#a;1.0.0.aaa_a
> [ivy:resolve] Sort dependencies of : SAS#c;1.0.0.ccc_c / Number of
> dependencies = 1
> [ivy:resolve] Sort dependencies of : SAS#b;1.0.0.bbb_b / Number of
> dependencies = 1
> [ivy:resolve] Module descriptor is processed : SAS#a;1.0.0.aaa_a
> [ivy:resolve] Sort done for : SAS#b;1.0.0.bbb_b
> [ivy:resolve] Sort done for : SAS#c;1.0.0.ccc_c
> [ivy:resolve] Module descriptor is processed : SAS#b;1.0.0.bbb_b
> [ivy:resolve] resolved ivy file produced in
> /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/[EMAIL PROTECTED]
> [ivy:resolve] :: downloading artifacts ::
> [ivy:resolve] :: resolution report :: resolve 846ms :: artifacts dl 1ms
> [ivy:resolve] :: evicted modules:
> [ivy:resolve] SAS#b;latest.integration by [SAS#b;1.0.0.bbb_b] in
> [compile]
> [ivy:resolve] in SAS#test;[EMAIL PROTECTED] with latest-compatible
> ---------------------------------------------------------------------
> | | modules || artifacts |
> | conf | number| search|dwnlded|evicted|| number|dwnlded|
> ---------------------------------------------------------------------
> | compile | 4 | 3 | 0 | 1 || 0 | 0 |
> ---------------------------------------------------------------------
> [ivy:resolve] Nbr of module to sort : 3
> [ivy:resolve] Sort dependencies of : SAS#a;1.0.0.aaa_a / Number of
> dependencies = 0
> [ivy:resolve] Sort done for : SAS#a;1.0.0.aaa_a
> [ivy:resolve] Sort dependencies of : SAS#c;1.0.0.ccc_c / Number of
> dependencies = 1
> [ivy:resolve] Sort dependencies of : SAS#b;1.0.0.bbb_b / Number of
> dependencies = 1
> [ivy:resolve] Module descriptor is processed : SAS#a;1.0.0.aaa_a
> [ivy:resolve] Sort done for : SAS#b;1.0.0.bbb_b
> [ivy:resolve] Sort done for : SAS#c;1.0.0.ccc_c
> [ivy:resolve] Module descriptor is processed : SAS#b;1.0.0.bbb_b
> [ivy:resolve] report for SAS#test;[EMAIL PROTECTED] compile produced
> in /r/sanyo.unx.sas.com/vol/vol2/u22/sasjaa/.ivy2/cache/SAS-test-compile.xml
> [ivy:resolve] resolve done (846ms resolve - 1ms download)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.