drb problem? ringy-dingy won't answer...

The following code works fine as long as I don't try to run it through
the distributed server. It doesn't get there...
It runs fine out of delayed_job, runs fine if called directly.
But if 'distrib' is true (the default) it runs right up to the call to
the server and right past it without getting to the server or raising
any errors.

Am using Ruby , Ringy-Dingy 1.2.1, dj 1.8.4.

*********The server:
require 'rinda/ring'
class ScriptServer
  include DRbUndumped
  attr_accessor :result
  def run(fullScript)
    myTS = Time.now.strftime("%Y%m%d%H%M%S")
    msg = "===> Starting #{scriptname} in run #{scriptrun} on
#{scriptenv} at #{myTS}"
    puts msg
    @result = "***#{scriptname} Launched [#{scriptlaunch}]"
    rslt = fullScript.run
    @result << rslt
    msg = "#{scriptname} Completed [#{Time.now.strftime("%Y%m%d%H%M
    @result << "***#{msg}"
    @result << "#{scriptname} Aborted [#{Time.now.strftime("%Y%m%d%H%M
%S")}] \n #{$!} \n #{caller.to_yaml}"
    return @result
myPid = Process.pid.to_s
puts myPid
ring_server = Rinda::RingFinger.primary
                   "ScriptServer #{myPid}"],

******** The worker/client
require 'active_support'
require 'drb'

class ScriptWorker

  attr_accessor :script_id
  attr_accessor :run_id
  attr_accessor :distrib

  def initialize( script_id, run_id, distrib = true )
    self.script_id = script_id
    self.run_id = run_id
    self.distrib = distrib
    @myLog = ''

  def perform
    myScript = Script.find(script_id)
# left out setting of variables used below...

    require "#{myRoot}/script/#{myScript.name}"

    fullScript = Object.const_get(myClass).new( myScript, myRun,
runenv, myURI, myRoot )

   if self.distrib
      require 'rinda/ring'
      ring_server = Rinda::RingFinger.primary
      service = ring_server.take([:name, :ScriptServer, nil, nil])
      server = service[2]
      result = server.run(fullScript)
      puts result
      result = fullScript.run
      puts result

  def init_my_log( name )

******** The parent script class
require 'rubygems'
require 'util1'
require 'drb'

class ScriptMain

  currDir = Dir.pwd

  include Util1
  include DRbUndumped

  def initialize( aScript, aRun, runenv, myURI, myRoot )
    @myScript = aScript
    @myId = @myScript.id
    @myName = File.basename(@myScript.name, "*.rb")
    @usecase = @myName
    @myRun = aRun
    @myRoot = myRoot
    @rootDir = "#{RAILS_ROOT}"
    @launch = aRun.launched
    @runenv = runenv
    @myURI = myURI
    @runid = aRun.id
    @optionStrg = aRun.options
    @myBrowser = ''
    @myHwnd = 0


**********a sample child script class
(Just the run method. bunch of other methods in full script)

class SearchTest < ScriptMain

  def run( limit = 5.minutes )
      puts '&*&*&* I am here *&*&*&'
      @runenv = 'WEB'
      open_log(@myName, @rootDir, @myRoot, @launch, @start,
               @myId, @runenv, @usecase, @runid, @optionStrg )

      mark_testlevel('Test Parent', 7) # Module
      mark_testlevel('Test Child', 6) # SubModule

      @myBrowser = Watir::IE.new_process
      @myHwnd = @myBrowser.hwnd
      emaillogin(@myBrowser, @service, @username, @password)

      log_message(FATAL, "(#{__LINE__}) #{$!}", @@fail)
      create_flag_file(Time.new.to_f.to_s, 'parse' ) unless @runid ==
      close_log(@myName, __LINE__)
  end #def