Yes I tried doing an xdmp:invoke but than my delay shifts to insertion, when I 
do a dummy call to my main file after the insertion of a new word in dictionary 
with xdmp:invoke().

From: [email protected] 
[mailto:[email protected]] On Behalf Of Danny Sokolsky
Sent: Tuesday, April 10, 2012 8:28 PM
To: MarkLogic Developer Discussion
Subject: Re: [MarkLogic Dev General] Xdmp Spawn

As Jason pointed out earlier, you can do an xdmp:invoke instead of an 
xdmp:spawn.   Invoke is syncrounous.

For example, you can do something like the following pseudo-code:

update-dictionary();
xdmp:invoke("module-that-runs dictionary-query-to-prime-the-cache.xqy")

-Danny

From: 
[email protected]<mailto:[email protected]>
 
[mailto:[email protected]]<mailto:[mailto:[email protected]]>
 On Behalf Of Yeshmeet Singh
Sent: Tuesday, April 10, 2012 4:25 AM
To: MarkLogic Developer Discussion
Subject: Re: [MarkLogic Dev General] Xdmp Spawn

Yes I guess you were write after inserting if I wait for a second and then fire 
my query than it works. But than again it want something that works 
immediately.Is there anything that can be done?

From: 
[email protected]<mailto:[email protected]>
 
[mailto:[email protected]]<mailto:[mailto:[email protected]]>
 On Behalf Of Jason Hunter
Sent: Tuesday, April 10, 2012 12:34 PM
To: MarkLogic Developer Discussion
Subject: Re: [MarkLogic Dev General] Xdmp Spawn

A spawned task will start some time after you spawn it, and will finish some 
time later proportional to how much work it has to do.  Sounds like your spawn 
hasn't run to completion by the time you're doing your user query test.

You can use invoke if you want it to start right away and block til completed.

Or you can not worry about priming the pump.  On a production site with 
constant user load the priming you do won't matter since a user will be hitting 
the dictionary anyway.

-jh-

On Apr 9, 2012, at 11:54 PM, Yeshmeet Singh wrote:

After calling my insert file in which I am calling the spawn function I fire my 
search query.

From: 
[email protected]<mailto:[email protected]>
 
[mailto:[email protected]]<mailto:[mailto:[email protected]]>
 On Behalf Of Jason Hunter
Sent: Tuesday, April 10, 2012 12:08 PM
To: MarkLogic Developer Discussion
Subject: Re: [MarkLogic Dev General] Xdmp Spawn

How do you know the spawn work is finished before you do your user query test?

-jh-

On Apr 9, 2012, at 11:36 PM, Yeshmeet Singh wrote:

That is what I am not getting it was working fine for me last week. In the 
spwan call I increased the number of dictionaries from 5 to 9 and it gave me 
the problem.

From: 
[email protected]<mailto:[email protected]>
 
[mailto:[email protected]]<mailto:[mailto:[email protected]]>
 On Behalf Of Jason Hunter
Sent: Tuesday, April 10, 2012 11:50 AM
To: MarkLogic Developer Discussion
Subject: Re: [MarkLogic Dev General] Xdmp Spawn

I'm not an expert on this, but at midnight you get who's online.  :)

Let's assume it takes 4-5 seconds to process (i.e. cache) a newly modified 
dictionary.

Let's also assume MarkLogic is lazy about processing new dictionaries until 
they're first used.

What you were doing before was "priming the pump" by using the dictionary in 
the spawn so it'd be processed before the first real user needed it.

Now you're saying it's still slow on the first request even after the spawn() 
completes?  That seems unlikely.

-jh-

On Apr 9, 2012, at 11:10 PM, Yeshmeet Singh wrote:


Hi,

We are using spell:suggest and the spell:suggest-detailed api's for fetching 
the correct words from a custom spell dictionary. Now if we update the spell 
dictionary and then fire the query, it takes a long time to return the results 
for the first hit. Again if we fire the same query the time taken to return 
back the results is considerably reduced. To fix the issue I asynchronously 
called my xquery file using Xdmp:Spawn() after the insertion. It was working 
fine for me till I used a limited number of dictionaries in my spawn call. But 
now I had to include some more dictionaries and it is again taking around 4-5 
seconds to fetch after a new word is inserted in the dictionary. Is there any 
solution to the problem?

Thanks
Yashmeet Singh


**************** CAUTION - Disclaimer *****************

This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely

for the use of the addressee(s). If you are not the intended recipient, please

notify the sender by e-mail and delete the original message. Further, you are 
not

to copy, disclose, or distribute this e-mail or its contents to any other 
person and

any such actions are unlawful. This e-mail may contain viruses. Infosys has 
taken

every reasonable precaution to minimize this risk, but is not liable for any 
damage

you may sustain as a result of any virus in this e-mail. You should carry out 
your

own virus checks before opening the e-mail or attachment. Infosys reserves the

right to monitor and review the content of all messages sent to or from this 
e-mail

address. Messages sent to or from this e-mail address may be stored on the

Infosys e-mail system.

***INFOSYS******** End of Disclaimer ********INFOSYS***

_______________________________________________
General mailing list
[email protected]<mailto:[email protected]>
http://developer.marklogic.com/mailman/listinfo/general

_______________________________________________
General mailing list
[email protected]<mailto:[email protected]>
http://developer.marklogic.com/mailman/listinfo/general

_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to