Focal Point Banner


As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only. Moving forward, myibi is our community platform to learn, share, and collaborate. We have the same Focal Point forum categories in myibi, so you can continue to have all new conversations there. If you need access to myibi, contact us at myibi@ibi.com and provide your corporate email address, company, and name.


Connect to myibi
Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [Sharing] Large or multiple Compound Reports with NOBREAK, poor performance

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[Sharing] Large or multiple Compound Reports with NOBREAK, poor performance
 Login/Join
 
Expert
posted
I've been having problems with a set of PDF statements, and have tried many different solutions to try and get the performance a little quicker.

Background
The statements are made up of several components that in most cases need to follow the previous component, i.e. a NOBREAK.

This particular statement run will produce 2,500 statements.

Problem
As mentioned in a previous post, I tried a compound layout to do the whole thing, and found an issue at component 10,001.

So I changed the process to only have small compound layouts. This started out great,
the first 100 or so statements were produced every 3 seconds, but as the processing moved on, the performance degradation increased until I had to kill the report after almost 24 hours and about 1500 statements.

I changed things around and made sure that all hold files going into the statement build were FOCUS files, as there was a big loop creating each statement one at a time.

This improved things marginally.

Next, changed the process to use the old COMPOUND OPEN/NOBREAK/CLOSE. This started very quick, but again the same degradation happened, and after a couple of hundred statements the degradation was worse than using the COMPOUND LAYOUT command.

Here is a graph of the performance of the 1500 statements.



Solution
Working on the idea that the old COMPOUND OPEN/NOBREAK/CLOSE is initially quicker, and that the current agent has some sort of issue with multiple or large compound documents that have NOBREAK functionality in it, I decided to try creating each statement in a new agent. This is done with a REMOTE DEST LOOPBACK, and some code.

The process goes...

  • Write all hold files used in the statement created as FOCUS files. No need to use FILEDEF to allocate the files.
  • Write out the required code to a temporary fex TMP_FEX
  • Get the agents temp location with TEMPPATH
  • Add REMOTE DEST LOOPBACK
  • Add -REMOTE BEGIN
  • Add APP MAP TMP_PATH to the temp path
  • Add APP PATH TMP_PATH + any others needed.
  • Add EX TMP_FEX required variable list
  • Add -REMOTE END
  • Add REMOTE FIN LOOPBACK to end this agent, otherwise the next call will use the same agent.


Here is a graph of the performance with the new code for all 2500 statements.



And the comparison.



All 2500 were created within 3 hours.

This message has been edited. Last edited by: Waz,


Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

 
Posts: 6349 | Location: 33°49'23.0"S, 151°11'41.0"E | Registered: October 31, 2006Report This Post
  Powered by Social Strata  

Read-Only Read-Only Topic

Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [Sharing] Large or multiple Compound Reports with NOBREAK, poor performance

Copyright © 1996-2020 Information Builders