]> git.openstreetmap.org Git - rails.git/blob - lib/tasks/add_version_to_nodes.rake
1ec831234ca83b14ac57c624ecf62bda13e3a17e
[rails.git] / lib / tasks / add_version_to_nodes.rake
1 namespace 'db' do
2   desc 'Populate the node_tags table'
3   task :node_version  do
4     require File.dirname(__FILE__) + '/../../config/environment'
5
6     lower_bound = 0
7     increment = 100
8     node_count = OldNode.count
9     puts node_count
10     
11     while lower_bound < node_count
12     upper_bound = lower_bound + increment
13     hash = {}
14
15       OldNode.find(:all, :conditions => ['id >= ? AND id < ?',lower_bound, upper_bound], :order => 'timestamp').each do |node|
16          hash[node.id] = [] if hash[node.id].nil?
17          hash[node.id] << node
18       end
19
20       hash.each_value do |node_array|
21         n = 1
22         node_array.each do |node|
23           temp_old_node = TempOldNode.new
24           temp_old_node.id = node.id
25           temp_old_node.latitude = node.latitude
26           temp_old_node.longitude = node.longitude
27           temp_old_node.user_id = node.user_id
28           temp_old_node.visible = node.visible
29           temp_old_node.timestamp = node.timestamp
30           temp_old_node.tile = node.tile
31           temp_old_node.version = node.version
32           temp_old_node.save! || raise
33           n +=1 
34         end
35       end
36       lower_bound += increment
37     end
38   end
39 end
40
41
42
43
44
45