It's all about the answers!

Ask a question

[closed] RTCp: Load latest changes only set but everything is built?


Ulf Buchner (3182213) | asked Aug 25 '11, 8:35 a.m.
closed Jul 10 '12, 8:53 a.m.
Hi all,

We have RTCp 2.0.0.2iFix2 installed (on Power). We use the IBM i command build to build everything that has changed since the last build. But for some reason at some times a lot more objects or even everything (!) is build, not only the latest changes. Does anyone have a clue about what could cause this?

About our build setup: in the build definition we have the "load latest changes only" option set for the build workspace. We use a special build workspace that is owned by the build user and flows from the same stream as where the developers deliver their work to. For the build command the option "Run the build for every changed artifact" is set. So we expect only the changed objects that are delivered to the stream to be built.

About our project settings: we have one shared development library which is used by developers to compile their changes to. This developer compile is done from the i Projects perspective using the remote compile command. This library is mapped to the projects in the workspace properties of developers. The RTC build uses the same i projects to library mapping.

Hope anyone can give us some advise.

Thanks in advance,

Ulf

The question has been closed for the following reason: "The question is answered, right answer was accepted" by ubuchner Jul 10 '12, 8:53 a.m.

2 answers



permanent link
Arne Bister (2.6k12832) | answered Jun 24 '12, 10:17 a.m.
JAZZ DEVELOPER
Hi,

with IBM i command build, there is no source dependency check by RTC. The "load latest changes only" pertains to what sources are being loaded into the Repository Workspace --> transferred to target build library. Not sure that with IBM i and RTC 2.0.0.2 , the target library gets cleaned before those changes are loaded. This might account for the IBM i command rebuilding more than just the recent changes.

The whole topic of Dependency Build and building really just the most recent changes (in fact, also being able to promote just the changes attached to e.g. a work item) is now solved with the advent of RTC 4.0 and the common Enterprise Extension features, enhancing the IBM i build to be on feature parity with z.

Would the RTC 4.0 dependency build be a feasible approach for your team? I really would like to hear your opinion on it.

- Arne


permanent link
Ulf Buchner (3182213) | answered Jun 29 '12, 11:06 a.m.
Hi Arne,

Thanks for your answer. We are considering an upgrade in the not too near future. We do not check any dependencies, RTC keeps track of the changed objects which are then built. The developers themselves take care of checking the dependencies. We may change this way of working when using a new version with a better dependency support.

In the meantime I noticed two things about my problem, which made it possible to work around it:
1. When a developer deletes all previous build results it seems that when a new build is submitted afterwards RTC cannot find the previous snapshot because the build result doesn't exist anymore. Sounds like "duh", but it's not what one would expect. The work around we use for this is that we don't delete the last build result, so there is always one left with a snapshot in it. As I am writing this I realize that this last build may also be a build which had nothing to do and therefor doesn't include a snapshot. So it may be necessary to keep more build results, with at least one snapshot in them.
2. Sometimes RDp seems to change the description of source physical files, which is then checked into RTC. Sometimes it changes the description to blanks and the next moment it changes it back to the description as it should be. When the description of a source physical changes all source members in this file are considered to be changed and they will therefor be rebuilt by RTC, causing a build with hundreds of objects in it, which actually didn't change. We work around this "feature" by excluding the .properties files for the source physical files from RTC (using .jazzignore files). They do not change anyway, so excluding is no problem.

As said before, we are currently trying to convince management to upgrade RTC to the latest version. This would include moving away from the IBM i platform to one or more RTC servers on Windows VMWare machines, as in my opinion RTC support for the IBM i version has always been much underprioritized by IBM.

Thanks once again,

Ulf

Comments
Arne Bister commented Jun 29 '12, 11:34 a.m. | edited Jun 29 '12, 11:37 a.m.
JAZZ DEVELOPER

Hi Ulf, couple of things to comment: a) Thanks for your very detailed answer. b) What is the reason behind deleting builds? Why not keep the history? I will check if you can convert the baseline to public in 4.0 even when build gets deleted. c) That RDP behavior sounds like a defect. Have you logged a bug with support? d) Regarding upgrade: yes, many good reasons to go to 4.0, especially with regard to work done for IBM i

  • Arne