Move application to use Integration.encrypted_properties
What does this MR do and why?
This MR is the second in a sequence (!80219 (merged), !80507 (merged) (this MR), !80510 (merged)) and is part
of the effort to encrypt Integration.properties
.
This MR can be merged when all Integration
records have been backfilled and the encrypted_properties
column
can be used. It stops reading from properties
, and ignores the properties
column.
Migration output
This MR adds two post-deployment migrations: one to add an index, the other to consume remaining data migration jobs.
Output:
== 20220412143551 AddPartialIndexOnUnencryptedIntegrations: migrating =========
-- transaction_open?()
-> 0.0000s
-- index_exists?(:integrations, [:id], {:where=>"properties IS NOT NULL AND encrypted_properties IS NULL", :name=>"index_integrations_on_id_where_not_encrypted", :algorithm=>:concurrently})
-> 0.0084s
-- add_index(:integrations, [:id], {:where=>"properties IS NOT NULL AND encrypted_properties IS NULL", :name=>"index_integrations_on_id_where_not_encrypted", :algorithm=>:concurrently})
-> 0.0112s
== 20220412143551 AddPartialIndexOnUnencryptedIntegrations: migrated (0.0229s)
== 20220412143552 ConsumeRemainingEncryptIntegrationPropertyJobs: migrating ===
== 20220412143552 ConsumeRemainingEncryptIntegrationPropertyJobs: migrated (0.0456s)
The index is only needed to support the post-deployment migration finalization. It can be removed in a future release.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #36385