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.
Join the TIBCO Community TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.
From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
Request access to the private WebFOCUS User Group (login required) to network with fellow members.
Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.
AFI, or Shadowing, is a means of working with FOCUS databases that will ensure that the data in the file is always correct (not content but the integrity of the file). You activate it by first setting the shadow on (SET SHADOW=ON) and then create the focus database (CREATE FILE). As of that moment the contents of the database is mirrored. Changes will be made to one part of the database, while requests for data collect it from the unchanged part. Only after a commit (or when the modify/maintain ends) the switch will be made to the changed instance of the database. This will also have an effect on the maximum size of the databsae, since the mirror is placed within the same file. So the file will be doubled in size as opposed to the same file without AFI. AFI is also supported by the FDS.
Hope this helps a bit ...
GamP
- Using AS 8.2.01 on Windows 10 - IE11.
in Focus since 1988
Posts: 1961 | Location: Netherlands | Registered: September 25, 2007
Thanks for adding a few bits to what little I know.
I am surprised, and disappointed that I can find so little info on this feature with a search of IBI's site I would think that something would appear in some documentation ?? And, if I don't see much, are many others using it ?
I am still uneasy with my lack of understanding;
What is the interaction of AFI, SU, and SET COMMIT=ON ???
I have also heard of problems with Maintain locking out Modify procedures in this environment.
My recollection is that details of the scheme (to achieve "absolute file integerity" without page- or record-locks) were published in the System Journal. Then someone circulated a counter-example. That may explain why the details of the scheme are no longer posted.
Posts: 1925 | Location: NYC | In FOCUS since 1983 | Registered: January 11, 2005
AFI started with FOCUS on VM which provided this feature automatically for single FOCUS files. From there it was ported to MVS where it was implemented.
At that time the COMMIT and ROLLBACK commands of MODIFY did not exist. When it became apparent, that it was necessary to support complex transactions, COMMIT and ROLLBACK were implemented and for that to work, it was necessary to have the SET SHADOW option and double the size of FOCUS files.
Today, you have the 3 options: SET SHADOW=OFF => no shadowing, no AFI SET SHADOW=OLD => AFI, no shadowing SET SHADOW=ON => shadowing, full commit/rollback support
I hope this clarifies.
Daniel In Focus since 1982 wf 8.202M/Win10/IIS/SSA - WrapApp Front End for WF
Posts: 1980 | Location: Tel Aviv, Israel | Registered: March 23, 2006
While I still find this subject too 'shadowy' I'm closing this thread, because I am confident enough that we can eliminate AFI from our new Windows WF 7.6 server, by avoiding the SET SHADOW parm.
We have SET COMMIT=ON in edasprof to enable SU, but find that we have to SET COMMIT=OFF before any MODIFYs (of which we have many) to avoid an error pointing to AFI.
I got this info from Mark Derwin:
"I am pretty sure that the reason you are not finding much on this is that it is not needed on the Windows platform. My research is showing this was more on a Mainframe thing.
When using Maintain and SU, we state that you MUST have SET COMMIT=ON. This is less for the Commit / Rollback (although I am sure that is there as well) and more for certain code that Maintain needed. When Maintain was dealing with Unique segments and combined structures, it was different than the old Modify code. So, the SET COMMIT=ON took care of this.
I do not believe that you need to SET SHADOW=ON for Maintain and SU. Just set commit=on and you should be fine."