Failure of .Initialize Procedure to Run

Today we saw one computer on which the .Initialize Procedure does not run on any database when opened. This occurs when PanoramaX is already open. The computer involved in a brand new iMac running Catalina and I confirmed b7 is running and the databases match the ones I am running. I have checked four other computers, some on the same subnet as the server, and some connecting from a different subnet, and I checked my computer, and they do not have this problem. (I saw it once on one database.)
I cannot find a reason why this computer should be consistently failing to run .Initialize automatically upon starting the database. I added a button to the Home form to run .Initialize, and it runs without a problem when the button is clicked, and everything runs normally after that.
Is there some way to use the new diagnostic tools to try to determine what is happening? Or do you have some idea of what is occurring?

Over the weekend I found and fixed a bug involving .Initialize. The .Initialize procedure will not run if

  • the database is shared
  • and the server isn’t available so Panorama cannot connect to it

As I mentioned, this problem is already fixed. I don’t know if this is what your problem is, but I can’t think of any other reason why .Initialize wouldn’t work.

A more difficult problem is launching Panorama by double clicking a shared database. I thought I had this working yesterday, and even uploaded a new b8 version, but in last minute tests I realized it wasn’t working, so I didn’t publish this new version. I spent a very frustrating full day today on this, a very crazy making problem that required relaunching Panorama over and over and over and over and over and over and over and over and… I think I have finally gotten it to work this evening, but I want to do more tests before putting a pin in it. Keep your fingers crossed.

If you were launching Panorama by double clicking on this database, these problems could be related. The problem is that when Panorama launches, it takes some time for bonjour to scan the network to find the servers. And not only time, Panorama has to cycle thru the run loop to register bonjour updates. The amount of time required could definitely be different for different computers, which could cause the variation you see. On my local network it seems to take 1 to 1.5 seconds. I have now set it up so that when launching Panorama will wait up to 5 seconds on first launch before deciding the server isn’t available. I hope that’s enough with your VPN situation, I suspect it will be since Panorama 6 didn’t allow more than 3 seconds. (Note: Unlike Panorama’s 6 Bonjour Threshold setting, Panorama X will not wait any longer than necessary. If the server shows up in 1 second it won’t wait any longer. So I didn’t make the 5 second threshold adjustable. Also unlike Panorama 6, this delay only happens once, when Panorama first launches. It doesn’t have to scan the network each time a file opens.)

So, let’s see if b8 solves this problem for you. If it doesn’t, then yes, will have you enable some special instrumentation. I’ve actually added some more instrumentation in this area today right in that area of the code that I used to track down the click to launch problem, so that will be exactly what is needed. But you can’t turn it on until you get b8.

Okay. Thanks.

Installing b7 on the problem computer did not solve the problem. I still have to manually run the .Initialize procedure after the DB opens. If it matters, the databases are being opened by a procedure. But that works on all the other computers including mine.

You are meaning b8, aren’t you?

Yes, b8…

Follow these steps to get the Instruments set up to test this.

  • Open the Instruments Panel
  • Click on star and choose Launch with Shared Database. (If you don’t see this option, click on the star and choose Update ProVUE Favorites.)
  • Make sure that logging is enabled, if it isn’t already.

Then run the code the opens your file. This will generate a huge log, hopefully it contains the needed information.

You might consider doing this on both a computer where it works and one where it doesn’t, so the differences can be examined.

I will do it this evening.

How/to where to do I email the resulting files?

You can just send them to me. You have my email address, yes? Or support at provue dot com will also work.

I thought I had your email address, but you did not get the last log I sent to it. I will use it and support… The ran the log on my computer, where the DB opens and runs .Initialize w/o a problem. That log is only 204 rows.