Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Fixed issue where schema last parse time was wrongly populated #1205

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 15, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions source/core/annotations/ut_annotation_manager.pkb
Original file line number Diff line number Diff line change
Expand Up @@ -61,15 +61,15 @@ create or replace package body ut_annotation_manager as
l_refresh_needed boolean;
l_objects_view varchar2(200) := ut_metadata.get_objects_view_name();
l_cached_objects ut_annotation_objs_cache_info;
l_result ut_annotation_objs_cache_info;
l_result ut_annotation_objs_cache_info := ut_annotation_objs_cache_info();
begin
ut_event_manager.trigger_event( 'get_objects_to_refresh - start' );
ut_event_manager.trigger_event( 'get_objects_to_refresh - start', ut_key_anyvalues().put('ut_trigger_check.is_alive()',ut_trigger_check.is_alive()) );

l_refresh_needed := ( ut_trigger_check.is_alive() = false ) or a_modified_after is null;
l_cached_objects := ut_annotation_cache_manager.get_cached_objects_list( a_object_owner, a_object_type, a_modified_after );
if l_refresh_needed then
--limit the list to objects that exist and are visible to the invoking user
--enrich the list by info about cache validity
l_cached_objects := ut_annotation_cache_manager.get_cached_objects_list( a_object_owner, a_object_type, a_modified_after );
execute immediate
'select /*+ no_parallel cardinality(i '||ut_utils.scale_cardinality(cardinality(l_cached_objects))||') */
'||l_ut_owner||q'[.ut_annotation_obj_cache_info(
Expand All @@ -94,8 +94,6 @@ create or replace package body ut_annotation_manager as
else 'o.last_ddl_time >= cast(:a_modified_after as date)'
end
bulk collect into l_result using l_cached_objects, a_modified_after;
else
l_result := l_cached_objects;
end if;
ut_event_manager.trigger_event('get_objects_to_refresh - end (count='||l_result.count||')');
return l_result;
Expand Down
2 changes: 1 addition & 1 deletion source/core/ut_suite_cache_manager.pkb
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ create or replace package body ut_suite_cache_manager is
if a_parse_time > l_cached_parse_time or l_cached_parse_time is null then

update /*+ no_parallel */ ut_suite_cache_schema t
set t.parse_time = a_parse_time
set t.parse_time = greatest(t.parse_time,a_parse_time)
where object_owner = l_object_owner;

if sql%rowcount = 0 then
Expand Down
4 changes: 2 additions & 2 deletions source/core/ut_suite_manager.pkb
Original file line number Diff line number Diff line change
Expand Up @@ -366,7 +366,7 @@ create or replace package body ut_suite_manager is
)
or c.self_type = 'UT_LOGICAL_SUITE';
end if;

return l_result;
end;

Expand Down Expand Up @@ -578,7 +578,7 @@ create or replace package body ut_suite_manager is
a_suites(i).set_rollback_type( a_suites(i).get_rollback_type() );
end loop;

ut_event_manager.trigger_event('configure_execution_by_path - start');
ut_event_manager.trigger_event('configure_execution_by_path - end');
end configure_execution_by_path;

function get_suites_info(
Expand Down