From 1fe19d7b55d66dd7d27f2d7e01d46130c32a13e8 Mon Sep 17 00:00:00 2001 From: Stas Date: Tue, 27 Oct 2015 17:22:22 +0200 Subject: [PATCH 1/4] updated_at autofill fix --- lib/tasks/import.rake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/tasks/import.rake b/lib/tasks/import.rake index 2c54c6abb..2f3534925 100644 --- a/lib/tasks/import.rake +++ b/lib/tasks/import.rake @@ -185,7 +185,7 @@ namespace :import do x.email.try(:strip), x.fax.try(:strip), x.object_registry.try(:crdate), - x.object.respond_to?(:update) && x.object.read_attribute(:update), + x.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update), x.ssn.try(:strip), ident_type_map[x.ssntype], x.object.authinfopw.try(:strip), @@ -204,7 +204,7 @@ namespace :import do ] if contacts.size % 10000 == 0 - Contact.import contact_columns, contacts, validate: false + Contact.import contact_columns, contacts, {validate: false, timestamps: false} contacts = [] end rescue => e @@ -213,7 +213,7 @@ namespace :import do end end - Contact.import contact_columns, contacts, validate: false + Contact.import contact_columns, contacts, validate: false, timestamps: false puts "-----> Imported #{count} new contacts in #{(Time.zone.now.to_f - start).round(2)} seconds" end @@ -318,7 +318,7 @@ namespace :import do x.exdate, x.object.authinfopw.try(:strip), x.object_registry.try(:crdate), - x.object.respond_to?(:update) && x.object.read_attribute(:update), + x.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update), x.object_registry.name.try(:strip), SimpleIDN.to_ascii(x.object_registry.name.try(:strip)), 1, @@ -388,7 +388,7 @@ namespace :import do end if index % 10000 == 0 && index != 0 - Domain.import domain_columns, domains, validate: false + Domain.import domain_columns, domains, {validate: false, timestamps: false} Nameserver.import nameserver_columns, nameservers, validate: false Dnskey.import dnskey_columns, dnskeys, validate: false DomainContact.import domain_contact_columns, domain_contacts, validate: false @@ -400,7 +400,7 @@ namespace :import do end end - Domain.import domain_columns, domains, validate: false + Domain.import domain_columns, domains, {validate: false, timestamps: false} Nameserver.import nameserver_columns, nameservers, validate: false Dnskey.import dnskey_columns, dnskeys, validate: false DomainContact.import domain_contact_columns, domain_contacts, validate: false From da7ce59f2e35ca8df715303f9f635c625e6901bd Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Fri, 30 Oct 2015 11:48:28 +0200 Subject: [PATCH 2/4] Story#104941754 DomainContacts and DnsKey after import take updated_at and created_at. --- app/models/legacy/dnskey.rb | 3 +++ lib/tasks/import.rake | 20 +++++++++++++------- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/app/models/legacy/dnskey.rb b/app/models/legacy/dnskey.rb index 49f8570ee..3fa47f48b 100644 --- a/app/models/legacy/dnskey.rb +++ b/app/models/legacy/dnskey.rb @@ -1,5 +1,8 @@ module Legacy class Dnskey < Db self.table_name = :dnskey + + belongs_to :object_registry, foreign_key: :id + belongs_to :object, foreign_key: :id end end diff --git a/lib/tasks/import.rake b/lib/tasks/import.rake index 2f3534925..d9d32fcf2 100644 --- a/lib/tasks/import.rake +++ b/lib/tasks/import.rake @@ -213,7 +213,7 @@ namespace :import do end end - Contact.import contact_columns, contacts, validate: false, timestamps: false + Contact.import contact_columns, contacts, {validate: false, timestamps: false} puts "-----> Imported #{count} new contacts in #{(Time.zone.now.to_f - start).round(2)} seconds" end @@ -279,6 +279,8 @@ namespace :import do creator_str updator_str legacy_domain_id + created_at + updated_at ) domains, nameservers, dnskeys, domain_contacts = [], [], [], [] @@ -383,15 +385,17 @@ namespace :import do 1, # ds_digest_type /SHA1) user, x.object.try(:registrar).try(:name) ? x.object.try(:registrar).try(:name) : x.object_registry.try(:registrar).try(:name), - x.id + x.id, + key.object_registry.try(:crdate), + key.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update) ] end if index % 10000 == 0 && index != 0 Domain.import domain_columns, domains, {validate: false, timestamps: false} Nameserver.import nameserver_columns, nameservers, validate: false - Dnskey.import dnskey_columns, dnskeys, validate: false - DomainContact.import domain_contact_columns, domain_contacts, validate: false + Dnskey.import dnskey_columns, dnskeys, {validate: false, timestamps: false} + DomainContact.import domain_contact_columns, domain_contacts, validate: false # created_at is taken from contact at the bottom domains, nameservers, dnskeys, domain_contacts = [], [], [], [] end rescue => e @@ -402,8 +406,8 @@ namespace :import do Domain.import domain_columns, domains, {validate: false, timestamps: false} Nameserver.import nameserver_columns, nameservers, validate: false - Dnskey.import dnskey_columns, dnskeys, validate: false - DomainContact.import domain_contact_columns, domain_contacts, validate: false + Dnskey.import dnskey_columns, dnskeys, {validate: false, timestamps: false} + DomainContact.import domain_contact_columns, domain_contacts, {validate: false, timestamps: false} puts '-----> Updating relations...' @@ -430,7 +434,9 @@ namespace :import do # contacts ActiveRecord::Base.connection.execute( "UPDATE domain_contacts "\ - "SET contact_id = contacts.id "\ + "SET contact_id = contacts.id, "\ + "updated_at = contacts.updated_at, "\ + "created_at = contacts.created_at "\ "FROM contacts "\ "WHERE contacts.legacy_id = legacy_contact_id "\ "AND legacy_contact_id IS NOT NULL "\ From f2d9203ee378e3ebd213fbf0aa9b739160ecd60c Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Fri, 30 Oct 2015 12:33:06 +0200 Subject: [PATCH 3/4] Story#104941754 Nsset after import take updated_at and created_at. --- app/models/legacy/nsset.rb | 2 ++ lib/tasks/import.rake | 13 +++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/app/models/legacy/nsset.rb b/app/models/legacy/nsset.rb index 9b8a84469..6cdb09404 100644 --- a/app/models/legacy/nsset.rb +++ b/app/models/legacy/nsset.rb @@ -2,6 +2,8 @@ module Legacy class Nsset < Db self.table_name = :nsset + belongs_to :object, foreign_key: :id + belongs_to :object_state, foreign_key: :id, primary_key: :object_id has_many :hosts, foreign_key: :nssetid end end diff --git a/lib/tasks/import.rake b/lib/tasks/import.rake index d9d32fcf2..1ce54b4ca 100644 --- a/lib/tasks/import.rake +++ b/lib/tasks/import.rake @@ -267,6 +267,8 @@ namespace :import do creator_str updator_str legacy_domain_id + created_at + updated_at ) dnskey_columns = %w( @@ -356,7 +358,8 @@ namespace :import do end # nameservers - x.nsset.hosts.each do |host| + nsset = x.nsset + nsset.hosts.each do |host| ip_maps = host.host_ipaddr_maps ips = {} ip_maps.each do |ip_map| @@ -371,7 +374,9 @@ namespace :import do ips[:ipv6].try(:strip), user, x.object.try(:registrar).try(:name) ? x.object.try(:registrar).try(:name) : x.object_registry.try(:registrar).try(:name), - x.id + x.id, + nsset.object_registry.try(:crdate), + nsset.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update) ] end if x.nsset && x.nsset.hosts @@ -393,7 +398,7 @@ namespace :import do if index % 10000 == 0 && index != 0 Domain.import domain_columns, domains, {validate: false, timestamps: false} - Nameserver.import nameserver_columns, nameservers, validate: false + Nameserver.import nameserver_columns, nameservers, {validate: false, timestamps: false} Dnskey.import dnskey_columns, dnskeys, {validate: false, timestamps: false} DomainContact.import domain_contact_columns, domain_contacts, validate: false # created_at is taken from contact at the bottom domains, nameservers, dnskeys, domain_contacts = [], [], [], [] @@ -405,7 +410,7 @@ namespace :import do end Domain.import domain_columns, domains, {validate: false, timestamps: false} - Nameserver.import nameserver_columns, nameservers, validate: false + Nameserver.import nameserver_columns, nameservers, {validate: false, timestamps: false} Dnskey.import dnskey_columns, dnskeys, {validate: false, timestamps: false} DomainContact.import domain_contact_columns, domain_contacts, {validate: false, timestamps: false} From b87fcb4bbaaa8a5bfbcbc6ea69b56fa8f3c814b4 Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Fri, 30 Oct 2015 12:39:16 +0200 Subject: [PATCH 4/4] Story#104941754 Nameservers don't have created_at --- lib/tasks/import.rake | 2 -- 1 file changed, 2 deletions(-) diff --git a/lib/tasks/import.rake b/lib/tasks/import.rake index 1ce54b4ca..fcebc0df2 100644 --- a/lib/tasks/import.rake +++ b/lib/tasks/import.rake @@ -281,7 +281,6 @@ namespace :import do creator_str updator_str legacy_domain_id - created_at updated_at ) @@ -391,7 +390,6 @@ namespace :import do user, x.object.try(:registrar).try(:name) ? x.object.try(:registrar).try(:name) : x.object_registry.try(:registrar).try(:name), x.id, - key.object_registry.try(:crdate), key.object.read_attribute(:update).nil? ? x.object_registry.try(:crdate) : x.object.read_attribute(:update) ] end