tracking service is slow

Hello

I am using beta 2.2 of the WF Engine.
Using the SQLTracking service to extract parameters from the WF I ancounter the problem, that the data is not yet in the database when I show my WFStatus on my web page. Do I have to flush the result when tracking data How can I do this

thanks in advance
Josef



Answer this question

tracking service is slow

  • CEstudent

    As Vignesh mentioned you can use a custom tracking service. If you're not seeing the results of tracking in the database before the workflow completes, it might be because the SqlTrackingService is running in transactional mode. In order to change this to a non transactional set SqlTrackingService.IsTransactional to false.

    We released the final version of .Net Framework 3.0, I adivse you to move away from Beta2.2 to RTM. For a list of download locations check http://www.netfx3.com/blogs/news_and_announcements/archive/2006/11/06/.NET-Framework-3.0-has-been-released_2100_.aspx

    Thanks, --Moustafa



  • jwalker343

    Hi

    thak you, for your answer. I tried to add persistance points to my workflow and i added a delay in my thread, waiting for the wf being persisted. But still the data in the SqlTrackingService is not written, as i expected it to be at this time.

    is there a methode, how i can force the service to flush the data I tried to use the Service with IsTransactional=true and false, but i didn't make any differences.

    I am using a shared database for tracking and persistance and I use the SharedConnectionWorkflowCommitWorkBatchService. This service also does not have a flush or synchronize funktion.

    I also have tried to change the UnloadOnIdle flag of the Persistance store. What does this have to do with the tracking

    Thanks in advance, Josef


  • John Blight

    Hi,

    Are you using the SQLTracking service in transactional mode When the SqlTracking service is in transactional mode , writes to the database are batched. If you would like to see the events as soon as they happen so that you can see it live say in a web page, try setting the isTransactional property to false. This will make sure that the tracking data is written to the database as soon as they happen.

    Alternately, if you would like to use transactional mode (since it improves performance), try adding persistance points to the workflow which will make sure that tracking data is written to the database.

    Thanks,

    Ranjesh


  • ga2006

    If you wish to extract data from a workflow and show it on the webpage, you can in addition to SQLTracking service write your own custom tracking service that adds additional in-memory tracking channel. This way data is available as soon as runtime sends it and the latency of flushing tracking data to SQL at batch points can be overcome.

    For examples please look at samples Technologies > Tracking.

    Thanks,

    Vignesh



  • tracking service is slow