Hi Joseph et al After our meeting earlier this week, I have reviewed relevant code etc. I have made a few changes dealing with other issues for TopBraid Live which will be in version 3.2.2 which we hope to release either today or tomorrow.
However, for the specific 'action="sparqlmotion" wait="true"' issue, I was initially a little surprised that you were having this, but then worked out how it might be happening. The simple explanation is that TBL returns a wait="true" response when some other task has taken a write-lock on the server, and is advising the client to retry in a second or two. Thus the fix, is, in your code, to detect this response, sleep a second or two, and retry; you may need to retry several times. Normally, the other task with the write-lock would be some TBE client, pressing the save data/commit button sequence. However, even when using TBL only as a SPARQLMotion server, this response is possible. This can happen because internal tasks managing specifically: - the server's knowledge of its workspace - the server's knowledge of its users occasionally take a write lock to update their files. Having seen your SM scripts (thank you), my belief is that what happens in your case, is that: a) one of your SM scripts writes a new file b) this modifies the workspace, c) TBL modifies the workspace graph to reflect these changes d) TBL takes a write lock to save those changes e) your 2nd SM script gets blocked f) TBL releases the write lock g) if you retry now, the 2nd SM script can go ahead. The gap in time between (c) and (d) is not easy to predict: d) has to wait for the lock to be available. So for 3.2.2 we are not making any changes in this function. As previously indicated for 3.3.0, we are reviewing the detail of our locking mechanism, but the semantics of a wait response to the client will almost certainly remain unchanged. Jeremy Joseph Shea wrote: > Hello all. I am currently trying to run a web service with Top Braid > Live 3.2, and after playing around with different data sets, I have > found that at a certain point, the web service does not complete. I > receive this message in the browser: > > <?xml version="1.0" encoding="UTF-8" ?> > <results action="sparqlmotion" wait="true" /> > > Has anyone encountered this problem before, or know of any possible > solutions? The script, with a larger data set, takes around 4 minutes > to complete in Composer. I am not sure if this is a timeout on TBL or > the browser. > > -- > > You received this message because you are subscribed to the Google Groups > "TopBraid Composer Users" 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/topbraid-composer-users?hl=en. > > > -- You received this message because you are subscribed to the Google Groups "TopBraid Composer Users" 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/topbraid-composer-users?hl=en.
