Uploaded image for project: 'TorqueBox'
  1. TorqueBox
  2. TORQUE-915

Redeployment of Rails app into 3-node cluster makes Ruby classes inaccessible to HornetQ

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Rejected
    • Affects Version/s: 2.1.0
    • Fix Version/s: None
    • Component/s: Queues
    • Labels:
      None
    • Workaround Description:
      Hide

      "rm -rf /opt/torquebox/current/jboss/standalone/tmp /opt/torquebox/current/jboss/standalone/data" fixes the errors, but obviously isn't a sufficient solution since it also deletes all local remnants of the TB cluster.

      Show
      "rm -rf /opt/torquebox/current/jboss/standalone/tmp /opt/torquebox/current/jboss/standalone/data" fixes the errors, but obviously isn't a sufficient solution since it also deletes all local remnants of the TB cluster.

      Description

      After redeploying our rails app, our background tasks are continuously failing, and I'm seeing lots of log entries in torquebox.log that look like this:

      20:04:24,327 INFO  [stdout] (Thread-5 (HornetQ-client-global-threads-358945321)) Transaction rollback: undefined class/module PageInfo
      20:04:24,332 WARN  [org.hornetq.core.server.impl.QueueImpl] (Thread-29 (HornetQ-server-HornetQServerImpl::serverUUID=fa3afd08-eb01-11e1-9cba-433eb329b78f-273357773)) Message Reference[160]:NON-RELIABLE:ServerMessage[messageID=160,priority=4, bodySize=1500,expiration=Mon Aug 20 21:04:19 UTC 2012, durable=false, address=jms.queue./queues/torquebox/current-knob/tasks/torquebox_backgroundable,properties=TypedProperties[{__ContentEncoding__=marshal}]]@157071407 has exceeded max delivery attempts. No bindings for Dead Letter Address jms.queue.DLQ so dropping it
      20:04:24,333 ERROR [org.torquebox.messaging] (Thread-5 (HornetQ-client-global-threads-358945321)) Unable to process inbound message: org.jruby.exceptions.RaiseException: (ArgumentError) undefined class/module PageInfo
      	at org.jruby.RubyMarshal.load(org/jruby/RubyMarshal.java:148) [jruby.jar:]
      	at MarshalMessage.decode(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-messaging-2.1.0-java/lib/torquebox/messaging/marshal_message.rb:35)	at MessageProcessor.process!(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-messaging-2.1.0-java/lib/torquebox/messaging/message_processor.rb:39)	at ProcessorWrapper.process!(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-messaging-2.1.0-java/lib/torquebox/messaging/processor_wrapper.rb:32)	at org.jruby.RubyProc.call(org/jruby/RubyProc.java:258) [jruby.jar:]
      	at Manager.run(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-transactions-2.1.0/lib/torquebox/transactions.rb:102)	at Manager.with_tx(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-transactions-2.1.0/lib/torquebox/transactions.rb:115)	at Manager.run(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-transactions-2.1.0/lib/torquebox/transactions.rb:100)	at (Anonymous).transaction(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-transactions-2.1.0/lib/torquebox/transactions.rb:24)	at ProcessorWrapper.process!(/opt/torquebox/current/jboss/standalone/tmp/vfs/deployment689b425b49df3107/current.knob-3168e55b2dc1a6f3/vendor/bundle/jruby/1.9/gems/torquebox-messaging-2.1.0-java/lib/torquebox/messaging/processor_wrapper.rb:31)
      

      The method we have backgrounded is in PageInfo (as referenced in the above error "undefined class/module PageInfo").

      I do not know if this is directly related to TORQUE-908, but we are seeing that behavior as well, fixed with the same workaround (rm -rf...).

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                freerobby Robby Grossman
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: