[Backgroundrb-devel] Results from worker are not available until after worker is completed

hemant gethemant at gmail.com
Wed Jan 7 11:02:49 EST 2009


On Wed, Jan 7, 2009 at 9:15 PM, Jonathan Donaldson <jonathan at column3.net> wrote:
> Sorry if this hit twice, my mailer was using the .com version of my email
> address not the .net one I signed up with:
>
>
> Using Backgroundrb pulled from github yesterday, and rails 2.2.2.
> In my worker, I send lots of progress back as I step through the tasks, ie:
>
> @items.each do |itm|
> ...stuff happens here
> @results[:created_items] += 1
> cache[some_key] = @results
> end
> in next loop:
> @ results[:errors] = "Error on Item 4",
> cache[some_key] = @results
>
> when I call ask_result on the worker, I get nil back until after the worker
> is completely done, then I get my results....
>
> ideas? This is to drive a progress bar and other 'realtime' feedback...

You will have to use Memcache based backend of result storage for
"realtime" feedback. Inbuilt cache behavior is like what you
mentioned.
For more info:

http://backgroundrb.rubyforge.org/workers/#result_caching


More information about the Backgroundrb-devel mailing list