Story #18967
opendrop legacy columns and tables
0%
Description
Unused or redundant columns¶
- 'id' - most tables have a default 'id' column added by rails, despite the fact that 'uuid' is the real primary key
- 'updated_at' - this seems to be redundant with 'modified_at'
Unused or redundant tables¶
- humans
- specimens
- traits
Legacy tables introduced to support PGP use case but never used. Recommended to use 'properties' for metadata and
'links' for standalone records
- keep_disks
- keep_services
Now stored 100% in the config file. Need to keep the "keep_services/accessible" endpoint but can drop the underlying tables and answer queries using only config file content.
- nodes
- jobs
- job_tasks
- pipeline_templates
- pipeline_instances
Support for the legacy "jobs" API and legacy cloud node manager, both of which are obsolete and disabled in new installations.
- api_clients
This still has an effect -- tokens are associated with clients, clients can be "trusted" or "untrusted", which controls whether they can manipulate other tokens. However this is confusing and has been a consistent stumbling point on Arvados installation & configuration.
This seems to have been originally implemented to for the login process of the legacy SSO server, where the "api_client" table represented a OAuth2 client id used by the SSO server (???). Without the SSO server it isn't clear it serves any purpose (the "trusted/untrusted" feature could be made a per-token flag, or eliminated).