8 Replies Latest reply on Feb 8, 2013 6:45 AM by RoboColum(n)

    RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?

    Concc

      Hi there,

       

      I’m using RoboHelp 8 (with service packs, version number is 8.0.2.208). There are two writers on our team (in separate offices) and we use SVN (via Tortoise SVN) to version all our source files. Our Online Help is comprised of about 30 individual help projects that we merge at build time. We work locally on our own machines and commit everything to SVN each evening.

       

      We (mainly me) have had ongoing problems with .cpd files getting corrupted (I’m in the company 5 months). I’ve followed all the good advice I’ve seen on forums about renaming/deleting them and letting the affected RoboHelp project re-create it when I start it up again. This has worked until now.

       

      Also note, that I got a new machine early this week and I brought all our source files down successfully from our SVN repository after we installed RoboHelp. Happy days.

       

      Yesterday in one Help project I received the following error messages and noticed that the Conditional Build Tags were not listed in the CBT Pod, despite being present in the topic themselves.

      • An error occurred while trying to read data from <Project Path\Project Name\rhbuildtag.apj> <1>
      • Your project file, C:<Project Path\Project Name\project.cpd, is corrupt and cannot be opened. Try deleting this file and reopening the project.

       

      I consulted with my colleague this morning and his local project is fine – all conditions present and correct and no CPD error message. He committed his project to SVN and I updated but still no luck.

       

      Despite having the latest versions from our repository anyway, I tried copying the contents of his rhbuildtag.apj file to mine but that made no difference at my side. I renamed/deleted CPD files several times over but project still won’t open. I deleted my local working versions of all our Help projects and brought them down from our SVN repository - twice. No luck.

       

      I’m flummoxed as how to fix this project/restore conditions to CBT Pod?

      Why would I have ongoing CPD issues and my colleague not?

       

      My colleague is offline until the morning (different time zones) so will catch up with him then again. It seems to be something very local to my setup.

       

      Many thanks in advance for any wise words offered.

        • 1. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
          Jeff_Coatsworth Adobe Community Professional & MVP

          You should also check the forums to see that you're checking in/out the correct files - there are some that shouldn't ever be placed in source control

          1 person found this helpful
          • 2. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
            Concc Level 1

            Hi Jeff,

             

            Yes, we are aware of not versioning certain files types  (.ldb, .hhp, .pss and .cpd). These are not versioned to our SVN repository and remain unversioned locally.

             

            Many thanks.

            • 3. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
              RoboColum(n) Level 5

              ...and the .cpd file is one of them. We use the SVN Ignore command to stop these being checked into SVN. However this issue seems to be with the conditional build tag file. in order to eliminate any source control trickery I think you need to save the source to another non-SVN location and remove all connection to your SVN Repository. Does the project open then? I suspect it won't as I think the rhbuildtag.apj may well be corrupt. If this is the case you'll either have to recreate it or see if you have an old copy somewhere that you can copy in.

              1 person found this helpful
              • 4. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
                Concc Level 1

                Hi RoboColum(n),

                 

                Many thanks for your reply. I'll try your suggestions and report back but I do suspect you are right and the rhbuildtag.apj has given up the ghost.

                 

                But I'm flummoxed as to why my colleague had no problems this morning when he opened his project? He commited back to SVN and I ensured I got the latest (several times).

                 

                Also do you have any insight into how I can prevent .cpd files corrupting? I thought my new (ish ) machine would help and maybe this issue is just a coincidence, caused by a troublesome rhbuildtag.apj file.

                 

                Many thanks!

                • 5. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
                  RoboColum(n) Level 5

                  RH8 introduced an option to delete and rebuild the CPD file each and every time you open a project. Read about it here. To be honest there isn't a lot you can do other than set the option. It is an essential file. A rough best practice guideline is if the file gets more than 2mb in size it is time to trash it. Of course if you are doing this automatically via the option and the file size is still 2mb, it may be time to look at other options. One of those would be to look at your overall project size and splitting them up. This would be a fair amount of work so try the option first.

                  1 person found this helpful
                  • 6. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
                    Concc Level 1

                    Hi RoboColum(n),

                     

                    On a quick spot check, the .cpd file sizes seem to be within the advised guidelines (960KB-980KB). So don't think its a size issue?!

                     

                    Thanks again for your replies - all very much appreciated.

                    • 7. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
                      Concc Level 1

                      Hi folks,

                       

                      Just to let you know that we resolved our problems with our misbehaving rhbuildtag.apj and .cpd project files. 

                       

                      As I mentioned previously, my colleague's version had been working fine. This was the very puzzling bit as I was pulling the exact same set of project files from our SVN repository. 

                       

                      Since yesterday...

                      From these forums, I discovered the 'Clear project cache(.cpd) before opening any project' check box in the Tools > Options dialog. That wasn't selected in my troubled project (was able to get into the project earlier in the day). It was selected in other projects so selected it but it made no difference.

                       

                      I then asked my colleague this morning to check if that check box was selected on his working copy of the project, reasoning that maybe if it was selected on mine and not his, it could cause some kind of disparity.

                       

                      Wrong move. Very wrong move. Clearing his cache file caused him to get the same errors as I had got. So while we had the exact same rhbuildtag.apj file, there must have been something in his old cache file, keeping this error at bay. We don't version the .cpd files so his file would have been particular to his local working version of the project.

                       

                      So another step back - now a corrupt project at both offices.

                       

                      I then took another look at the contents of the troublesome rhbuildtag.apj file. I had noticed yesterday that there was something funny about one condition that I added back in October - a condition based on a release number (6.3.12). There were two instances of it in the file - looked to be saved twice though the condition was only ever added once and displayed once in the project CBT pod. See the attached screenshot.rhbuildtag.apj_ClientManagement_error with code.png Also There was some markup around it that didn't make sense, looked like the file had saved badly. I compared it to other working build tag files in other projects (and while the conditions would vary slightly across the projects, they should be very similiar. I saw nothing like it.

                       

                      I saved the contents of my file locally (though being versioned in SVN would have had a backup anyway).

                       

                      I deleted out one of the duplicate 6.3.12 conditions and removed the funny mark up.rhbuildtag.apj_ClientManagement_correct code.png

                       

                      And lo and behold our project opened successfully.

                       

                      I commited my changes to the rhbuildtag.apj file back to SVN. My colleague updated his version and his problems too are resolved.

                       

                      Root cause:
                      Looks like our woes were caused by a corrupt condition in the rhbuildtag.apj file, which then caused the .cpd file to crash.


                      Resolution:
                      Identified duplicate condition tags and superfluous markup in the rhbuildtag.apj file and remove them (after making a copy). My previous machine was terribly slow and RoboHelp oftened crashed due to the poor machine performance. This could be one plausible cause for the corrupt condition.

                       

                      Given we added this condition back in October, I'm not sure why the problem only cropped up now as we would have made changes to the project since then. But such is RoboHelp and our daily battles.

                       

                      Hope this info is of help to someone out there.

                       

                      Thanks for all the replies - much appreciated.

                      • 8. Re: RoboHelp 8 - how to resolve rhbuildtag.apj/.cpd file errors?
                        RoboColum(n) Level 5

                        Thank you for posting your solution back, especially as it is so detailed. I'm sure it will help someone in the future.