Hi David,

The web docs on cts:registered-query() do a pretty good job explaining it:

"Registered queries are persisted as a soft state only; they can become 
unregistered through an explicit direction (using cts:deregister), as a result 
of the cache growing too large, or because of a server restart. Consequently, 
either your XQuery code or your middleware layer should handle the case when an 
XDMP-UNREGISTERED exception occurs (for example, you can wrap your 
cts:registered-query code in a try/catch block or your Java or .NET code can 
catch and handle the exception)."

It's good design to actually *register* your query via the catch or else block. 
 Otherwise you may find later your re-registration logic doesn't exactly match 
your registration logic.

The cache is fairly large, if I remember right.  Something like 64k registered 
queries can be in operation at once.  The fact they work efficiently even in 
the face of updates is really slick.

-jh-

On Dec 20, 2009, at 3:27 PM, Lee, David wrote:

> I was looking at the Registered Queries and they confuse me a bit.
> What is the lifetime of a Registered Query ? Can I put the ID's in the
> DB itself and save them for a long time or are they lost when the
> session or server ends ?

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

Reply via email to