Problem with dup in HashWithIndifferentAccess

gerberdata
2011-06-13T04:20:26Z

Hi not sure if this is where I should post this problem but since
upgrading to rails 3.07 dup is not working as expected

basically in method I have this
        dup_row = row.dup
        #then I delete a row of my original hash
        row[:athlete].delete(:sports) if !row[:athlete][:sports].nil?


   pretty simple but what is happening is it is deleting from the dup
and the original here is the debug
code of the original and dup just after deleting the sports


original hash values

{"athlete"=>{"first_name"=>"DaveG5600",
"gender"=>"M",
"hometown_id"=>"40",
"birthplace_id"=>"30",
"last_name"=>"test"},
"leagues"=>{"league"=>{"id"=>"821",
"start_year"=>"1983",
"end_year"=>"2003"}},
"clubs"=>{"club"=>[{"id"=>"11802",
"start_year"=>nil, "end_year"=>nil},
{"id"=>"1403", "start_year"=>nil,
"end_year"=>nil}]},
"schools"=>{"school"=>{"id"=>nil,
"start_year"=>nil, "end_year"=>nil}},
"sports"=>{"sport"=>{"id"=>"102",
"start_year"=>"1985",
"end_year"=>"1986",
"sport_roles"=>"10"}}}}

dup row (notice sports is missing which even though I am not deleting
from this hash)
{"athlete"=>{"first_name"=>"DaveG5600",
"gender"=>"M",
"hometown_id"=>"40",
"birthplace_id"=>"30",
"last_name"=>"test"},
"leagues"=>{"league"=>{"id"=>"821",
"start_year"=>"1983",
"end_year"=>"2003"}},
"clubs"=>{"club"=>[{"id"=>"11802",
"start_year"=>nil, "end_year"=>nil},
{"id"=>"1403", "start_year"=>nil,
"end_year"=>nil}]},
"schools"=>{"school"=>{"id"=>nil,
"start_year"=>nil, "end_year"=>nil}}}}

row (this is where I expect to have the sport value deleted which is
does)
{"athlete"=>{"first_name"=>"DaveG5600",
"gender"=>"M",
"hometown_id"=>"40",
"birthplace_id"=>"30",
"last_name"=>"test"},
"leagues"=>{"league"=>{"id"=>"821",
"start_year"=>"1983",
"end_year"=>"2003"}},
"clubs"=>{"club"=>[{"id"=>"11802",
"start_year"=>nil, "end_year"=>nil},
{"id"=>"1403", "start_year"=>nil,
"end_year"=>nil}]},
"schools"=>{"school"=>{"id"=>nil,
"start_year"=>nil, "end_year"=>nil}}}}


Very strange not sure if rails or ruby issue.

--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Core" group.
To post to this group, send email to rubyonrails-core@googlegroups.com.
To unsubscribe from this group, send email to
rubyonrails-core+unsubscribe@googlegroups.com.
For more options, visit this group at