11 Replies Latest reply on Dec 3, 2016 3:15 AM by dhollebeek

    Processbook 2015r2 Update issue

    wpurrer

      Hello Together

       

      We had updated to Processbook 2015 R2 and run in multiple update issues => does anyone have the same

       

      VBA - Macros:

      -  Librarys not found anymore or different libraries needed

       

      We solved this already .. but it is a nightmare if this happens after an update...

       

      Processbook .net Addin

      We have a custom Processbook Addin

      - after update  when we now close the Processbook it crashes (Windows Error Reporting)
      we have Processbook installed on a terminal server  - on some terminalserver it crashed on regular bases with some not...

       

      in the past it happend when the Events/Callbacks where not freed... (but this should be clean from our perspective)

       

      br

      Wolfgang

        • Re: Processbook 2015r2 Update issue
          Eugene Lee

          Hi wpurrer,

           

          For the Processbook crash, you might want to collect the crash dump following this KB article to see what the state of the program is at the time of the crash.

          KB00046 - How to get a hang or crash dump and how to obtain and use debugging tools

           

          You can then send in the dumps by opening a techsupport call with us by referring to this website.

          Contact Us

           

          Was the Processbook addin working without any problems before the upgrade?

          • Re: Processbook 2015r2 Update issue
            akenyon

            Hi wpurner,

             

            In Visual Studio I had to deference any ProcessBook assemblies in my solution and then add them back in. Followed by rebuilding and reinstalling the AddIn. Additionally, I had to rip out a few ProcessBook enumerations (simply replaced with their integer values).

             

            I've had a few other issues crop up as well. One COM Interface error was a nightmare. I found that my code (well... legacy code) would hold a reference to the ProcessBook Display (IDisplay, IDual_Display, DisplayClass in the PBObjLib assembly). The reference would work for a while before suddenly start throwing errors. Using Reflection I could inspect the object, but I couldn't call use the object without throwing a COM exception. I was able to work around the problem by removing the ProcessBook Display reference. Fortunately the code didn't actually need to hold onto the reference, so I was OK removing it. You may not be as lucky :/

             

            Rick Davin, this is related to the case I have open right now. I'll be following up on that later today or early next week.

            2 of 2 people found this helpful
              • Re: Processbook 2015r2 Update issue
                wpurrer

                what be good as if "processbook" as a more consitent behaviour regarding addins ore at least an update procedure what to take care of
                do you have also other issues with the Processbook 2015r2 we already found a couple of bugs

                  • Re: Processbook 2015r2 Update issue
                    akenyon

                    I think that as far as ProcessBook releases, OSIsoft's primary goal is to guarantee that their product is stable and backwards compatible. I'm not sure how prevalent add-ins are throughout the community. In my experience working with several PI Systems I have only seen one customer use an Add-in. It'd also be difficult for OSIsoft to test potential issues with Add-in's as a User's code could be doing anything.

                     

                    Add-ins are often tricky as it can be unclear that the issue is the User's error, OSIsoft's error, or an error from a separate dependency altogether. 

                • Re: Processbook 2015r2 Update issue
                  dhollebeek

                  I thought I would chime in here and explain a couple of things.

                   

                  In ProcessBook 2015 R2 we switch to .Net 4 which has both security benefits and allows running add-ins and plug-ins which are compiled in .Net 4 including our own plug-in for AF Analysis attributes.  ProcessBook 2015 R2 ships with .Net 4 InterOps, which is why the references have to be updated.  Microsoft made the decision to not make .Net 4 compatible with previous versions.  However, I apologize, we should have (in retrospect) done a better job of informing the community of the implications of the change to .Net 4.

                   

                  There are several known areas of concern when upgrading to .Net 4:

                       1) Security is much more restrictive.  Although this is a good thing, it does cause some code that used to work to not work any more.  This includes some VBA code as well.

                       2) Some methods have changed behavior in .Net 4 which can also cause some code to work (we ran into an issue in our own MUI kit where setting the locale is now thread specific instead of application-wide).

                       3) Out-of-Process COM calls using the .Net InterOps need to be made by a .Net 4 application or it won't be able to find PI ProcessBook.  There is a workaround to force an application to load .Net 4 here: How to: Configure an App to Support .NET Framework 4 or 4.5

                       4) The following timing issue has been seen sporadically in previous versions, however it is occurring more frequently in ProcessBook 2015 R2.  We are currently investigating why this occurs: 11335OSI8 - Timing issue of event firing on ProcessBook startup .  The simplest solution we have found is to use ThisDisplay instead.

                   

                  From reading this thread it seems that the new version is also more picky about unreleased references to COM objects in managed code.  As a reminder it is always good practice to explicitly release objects from the PB object model (using Marshal.ReleaseComObject or Marshal.FinalReleaseComObject (Marshal.ReleaseComObject Method (Object) (System.Runtime.InteropServices) ).  The Dispose design pattern also helps in implementing this.

                   

                  If you find any other implications of this, please let I or Tech Support know.  We are also always willing to assist in debugging even if it is not our code.

                   

                  Thanks,

                  David Hollebeek

                  PI ProcessBook Development Lead.

                  3 of 3 people found this helpful
                    • Re: Processbook 2015r2 Update issue
                      wpurrer

                      Hey david, could information like this also be in the Release Notes in future ?!

                      • Re: Processbook 2015r2 Update issue
                        wpurrer

                        We have also another issue that since the update some processbook instances uses up a full thread of CPU power

                         

                        We are currently investigating it (but this is not bound to a specific display,.. also no makro and so on ...)

                        we are not completly sure if this is interlinked to some processbook addins

                         

                        does anyone have seen simlar issues ?

                          • Re: Processbook 2015r2 Update issue
                            dhollebeek

                            Wolfgang,

                             

                            In answer to your first question, if we have something that affects custom code like this has, we will let our developers know ahead of time and probably release a CTP so that you guys can test and provide feedback before the product is released.

                             

                            As far as your second question, we have one report of ProcessBook randomly being slow to update that I just heard of.  I'll check to see if they've noticed CPU spikes.

                             

                            Thanks for the feedback, keep it coming.  Right now we are trying to nail down why we are getting reports from certain customers but they don't seem to be widespread.