Skip to Content
author's profile photo Former Member
Former Member

Help: NWDI 7.2 CBS build problem - initialize compartment-broken DCs

Hi all.

I am facing a problem with CBS build due to broken DCs - invalid dependencies. I have read all the articles and notse related to this issue, but cannot not solve is. Has anyone faced this issue or know a solution?

The problem:

In one SC I have a DC A, which used to have public part PP_A.

In another SC I have a DC B, which used to depend on public part PP_A of DC A.

As part of implementation, the PP_A in DC A was deleted and replaced by new public parts. The changes are checked in and activated in NWDI successfully.

Next, the DC B was corrected, its reference to PP_A was deleted and replaced with appropriate replacements.

I checked in the activity correcting the DC B. Activation fails, because CBS complains that DC B has invalid dependency. I assume that the CBS cache still holds the old sources.

I took the compartment where DC B is located and triggered a CBS Reinitialize compartment (which should discard the cached sources and load a fresh copy). The CBS Reinitialize compartment request fails too! The log shows the same message as the build log: invalid dependency.

It seems that during reinitialize, CBS checks the validity of the DCs in the compartment BEFORE it does clean its cache and refreshes from DTR.

In DTR, I can see the sources of DC A and DC B checked in correctly in the inactive branch, the .dcdef in DC B contains correct references to new public parts of DC A.

Does anyone know how to force CBS to refresh its sources from DTR where correct sources are checked in?


Edited by: Rastislav Cesnek on Dec 20, 2011 3:25 PM

Add comment
10|10000 characters needed characters exceeded

1 Answer

  • Posted on Dec 21, 2011 at 03:40 AM

    two sc in same track?

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Jun Wu


      Its not the CONS, it's the active from DEV which is used. I sort of don't understand the NWDI concept then, maybe SAP could learn a little from Hudson, CruiseControl you name it.

      Apparently, as I found out after some trial and error, the checks done before the build AND before the initialize compartment run on sources from ACTIVE branch. So the check-ed in fixed sources of the DC B are ignored by CBS. It then complains about the invalid dependencies all the time.

      Finally, although it looks very scary, I activated the soure code changes of the dependent components (I hade a lot of them, not just one) with the "Activate even if the build fails". Then the initialize compartment did not complain about BROKEN components because of dependencies, because the check of metadata succeeded and the components were rebuilt.

      Thanks for hints.