From abdb5f758703bbb5001ad6d8f7118ad4884c3f83 Mon Sep 17 00:00:00 2001 From: Raphael Date: Thu, 6 Jan 2011 17:26:08 -0800 Subject: [PATCH] serialized hashes need a NULLIF, as do many other fields, probably --- lib/data_conversion/import_to_mysql.rb | 8 +++++--- spec/lib/data_conversion/import_to_mysql_spec.rb | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/lib/data_conversion/import_to_mysql.rb b/lib/data_conversion/import_to_mysql.rb index ccc54c1ef..4c6374891 100644 --- a/lib/data_conversion/import_to_mysql.rb +++ b/lib/data_conversion/import_to_mysql.rb @@ -75,8 +75,9 @@ module DataConversion Mongo::Comment.connection.execute <<-SQL #{load_string("comments")} #{infile_opts} - (mongo_id, post_mongo_id, person_mongo_id, @diaspora_handle, text, youtube_titles) - SET guid = mongo_id; + (mongo_id, post_mongo_id, person_mongo_id, @diaspora_handle, text, @youtube_titles) + SET guid = mongo_id, + youtube_titles = NULLIF(@youtube_titles, ''); SQL log "Finished. Imported #{Mongo::Comment.count} comments." end @@ -85,8 +86,9 @@ module DataConversion Mongo::Post.connection.execute <<-SQL #{load_string("posts")} #{infile_opts} - (youtube_titles,@pending,created_at,@public,updated_at,status_message_mongo_id,caption,remote_photo_path,remote_photo_name,random_string,image,mongo_id,type,diaspora_handle,person_mongo_id,message) + (@youtube_titles,@pending,created_at,@public,updated_at,status_message_mongo_id,caption,remote_photo_path,remote_photo_name,random_string,image,mongo_id,type,diaspora_handle,person_mongo_id,message) SET guid = mongo_id, + youtube_titles = NULLIF(@youtube_titles, ''), #{boolean_set("pending")}, #{boolean_set("public")}; SQL diff --git a/spec/lib/data_conversion/import_to_mysql_spec.rb b/spec/lib/data_conversion/import_to_mysql_spec.rb index 361423918..b95f39db1 100644 --- a/spec/lib/data_conversion/import_to_mysql_spec.rb +++ b/spec/lib/data_conversion/import_to_mysql_spec.rb @@ -76,7 +76,7 @@ describe DataConversion::ImportToMysql do comment.text.should == "Hey me!" comment.person_mongo_id.should == "4d26212bcc8cb44df2000014" comment.post_mongo_id.should == "4d262132cc8cb44df2000025" - comment.youtube_titles.should == "" + comment.youtube_titles.should be_nil end end describe "contacts" do @@ -136,7 +136,7 @@ describe DataConversion::ImportToMysql do it "imports all the columns" do @migrator.import_raw_posts post = Mongo::Post.first - post.youtube_titles.should == {} + post.youtube_titles.should be_nil post.pending.should == false post.created_at.to_i.should == 1294358525000 post.public.should == false