2 Replies Latest reply on Aug 2, 2006 8:39 AM by 436342

    Repository corrupt (again...)

    439096
      Hi,

      We have a corrupt repository (again).It is the third time in 2 years. Last time we coould migrate our production to development repository, but now it seems that the corruption already exists in production.
      Our production repository still works correct (so we can still pub/sub messages), until we add new, or change existing objects.

      We are now building a new repository from scratch out of the scripts (DTD's etc) in a newly installed hub-database.
      Anybody outthere who experienced the same? How did you solve it? Do you know what can cause these corruptions?
        • 1. Re: Repository corrupt (again...)
          416900
          This sounds I'm afraid.

          Most of the time I've found the cause to be when you try to delete or update Application or Common Data Types. Take care when importing new objects.

          With very careful deletion (I think starting with the "top" of a message structure first), will help limit these errors.

          e.g.

          My_Array
          ---First Level
          ------Second Level

          Delete the top node first (My_Array), then go down the tree.

          It is a common problem that you can get orphaned objects, and therefore a corruption can occur.

          HTH

          Yan
          • 2. Re: Repository corrupt (again...)
            436342
            The istudio tool doesn't update the USECOUNT column correctly, in some circumstances.

            If you are looking at Application View objects then you need to look at DSO and DSOATTR tables.

            The USECOUNT is on DSO.

            If you delete a publish event from an application then it will decrease the USECOUNT by 1. Sometimes this delete does not delete all the coresponding objects especially if other obects use this type and you need to tidy up. It is crap and has been an issue for years...unfortuanaltely.

            Best thing to do is check the DSO table, then check if there is a corresponding record in the DSOATTR (joining PARENTID and also TYPEREF), if there is not then usually you can reset the usecount to 1 and then delete it from iStudio.

            Make sure you run a repo backup each time you tinker with the repository especially if you haven't done it before.

            Another option is to raise a TAR and send them your repo and ask them to sort it out.

            The simpliest option is to always delete the publish event and all corresponding application datatypes each time, then reload the project and start again.

            Stuart.