Data on Windows clipboard slows down Forms
18 July 2005 at 21:58 CEST | In Bugs and issues, Forms, Oracle |Ever since the migration from client/server forms 6i to web-deployed Forms 10g, some users have been complaining about performance. As it turns out this is related to having (large amounts of) data on the Windows clipboard.
Some users were complaining about bad performance when navigating to other fields. For testing I opened up a form with quite a number of fields and started navigating through them using the TAB key. I noticed that the delay was only on navigating to text items. Navigating to pop lists, checkboxes, radio buttons, push buttons and other GUI elements was not an issue.
Some users tend to suffer from this performance decrease more than others. Also, the problem magically disappeared sometimes. Further testing revealed it is due to having large amounts of data on your Windows clipboard. Some of our users are heavily involved in testing and writing manuals. They tend to make quite a number of screenshots using Print Screen. This places a screenshot on the Windows clipboard which can be quite a number of megabytes depending on resolution and color depth.
You can easily reproduce the issue yourself. Open your Windows task manager. On the processes tab, add the PF Delta column (View > Select Columns) to show the number of page faults (swapping). Now open your form and tab through the fields. In the task manager watch your IExplore.exe (or other browser) process. Notice the low number of page faults on navigating. In my case, this was typically below 10.
Now open a text editor and create a large amount (2-4 megabytes) of text. Select all text and copy it to the clipboard. Go back to your form and tab through the fields. When using 2 megabytes of text the PF Delta shot up to 2000 in my case. The larger the amount of data, the higher the paging/swapping will be. 4Mb of data raised the PF Delta to 4000. 8Mb of data raises the PF Delta to 6000. Also notice the high increase in Memory Usage for your process. After this last test it increased to a whopping 140Megabytes! Testing with 16Mb of data raises the PF Delta to 35000. Copying a small amount of data to the clipboard does remove the noticeable delay and reduces the PF Delta to normal figures. Unfortunately the memory usage of your webforms session does remain extremely high (more then 100Megabytes).
There is a limit to all this. Eventually, JInitiator might raise an OutOfMemory error which you can see in the JInitiator Console. When testing with Sun JPI your entire session would eventually crash with a FRM-92050.
Searching through MetaLink made me found bug 3130709. This describes exactly my problem, but is supposed to be solved in Forms 6.0.8.25 in February 2004. I opened an iTAR and that resulted in the same Oracle bug number and a link to Java bug 4790833. That Sun bug was fixed in Java 1.5, but my problem still reproduces in Java v1.5.0_03. If you read the bug text at Sun, you find a reference to bug 4287795 which goes on about having to get the entire content of the clipboard to just know if something is on the clipboard at all.
Today, the support engineer told me that the Forms applet is checking the status of the clipboard to determine whether the Paste entry in the Edit menu should be enabled or disabled. Apparently it is a Sun Java bug that the content of the clipboard is retrieved when just asking for the status of the clipboard. However, Oracle should have worked around that with the fix for bug 3130709. He found a reference to a parameter disableValidateClipboard in the bug description. He suggested adding a parameter disableValidateClipboard=true to my formsweb.cfg but that did not help. Oracle will investigate internally what happened to the bug(fix) and whether it dropped out of 9i/10g. I’ll update this blog entry with any news.
PS. If you found this blog entry because your having performance issues with webforms, you might also want to have a look at the DNS issues we had.
Update 26-jul-2005: Oracle just acknowledged that the fix of Forms 6.0.8.25 somehow was not included in the 10g version. We’ve asked for a one-off which means that development will try to provide a fix for this issue separately for the 10g version. Oracle promised to keep me informed. If they do, I will again update this blog entry.
Update 5-aug-2005: Oracle has openend a new bug 4520121 against Forms 9.0.4.1.0 to also include the fix in Forms 10g. The bug can be monitored through MetaLink. It appears that the final fix has slipped to Forms v11.x, but Oracle will release one off patches for 9.0.4.2.0 and 10.1.2.0.2 per our request.
Update 10-oct-2005: Oracle just released a one-off patch 4599915 for Forms 9.0.4.2.0 that fixes the issue.
Update 29-nov-2005: Oracle just released a one-off patch 4520121 for Forms 10.1.2.0.2 that fixes the issue.
12 Comments
Sorry, the comment form is closed at this time.
Powered by WordPress with Pool theme design by Borja Fernandez.
Entries and comments feeds.


Wouldn’t disableValidateClipboard have to be set to true rather than false?
Comment by Pam Gamer — 19 July 2005 #
Woops. Pam is absolutely right. That’s a typo in the blog entry. I just looked again and I did perform the tests with a setting of true. I just typed it wrong in the blog entry and have just corrected it.
Comment by Wilfred — 19 July 2005 #
Oracle just acknowledged that the fix of Forms 6.0.8.25 somehow was not included in the 10g version. We’ve asked for a one-off which means that development will try to provide a fix for this issue separately for the 10g version. Oracle promised to keep me informed. If they do, I will again update this blog entry.
Comment by Wilfred — 26 July 2005 #
Oracle has openend a new bug 4520121 against Forms 9.0.4.1.0 to also include the fix in Forms 10g. The bug can be monitored through MetaLink
Comment by Wilfred — 5 August 2005 #
It was actually me who discovered this bug in 2003 in 6.0.8.21 version of Forms.
I had to travel accross Canada to investigate performance issues in our Forms application and I noticed that many users copy from web pages. I tried this scenario and I hit the bug. Oracle created an one-off patch for us, because the bug was causing a lot of grief among our users. Since then we are running with disableValidateClibord=true. This helps, but
we are currently upgrading to Forms10g (9.0.4.1) and thanks to your blog I find out that the fix to this bug disapeared from the recent version.
I am very thankfull to you Wilfred.
We asked Oracle support before we started the upgrade project if all our oneoff patches are included in 9.0.4.1 and we got the ‘Yes’ answer. We did not started testing yet, so I did not suspect the the clibord issue is back.
I really like your blog, because it is about exctly what I am working with, Oarcle technologies.
Your blog also helped me to resolve an issue with Sun Java Plugin and Webcache.
I will now visit your blog more often. I really like to exchange ideas and opinions related to my job, because I love it. I love what I am doing and I am happy to share my experiance with others.
I work for a big bank in Canada. We have a huge Oracle Forms application and a lot of fun with it.
Comment by Bozena — 14 August 2005 #
Thanks for the compliments. The best way to follow my (or any other) blog is to install a RSS reader and subscribe to my RSS feed. Look for the little orange XML icon (
) to find the URL for a RSS feed.
Just give it a go with (for example) SharpReader. You probably already know OraBlogs. There is an OPML file which is supposed to contain all blogs that are aggregated at orablogs. Unfortunately there is a bug there and not all blogs are included. You’ll have to go to each blog by hand and add them to your RSS reader.
Comment by Wilfred — 14 August 2005 #
I have applied the Path 4599915 for my Form 9.0.4.2, but the problem is still the same. Anyone have tried ?
Comment by Trung — 28 October 2005 #
Yes, I have applied the patch and it did resolve the issue. However, the README with the patch is not clear that you have to add the parameter disableValidateClipboard to your formsweb.cfg file and set its value to “true”.
The patchset has a fixed f90all.jar (for Sun JPI) and f90all_jinit.jar (for Oracle JInitiator). It also contains a fixed base*.htm file adding the new disableValidateClipboard parameter to the APPLET and/or EMBED tag. For this parameter to have a value, you’ll have to add it to the formsweb.cfg file.
Please note that I’ve only tested this with Sun JPI as that is our prefered deployment. But since Oracle also supplied a fixed JAR file for JInitiator it would surprise me if that one doesn’t fix the issue for JInitiator. Especially since JInitiator is (still) the prefered development and deployment platform for Oracle.
Comment by Wilfred — 29 October 2005 #
We have the same bug live on Forms 6.0.8.25.2. We have rdbms 9.2.0.6.0 and Oracle Financials 11.5.9. There is no DNS issues. We can’t uppgrade forms becouse of Financials.
Does anyone know fix for the issue?
Comment by Markku — 20 February 2007 #
Markku,
Are you absolutely sure your problems are related to having data on the clipboard? Just follow the steps described in this blog article to see if your swapping increases when having large amounts of data on the clipboard.
If so, adding disableValidateClipboard=true should help when using Forms 6.0.8.25 since that feature/fix was introduced with that Forms version. Having disableValidateClipboard=true should instruct your Forms applet NOT to check if there is any data on the clipboard on item navigation. The downside is that the Edit > Copy menu item is always enabled and not only if there is actual data on the clipboard.
Also, be sure to add the disableValidateClipboard to your base*.html files otherwise the parameter will not be passed to your client Forms applet. Just view the HTMl source in the browser to see the outputted HTML. The disableValidateClipboard parameter should be both in the EMBED and OBJECT tags.
Comment by wilfred — 20 February 2007 #
Is the clipboard issue fixed in Forms 10g as i am not able to simulate the clipboad issue
Comment by suresh — 7 March 2009 #
The issue is still around at 10g Bug 7833659
Comment by jon parker — 12 March 2009 #