1. Mary Jane Foster
  2. PowerBuilder
  3. Thursday, 9 June 2022 16:59 PM UTC

Hello and Help! 

 In February we:

  • migrated 7 PB applications from PB 2017 to PB 2021 (build 1311)
  • put them into a multi-target workspace
  • Moved to Git SCC

In one of the targets, if you try to open any of the window objects in the pfeapsrv.pbl, pfcapsrv.pbl, pfdapsrv.pbl libraries, the IDE crashes.  The builds compile and run just fine, the executables are fine, it is only in the IDE. 

Below is a basic roadmap of our file structure and I hope it explains it clearly (although I didn’t include all 7 targets, obviously).  Let’s say Target 2 is the problem child.  I open pfeapsrv.w_logon (or any of the other windows in that library) and it crashes the IDE.  I’ve tried re-migrating that target and it works, only the windows then crash for all of the other applications.  I do note one oddity below, the SharedFramework .pbl sequence is different than the applications.  It was that way in PB2017 and we had no errors.  Although we were not a multi-target workspace then.  It must have been a problem around the PB2021 migration. 

 Any other suggestions?  The one I’m currently thinking of is removing that target from the repository, going back to the PB 2017 version (thankfully I still have it), re-migrating it and then adding back in my versioning changes.

Target 1:

                App1.pbl

                App2.pbl

                Pfe1.pbl

                Pfe2.pbl

                \SharedFramework\Pfe#.pbl

                \SharedFramework\Pfd#.pbl

Target 2:

                App1.pbl

                App2.pbl

                Pfe1.pbl

                Pfe2.pbl

                \SharedFramework\Pfc#.pbl

                \SharedFramework\Pfd#.pbl

Target 3:

                App1.pbl

                App2.pbl

                Pfe1.pbl

                Pfe2.pbl

                \SharedFramework\Pfc#.pbl

                \SharedFramework\Pfd#.pbl

Target 4 (note the .pbl order is different here and I don’t know why):

                \SharedFramework\pfe#.pbl

\SharedFramework\pfd#.pbl

\SharedFramework\pfc#.pbl

 Thank you!

 

MJ

Accepted Answer
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Friday, 1 July 2022 11:57 AM UTC
  2. PowerBuilder
  3. # Permalink

Hi MJ,

This is normal.

If multiple targets use common libraries (like the pfc or pfe), before you can use an application you have to do a full rebuild. When you then switch to another target and want to run that one, you have to do the Full rebuild for that target again!. It will happen with PB12.6 and anything later. (probably also versions before 12.6).

Maybe one way to work around that, would be to make PBD's for the common libraries and hook those up in the library list instead of the PBL's. Of course that would also mean you have to have a separate target for being able to modify any of those PBL libraries and recreate the common PBD's.

NOTE: I haven't tried this myself. I've simply always regenerated everything when switching to another target.

regards,

MiguelL

 

Comment
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Thursday, 9 June 2022 18:07 PM UTC
  2. PowerBuilder
  3. # 1

Hi Mary Jane;

  Build 1311 of PB2021 was the initial GA release and did have some issues. Since then, Appeon has released a few MR's. The latest build is 1509. I would like to suggest that you install the latest MR. Then perform a PBL "Optimize" on each library, followed by a Full Build of the App.

   If you would like to return to PB2017 and re-migrate again - I would still highly recommend moving to PB2021 build 1509 first. I would also recommend performing a PBL "Optimize" on each library, followed by a Full Build of the App in PB2017 before migrating. 

Then see if that issue is still present.

Regards ... Chris

Note1: Make sure that during the PB2017 full build that there are no Errors or Warnings.

Note2: It looks like you are using the PFC framework. Did you download the PB2021 version of the PFC?

https://github.com/OpenSourcePFCLibraries

 

 

Comment
  1. Mary Jane Foster
  2. Thursday, 9 June 2022 19:42 PM UTC
Hi Chris:

After re-reading your answer, I have a sub question for you. Our general practice is to NOT push *.pbl changes to the library. What I am gleaning from your prior answer is, in this case, I will need to push all the *.pbls to the repository after I get the MR, is that correct?



Also, I will need to follow the same steps with our legacy stand alone application, correct? That one has cornerstone built into as well.



Thank you.



MJ
  1. Helpful
  1. Chris Pollach @Appeon
  2. Friday, 10 June 2022 13:34 PM UTC
Hi Mary Jane ... no, the PBL's are not required to be added to your SCM's repository. At least, the IDE does not need this. Optionally uploading the PBL's is at your discretion (if you have a use / internal directive to do so).
  1. Helpful
There are no comments made yet.
Mary Jane Foster Accepted Answer Pending Moderation
  1. Friday, 1 July 2022 13:50 PM UTC
  2. PowerBuilder
  3. # 2

Hello Miguel:

 

Insert Face Palm emoji here please. 

 

Prior to the migration to PB 2021, these were individual applications.  was the one who decided to make it a multi-target workspace when we migrated to Git & PB 2021.  I had heard about it and another developer tried unsuccessfully before.   I do not recall reading anywhere that we needed to do a full build each time we set the target as current, but that doesn't mean it isn't there.  

Sadly, I actually did that during my initial research and all was well, but then I went into another target and it became problematic there, but not in some of the other applications.  I just assumed that it was a problem with the one target.

Issue resolved.  I am thankful it is a simple fix - while embarrassed that I should have seen it.

Thank you so much!

 

MJ

Comment
  1. Miguel Leeuwe
  2. Friday, 1 July 2022 17:23 PM UTC
Please don't be embarrassed, personally I still don't see the reason why this full rebuild would be necessary, especially if there weren't any changes at all in the common libraries.

Glad it solved your dilemma though!

regards.
  1. Helpful
There are no comments made yet.
Armeen Mazda @Appeon Accepted Answer Pending Moderation
  1. Thursday, 9 June 2022 17:25 PM UTC
  2. PowerBuilder
  3. # 3

On another machine do you have same problem?  That would help pinpoint if problem with the PBL or your environment.

Comment
  1. Armeen Mazda @Appeon
  2. Thursday, 9 June 2022 18:02 PM UTC
I'm guessing the PFC framework PBLs are corrupt for some reason and needs to be regenerated. If after you regenerate the PFC PBLs it is still crashing, please open a support ticket and attach one of the problematic PFC PBLs so Appeon engineers can analyze.
  1. Helpful
There are no comments made yet.
Mary Jane Foster Accepted Answer Pending Moderation
  1. Thursday, 9 June 2022 17:37 PM UTC
  2. PowerBuilder
  3. # 4

Hi Armeen:

Yes, it happens on any computer.

Thank you.

Comment
There are no comments made yet.
Mary Jane Foster Accepted Answer Pending Moderation
  1. Thursday, 9 June 2022 18:15 PM UTC
  2. PowerBuilder
  3. # 5

Hi Chris:

 

I will try your suggestion of getting the MR.  With regard to the PFC, I am going to have to do more research there.  Someone else did the upgrade to 2017 and, if I remember correctly, that developer did not do that upgrade then.  The subject was broached during the PB2021 upgrade and the decision was to not do it at that time.  I looks like I may have to revisit that.

I will start with the MR and go from there.

I appreciate everyone's help and I will get back to you.

MJ

Comment
There are no comments made yet.
Mary Jane Foster Accepted Answer Pending Moderation
  1. Friday, 1 July 2022 11:25 AM UTC
  2. PowerBuilder
  3. # 6

Hi all:

Sorry about the delay in responding, we had a priority shift and this was put on hold for a bit.  

What I've done so far is:

  • Applied the MR 1509 as suggested, migrated, optimized, built and validated our largest legacy application and it was fine.
  • Did the same for the problem multi-target workspace and the problem continues.  I tried it multiple times.
  • We have ONE PC that is not experiencing this problem - it is the machine that is used strictly for manual builds when necessary.
  • I've played with clones from earlier commits and it looks like it must have happened with the migration from PB 2017 to PB 2021.  

I've wondered if there was a way to push the .pbl from the build machine to the Git repository is an option?

Any other thoughts and/or suggestions before I follow Armeen's suggestion and open a support ticket?   

Thank you.

 

MJ

Comment
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.