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

Skip to content

Commit 86357f2

Browse files
authored
Merge pull request #1205 from utPLSQL/feature/suite_cache_fixes
Fixed issue where schema last parse time was wrongly populated
2 parents 01ec694 + 3437b68 commit 86357f2

File tree

3 files changed

+6
-8
lines changed

3 files changed

+6
-8
lines changed

source/core/annotations/ut_annotation_manager.pkb

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,15 +61,15 @@ create or replace package body ut_annotation_manager as
6161
l_refresh_needed boolean;
6262
l_objects_view varchar2(200) := ut_metadata.get_objects_view_name();
6363
l_cached_objects ut_annotation_objs_cache_info;
64-
l_result ut_annotation_objs_cache_info;
64+
l_result ut_annotation_objs_cache_info := ut_annotation_objs_cache_info();
6565
begin
66-
ut_event_manager.trigger_event( 'get_objects_to_refresh - start' );
66+
ut_event_manager.trigger_event( 'get_objects_to_refresh - start', ut_key_anyvalues().put('ut_trigger_check.is_alive()',ut_trigger_check.is_alive()) );
6767

6868
l_refresh_needed := ( ut_trigger_check.is_alive() = false ) or a_modified_after is null;
69-
l_cached_objects := ut_annotation_cache_manager.get_cached_objects_list( a_object_owner, a_object_type, a_modified_after );
7069
if l_refresh_needed then
7170
--limit the list to objects that exist and are visible to the invoking user
7271
--enrich the list by info about cache validity
72+
l_cached_objects := ut_annotation_cache_manager.get_cached_objects_list( a_object_owner, a_object_type, a_modified_after );
7373
execute immediate
7474
'select /*+ no_parallel cardinality(i '||ut_utils.scale_cardinality(cardinality(l_cached_objects))||') */
7575
'||l_ut_owner||q'[.ut_annotation_obj_cache_info(
@@ -94,8 +94,6 @@ create or replace package body ut_annotation_manager as
9494
else 'o.last_ddl_time >= cast(:a_modified_after as date)'
9595
end
9696
bulk collect into l_result using l_cached_objects, a_modified_after;
97-
else
98-
l_result := l_cached_objects;
9997
end if;
10098
ut_event_manager.trigger_event('get_objects_to_refresh - end (count='||l_result.count||')');
10199
return l_result;

source/core/ut_suite_cache_manager.pkb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ create or replace package body ut_suite_cache_manager is
297297
if a_parse_time > l_cached_parse_time or l_cached_parse_time is null then
298298

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

303303
if sql%rowcount = 0 then

source/core/ut_suite_manager.pkb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,7 @@ create or replace package body ut_suite_manager is
366366
)
367367
or c.self_type = 'UT_LOGICAL_SUITE';
368368
end if;
369-
369+
370370
return l_result;
371371
end;
372372

@@ -578,7 +578,7 @@ create or replace package body ut_suite_manager is
578578
a_suites(i).set_rollback_type( a_suites(i).get_rollback_type() );
579579
end loop;
580580

581-
ut_event_manager.trigger_event('configure_execution_by_path - start');
581+
ut_event_manager.trigger_event('configure_execution_by_path - end');
582582
end configure_execution_by_path;
583583

584584
function get_suites_info(

0 commit comments

Comments
 (0)