45 lines
1.2 KiB
Ruby
45 lines
1.2 KiB
Ruby
namespace 'db' do
|
|
desc 'Populate the node_tags table'
|
|
task :node_version do
|
|
require File.dirname(__FILE__) + '/../../config/environment'
|
|
|
|
lower_bound = 0
|
|
increment = 100
|
|
node_count = OldNode.count
|
|
puts node_count
|
|
|
|
while lower_bound < node_count
|
|
upper_bound = lower_bound + increment
|
|
hash = {}
|
|
|
|
OldNode.find(:all, :conditions => ['id >= ? AND id < ?',lower_bound, upper_bound], :order => 'timestamp').each do |node|
|
|
hash[node.id] = [] if hash[node.id].nil?
|
|
hash[node.id] << node
|
|
end
|
|
|
|
hash.each_value do |node_array|
|
|
n = 1
|
|
node_array.each do |node|
|
|
temp_old_node = TempOldNode.new
|
|
temp_old_node.id = node.id
|
|
temp_old_node.latitude = node.latitude
|
|
temp_old_node.longitude = node.longitude
|
|
temp_old_node.user_id = node.user_id
|
|
temp_old_node.visible = node.visible
|
|
temp_old_node.timestamp = node.timestamp
|
|
temp_old_node.tile = node.tile
|
|
temp_old_node.version = node.version
|
|
temp_old_node.save! || raise
|
|
n +=1
|
|
end
|
|
end
|
|
lower_bound += increment
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|