-
Notifications
You must be signed in to change notification settings - Fork 185
Adding DDL trigger to speedup framework start #901
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
Conversation
docs/userguide/install.md
Outdated
@@ -121,6 +121,8 @@ The uninstall process will **not** drop profiler tables, as they can potentially | ||
|
||
It is up to DBA to maintain the storage of the profiler tables. | ||
|
||
Additionally the user performing the installation must have a `ADMINISTER DATABASE TRIGGER` privilege. This is required for installation of trigger that is responsible for parsing annotations at at compile-time of a package. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought that trigger will be an optional to install ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Optionality is on a TO-DO list for this feature.
I wanted to have it reviewed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks really good. My only input would be, optional install and multi schema lots of devs working since trigger monitor full dB almost.
Some tests need to be fixed to disable trigger before testing Some tests need to be added to prove trigger is working
Disabled `-scc` flag in tests
11a2310
to
db8ef50
Compare
…r_for_annotations # Conflicts: # source/core/annotations/ut_annotation_manager.pkb # source/core/ut_suite_manager.pkb
Added disabling trigger on annotation parser tests.
Added additional tests for annotation management with / without trigger. Fixed code for situations when trigger gets added on pre-existing tests.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks great, I have put some comment on small things but generally great job Jacek, running even faster will be awesome !
limitations under the License. | ||
*/ | ||
|
||
gc_check_object_name constant varchar2(128) := 'UT3_TRIGGER_ALIVE'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would that not be better to define in utils for example and refer to it via package constant in trigger and this package ? Its only called twice but one less line to maintain ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be removed as no longer used - thanks
Refactored install scripts to avoid duplication. Added check for `oracle_maintained` schema when firing DDL trigger.
Reorganized code to avoid problems with conditional compilation on 12.2 for triggers.
This PR adds support for DDL trigger to build annotation cache.
The approach is resolving huge schema scanning issues.
With this, users have option to install with or without DDL trigger enabled.
Without trigger, each time tests are run, framework needs to check cache validity. This can take quite some time on huge database schema.
With trigger enabled, no source code scanning is needed. Cache is maintained by DDL statements themselves.
Resolves #631