-
Notifications
You must be signed in to change notification settings - Fork 1
ACUITY DB third party solutions tables
ACUITY uses many third party libraries, and some of them use their own database tables, so ACUITY does not define the structure and relations of these tables. Despite that, it may be useful to be familiar with them.
The following tables store data used by Spring Security. They function as data storage for the access management system: users, groups, memberships, global permissions etc. These data are all dynamic.
-
users
- users -
groups
- groups of users -
group_members
- users memberships in groups -
authorities
- roles assigned to users (in ACUITY, it's alwaysDEFAULT_ROLE
for all users) -
group_authorities
- roles assigned to groups
There is also a group of ACL tables that are managed by Spring Security ACL; they are never accessed directly from ACUITY code. In ACUITY, Spring Security ACL is used to manage permissions to access to different business entities (datasets etc) and ownerships of these entities for users and roles. These data are all dynamic except acl_class
and acl_remote
. ACL tables are:
-
acl_class
- full names of managed entities Java classes. In ACUITY, their list is short and never changed, so it is Static data. -
acl_sid
- subjects of access permissions and ownerships: users and roles (linked tousers
andgroup_authorities
table entries) -
acl_object
- objects of access permissions and ownerships: datasets, drug programmes, clinical studies (also: not main place to store objects data, just relations to them) -
acl_entry
- access permissions for subjects to objects -
acl_object_identity
- ownerships of objects by subjects -
acl_remote
- remote ACL locations; not used in current ACUITY configuration. Static data.
These tables are used by Spring Batch. Spring Batch works as a job management system in AdminUI ACUITY application. Its tables store data about the source files processing and their data conversion to the database entries.
batch_job_execution
batch_job_execution_context
batch_job_execution_params
batch_job_instance
batch_job_params
batch_step_execution
-
batch_step_execution_context
You can find more detailed description of these tables here
AdminUI application uses Quartz Scheduler for the time management of Spring Batch jobs. Quartz Scheduler stores its data in DB tables, but it never uses most of these tables in case of ACUITY. Quartz Scheduler tables are normally never accessed directly by ACUITY code.
qrtz_blob_triggers
qrtz_calendars
qrtz_cron_triggers
qrtz_fired_triggers
qrtz_job_details
qrtz_locks
qrtz_paused_trigger_grps
qrtz_scheduler_state
qrtz_simple_triggers
qrtz_simprop_triggers
qrtz_triggers
ACUITY uses Flyway to uphold and update database schema (not as a part of main applications; there is a special project acuity-flyway
).
-
flyway_schema_history
- database schema history -
schema_version
- empty table; legacy from old Flyway version. It will be removed soon.
- System Requirements
- Azure Setup
- Machine Insights and CBioPortal Integration
- SSL Certificates
- Applications Setup
- Application Spring Configs
- Profiles
- Migrating to ACUITY 9
- Github packages and Docker images
- Result data tables
- Mapping data tables
- Third party solution tables
- Other data tables
- Tables to delete