Tips on troubleshooting Rails?

We have an application that worked fine with a previous version of Rails (1.1.6). We recently upgraded to ver 1.2.2, and the controller handling the XML data stopped working. It seems to crop the data, and now we cannot receive data into the application anymore.

What is a recommended way to resolve this issue? Any tips and suggestions are greatly welcomed.

Did you get any error message in the log (assuming you are running in development mode)? You may try the breakpointer to isolate the problematic module.

-- Posted viahttp://www.ruby-forum.com/.

Thanks much for asking! This is the message we see:

Processing DataController#post_test_result (for 10.139.0.12 at 2007-03-29 12:02:11) [POST]   Session ID: 6621ea16007eadec31aca33cb695df58   Parameters: {"action"=>"post_test_result", "<rma_request>\n\t <request>PostTestResult</request>\n\t <content>\n <version>1</version>\n <!"=>{}, "controller"=>"tester/data"} FAIL :: build_xml_request :: #<REXML::ParseException: Malformed node Line: 1 Position: 0 Last 80 unconsumed characters: <!> /usr/local/lib/ruby/1.8/rexml/parsers/baseparser.rb:316:in `pull' /usr/local/lib/ruby/1.8/rexml/parsers/treeparser.rb:21:in `parse' /usr/local/lib/ruby/1.8/rexml/document.rb:178:in `build' /usr/local/lib/ruby/1.8/rexml/document.rb:45:in `initialize' /home/www/lsapi/rma/config/../app/controllers/tester/ xml_controller.rb: 24:in `build_xml_request' /home/www/lsapi/rma/config/../app/controllers/tester/ data_controller.rb:9:in `post_test_result' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/base.rb:1095:in `perform_action_without_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/filters.rb:632:in `call_filter' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/filters.rb:638:in `call_filter' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/filters.rb:438:in `call' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/filters.rb:637:in `call_filter' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/filters.rb:619:in `perform_action_without_benchmark' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/local/lib/ruby/1.8/benchmark.rb:293:in `measure' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/local/lib/ruby/gems/1.8/gems/actionpack- 1.13.2/lib/ action_controller/rescue.rb:83:in `perform_action' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/base.rb:430:in `process_without_filters' /usr/local/lib/ruby/gems/1.8/gems/actionpack- 1.13.2/lib/ action_controller/filters.rb:624:in `process_without_session_management_support' /usr/local/lib/ruby/gems/1.8/gems/actionpack-1.13.2/lib/ action_controller/session_management.rb:114:in `process' /usr/local/lib/ruby/gems/1.8/gems/actionpack- 1.13.2/lib/ action_controller/base.rb:330:in `process' /usr/local/lib/ruby/gems/1.8/gems/rails-1.2.2/lib/dispatcher.rb:41:in `dispatch' /usr/local/lsws/fcgi-bin/RailsRunner.rb:14 ... Malformed node Line: 1 Position: 0 Last 80 unconsumed characters: <! Line: 1 Position: 0 Last 80 unconsumed characters: <! Completed in 0.02440 (40 reqs/sec) | Rendering: 0.00290 (11%) | DB: 0.00884 (36%) | 200 OK [ http://our.info/tester/data/post_test_result\] OK [http://our.info/tester/data/post_test_result ]

The weird part is that when it was working, we were accepting XML data with no problems. The CDATA was not getting cropped at all.. Whereas with 1.2.2+, CDATA gets cropped even before we have a chance to do anything to it in the controller code.

Parameters: {"action"=>"post_test_result", "controller"=>"tester/ data", "<rma_request>\n\t <request>PostTestResult</request>\n\t <content>\n <version>1</version>\n <! [CDATA[HEADER_START\r\nTest Station: Station-1\r\nOperator: joe\r \nTest Program Vers: 1.73\r\nScript File: xxxxx_00_xx2000_R1A.TXT\r \nScript Rev: 1.00, 03/12/07\r\nTest Date: 03/16/07 11:07:46\r\nUnit Serial Number: xxxxx***xxxxxx170101\r\nPOWER-UP - SSID,----,----,Pass \r\n\r\nTEST_DATA_END]]>\n </content>\n</rma_request>"=>""} Completed in 0.10780 (9 reqs/sec) | Rendering: 0.00076 (0%) | DB: 0.04805 (44%) | 200