Hi,
>>> hemant wrote:
>>> I'm using Packet-0.1.10 and OS is ubuntu 8.04 and yep bdrb 1.0.4
>>>
>>
>> It shouldn't happen, I will check later today and reply.
>>
>
> Thanks very much Herman. I am using default config except for :log:
> foreground
>
I tried to reproduce the problem, But I couldn't, here is the code, I tried:
class WowWorker < BackgrounDRb::MetaWorker
set_worker_name :wow_worker
def create(args = nil)
# we are using memcache for storing results and hence, lets reset the cache
# memcache will persist the results between backgroundrb server restarts
end
def run_wow user_args
thread_pool.defer(:some_crap,user_args)
end
def some_crap user_args
# we are using memcache for storing results and hence, lets reset the cache.
# memcache will persist the results between backgroundrb server restarts
# Also, if you are running lots of tasks parallely, don't forget
to use unique keys
cache[:progress] = 0.00
5.times do |i|
sleep(2)
logger.info "starting some_crap #{i}"
cache[:progress] = ((i+1)/5.00)*100
end
end
end
# And I called using:
MiddleMan.worker(:wow_worker).async_run_wow(:arg => "hello world")
MiddleMan.worker(:wow_worker).ask_result(:progress)
So, I wonder, whats wrong there. You can send me a minimized version
of your application in tar ball and i will see, if I can reproduce the
problem.
Also, upgrade to git version if you haven't and don't use inbuilt
cache, try replacing it with memcache (again refer the docs).
_______________________________________________
Backgroundrb-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/backgroundrb-devel