I've used two different browsers for each qconsole, yet the same results. On Mon, Dec 8, 2014 at 8:49 PM, Raghu <[email protected]> wrote:
> Thanks David Ennis, > > PFB the response below > > 1. The second xquery doesn't have a sleep, that was a copy paste error on > my part. > 2. I'm verifying the document content by using the qconsole explore button > and clicking on the link. > 3. The sleep would not lock, but the node replace statement in the xquery > could obtain a write lock (I believe) > > However I don't understand the scenario where either of the xqueries > getting executed twice? > Is it just me? Is somebody else also able to reproduce this as well? > I'm working on a concurrent request POC, any help is appreciated > > Thanks! > Raghu > > On Mon, Dec 8, 2014 at 6:19 PM, David Ennis <[email protected]> > wrote: > >> HI. >> >> I don't have a full answer, but a few pointers: >> >> - Your xquery2 is the same as xquery1 (includes sleep). This is probably >> not what you meant to include as it does not match your description where >> you say that there si no sleep on xquery2 >> >> - In the same statement you update the node and also read it back via >> doc() to verify it. This does not work this way in the query console. So >> you may be seeing some confusing results due to this. >> >> - I do not believe that the sleep will lock the document for 10 seconds >> in your example, so I don't think you should expect to see anythong >> blocking for that reason. >> >> >> Perhaps spawning your two samples would help you on your way. If nothing >> else, it will take the query console out of the equation. >> >> >> >> >> >> Kind Regards, >> David Ennis >> >> >> David Ennis >> *Content Engineer* >> >> [image: HintTech] <http://www.hinttech.com/> >> Mastering the value of content >> creative | technology | content >> >> Delftechpark 37i >> 2628 XJ Delft >> The Netherlands >> T: +31 88 268 25 00 >> M: +31 63 091 72 80 >> >> [image: http://www.hinttech.com] <http://www.hinttech.com> >> <https://twitter.com/HintTech> <http://www.facebook.com/HintTech> >> <http://www.linkedin.com/company/HintTech> >> >> On 8 December 2014 at 13:32, Raghu <[email protected]> >> wrote: >> >>> Hi all, >>> >>> >>> I have two xqueries >>> >>> xquery# 1. Sleeps for 10 secs (xdmp:sleep) and updates an existing >>> node with a new value and logs the value "Executing #1". >>> xquery# 2. Updates the same node which is being updated in xquery >>> #1 but no sleep and logs the value "Executing #2". >>> >>> >>> I am executing these in the order #1 first and #2 second via two >>> separate query console of the same server >>> >>> I expected the xquery#2 to either wait for 10 seconds (if a write lock >>> is obtained on the document) or update the node even before the xquery#1 >>> does it's update, but the output seems to be differing every time, the >>> strange thing is sometimes the xquery#2 is getting executed twice >>> (Confirmed via log as well as the updated value in the document) or vice >>> versa. >>> >>> PFB the xqueries and xml used >>> >>> *xquery#1* >>> >>> xdmp:sleep(10000), >>> >>> >>> xdmp:node-replace(doc("book.xml")/catalog/book[1]/price,<price>0003</price>), >>> >>> xdmp:sleep(10000), >>> >>> xdmp:log("Executing #1"), >>> >>> doc("book.xml")/catalog/book[1]/price >>> >>> >>> >>> >>> >>> *xquery#2 * >>> >>> >>> xdmp:sleep(10000), >>> >>> >>> xdmp:node-replace(doc("book.xml")/catalog/book[1]/price,<price>4445</price>), >>> >>> xdmp:sleep(10000), >>> >>> xdmp:log("Executing #2"), >>> >>> doc("book.xml")/catalog/book[1]/price >>> >>> >>> *Sample xml* >>> >>> <catalog> >>> <book id="bk101"> >>> <author>Gambardella, Matthew</author> >>> <title>XML Developer's Guide</title> >>> <genre>Computer</genre> >>> <price>0004</price> >>> <publish_date>2000-10-01</publish_date> >>> <description>An in-depth look at creating applications with >>> XML.</description> >>> </book> >>> </catalog> >>> >>> I'm using Marklogic version 7.0-2.3, I'm unable to figure out a pattern. >>> Can someone explain this behavior? >>> >>> >>> Thanks! >>> Raghu >>> >>> _______________________________________________ >>> General mailing list >>> [email protected] >>> http://developer.marklogic.com/mailman/listinfo/general >>> >>> >> >> _______________________________________________ >> General mailing list >> [email protected] >> http://developer.marklogic.com/mailman/listinfo/general >> >> >
_______________________________________________ General mailing list [email protected] http://developer.marklogic.com/mailman/listinfo/general
