This project is archived and is in readonly mode.
Stack error with Hash.to_json for nested number values
Reported by Noel Rappin | July 18th, 2008 @ 04:51 PM | in 2.x
Here's the test
hash = {
"CHI" => {
:dislay_name => "chicago",
:latitude => 123.234
}
}
result = hash.to_json
And the result
Error:
test: Institution should output json. (InstitutionTest):
SystemStackError: stack level too deep
/Users/noel/Projects/botanic/plant_collections/vendor/rails/activerecord/lib/../../activesupport/lib/active_support/json/encoding.rb:29
Poking around, converting the number to a string did not trigger the problem, and using a flat hash rather than a nested hash also did not. I'm wondering if this is a odd side effect of the stack check to avoid circular references?
Comments and changes to this ticket
-
Dan Barry October 12th, 2008 @ 09:42 PM
- Tag changed from 2.1, activesupport, bug to 2.1, activesupport, bug
I wrote a unit test for this that passed on edge rails, so it looks like this has been fixed already.
-
Repository October 12th, 2008 @ 10:25 PM
- State changed from new to committed
(from [0d4dbb3dfaec8355e072d8f758de40a277f2f009]) test nested hash with float
[#652 state:committed]
Signed-off-by: Jeremy Kemper jeremy@bitsweat.net http://github.com/rails/rails/co...
-
Noel Rappin December 1st, 2008 @ 08:14 PM
- Tag changed from 2.1, activesupport, bug to 2.1, activesupport, json
Oddly, I'm still having the problem, with Rails 2.2. Just saw it when trying to run the open flash chart example,
http://pullmonkey.com/projects/o...
The resulting JSON should look like this
{"title": "Tasker", "elements": [{"type": "bar_glass", "values": [1, 2]}]}
But I'm getting the same stack overflow error. The original example doesn't work for me either.
noel$ script/console Loading development environment (Rails 2.2.2)
hash = { ?> "CHI" => { ?> :dislay_name => "chicago", ?> :latitude => 123.234
} }
=> {"CHI"=>{:dislay_name=>"chicago", :latitude=>123.234}}
result = hash.to_json
-
Noel Rappin December 1st, 2008 @ 08:16 PM
Asking around my group, the original example works for some of us, but not for others in a script/console session.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
<h2 style="font-size: 14px">Tickets have moved to Github</h2>
The new ticket tracker is available at <a href="https://github.com/rails/rails/issues">https://github.com/rails/rails/issues</a>
People watching this ticket
Attachments
Tags
Referenced by
- 652 Stack error with Hash.to_json for nested number values [#652 state:committed]