Feature #18967
Updated by Tom Clegg about 1 month ago
h2. 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 was removed from API responses in #15397 seems to be redundant with 'modified_at' h2. Unused or redundant tables * humans * humans, specimens, traits, jobs, job_tasks, pipeline_instances, pipeline_templates, keep_disks, nodes, repositories specimens * traits #15397 (release 3.0) removed rails code that relied on 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 above tables/columns, so it will be safe config file. Need to remove keep the "keep_services/accessible" endpoint but can drop the underlying tables themselves _after_ 3.0 (see #15397#note-72). 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 table 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 not part 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 this -- see #21910. 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).