Timeout When Searching Inside a Page And Its Subpages Slow Performance and High Consume of CPU Resources (Doc ID 605037.1)

Last updated on NOVEMBER 08, 2016

Applies to:

Portal - Version 10.1.4.1 to 10.1.4.2 [Release 10gR2]
Information in this document applies to any platform.
Checked for relevance on 19-Sep-2013

Symptoms

 

Symptom 1Symptom 2Symptom 3
When a search for a text string is performed specifying a page and checking 'include subpages', a timeout in the search portlet occurs.

When a search for that same text string is performed not specifying a page (thereby searching the entire page group), no timeout in the search portlet occurs, and the results are displayed correctly.

The problem occurs with both the custom and advanced search portlets.
The problem may also be seen when using a custom search portlet based on the API WWSRC_API.ITEM_SEARCH.

The following query is consuming high CPU resources frequently:

begin
owa.init_cgi_env(:n__,:nm__,:v__);
htp.htbuf_len := 63;
PORTAL.wpg_session.init();
WPG_SESSION_PRIVATE.CREATE_SESSION(:p_cookie_name);
WPG_SESSION_PRIVATE.GET_SESSION_INFO(:sesn__,:sesnm__,:sesv__);
PORTAL.wpg_session.deinit();
commit;
owa.get_page(:data__,:ndata__);
dbms_session.reset_package;
exception
when others then
rollback;
dbms_session.reset_package;
raise;
end;

Also we see the following pl/sql block

declare
rc__ number;
simple_list__ owa_util.vc_arr;
complex_list__ owa_util.vc_arr;
begin
owa.init_cgi_env(:n__,:nm__,:v__);
htp.HTBUF_LEN := 63;
null;
null;
simple_list__(1) := 'sys.%';
simple_list__(2) := 'dbms\_%';
simple_list__(3) := 'utl\_%';
simple_list__(4) := 'owa\_%';
simple_list__(5) := 'owa.%';
simple_list__(6) := 'htp.%';
simple_list__(7) := 'htf.%';
simple_list__(8) := 'wpg_docload.%';
if ((owa_match.match_pattern(p_string =>
'portal.wwpob_page.show'
/* */,p_simple_pattern =>
simple_list__
,p_complex_pattern =>
complex_list__
,p_use_special_chars =>
false)))
then
rc__ := 2;
else
null;
PORTAL.wpg_session.init();
portal.wwpob_page.show(NAME_ARRAY=>:NAME_ARRAY,VALUE_ARRAY=>:VALUE_ARRAY);
if (wpg_docload.is_file_download) then
rc__ := 1;
wpg_docload.get_download_file(:doc_info);
PORTAL.wpg_session.deinit();
null;
null;
commit;
else
rc__ := 0;
PORTAL.wpg_session.deinit();
null;
null;
commit;
owa.get_page(:data__,:ndata__);
end if;
end if;
:rc__ := rc__;
end;

After upgrading the Database Portal from 10.1.0.5 to 10.2.0.4, there are an ever increasing number of PORTAL_PUBLIC sessions experiencing high waits for cache buffers chains latches, cursor
spin on x, session allocation latch and direct path read waits. These waits are causing high cpu use on the host, keeping it at a constant 0% idle.

 



Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms