How is it possible that the transaction does not time-out? By default the DTC transaction should be completed in 30 secs and it won't commit if kept open for a longer time. Did you consider that? For the locking problem I'd recommend splitting the work into a sequence of 3 operations executed in separate transactions: 1. Get the job details from the database 2. Run the job 3. Update the job information in the database Use RSB to execute them in sequence (by publishing a message at the end of each step that will initiate the next step).
RG On 22 Wrz, 16:05, Kenny Eliasson <[email protected]> wrote: > I've actually changed the IsolationLevel to ReadCommitted, even tried > ReadUnCommitted but the same problems still occur. > > On Sep 21, 4:29 pm, Jason Meckley <[email protected]> wrote: > > > > > > > > > I wouldn't recommend disabling transactions. you can set the transaction > > level in the RSB configuration. the default is IsolationLevel.Serializable. > > There are a number of reasons why you are receiving dead locks. I would even > > say is common when devs first start using the Serializable isolation level. > > How you resolve this becomes an art. typically querying less data & issuing > > fewer queries helps alleviate the problem. > > > For example I used to get errors and warnings when lazy loading data within > > a consumer. eager loading the data and using NH Futures to reduce the number > > of remote DB calls resolved the issue. The next step is query a projection > > of the required data. I haven't needed this, but would be required if the > > entities were very large and only a subset of information was used in the > > actual consumer. -- You received this message because you are subscribed to the Google Groups "Rhino Tools Dev" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rhino-tools-dev?hl=en.
