[MarkLogic Dev General] sessions disabled in CQ for Marklogic 4.0

Michael Blakeley michael.blakeley at marklogic.com
Wed Oct 29 11:49:47 PST 2008


In that case it seems like you might as well use cq 4.0-1.1. I'm still 
puzzled by the error message, though: I can't seem to reproduce anything 
like it.

What OS and CPU architecture are you using?

Can you try the test query that I posted yesterday?

xquery version "1.0-ml";
import module namespace cxq="com.marklogic.developer.cq.xquery"
    at 'cq/lib-xquery.xqy';
cxq:get-epoch-seconds(xs:dateTime("2008-10-28T15:42:45.600414-04:00"))

This query has to import one of cq's own libraries, so you will have to 
run it in the same application-server context with cq. For example, I 
have cq in my Docs directory, so I would select 'Docs' as the 
content-source.

If that test query doesn't work, please send me the full error message.

If the test query does work, I'll be even more puzzled.

-- Mike

Cathy Bernardone wrote:
> Mike,
> 
> I upgraded to 3.2.4.  It allows me to execute queries with sessions  
> disabled, so I can use it to work.  However, sessions still remain  
> disabled with the same error message.
> 
> Thanks,
> 
> Cathy
> 
> 
> On Oct 28, 2008, at 8:39 PM, Michael Sokolov wrote:
> 
>> Yes - it was 3.2.2, I think.  Upgrading to 3.2.4 fixed my problem:  
>> thanks!
>>
>> -Mike
>>
>>> -----Original Message-----
>>> From: general-bounces at developer.marklogic.com
>>> [mailto:general-bounces at developer.marklogic.com] On Behalf Of
>>> Michael Blakeley
>>> Sent: Tuesday, October 28, 2008 5:57 PM
>>> To: General Mark Logic Developer Discussion
>>> Subject: Re: [MarkLogic Dev General] sessions disabled in CQ
>>> for Marklogic 4.0
>>>
>>> Mike,
>>>
>>> Judging by the line numbers, I don't think you're using cq
>>> 3.2.4 or 4.0-1.1. If you can try again with either of those
>>> releases, it will be easier for me to help.
>>>
>>> http://developer.marklogic.com/svn/cq/releases/
>>>
>>> -- Mike
>>>
>>> Mike Sokolov wrote:
>>>> I went back and checked, and my error report is not really
>>> the same as
>>>> Cathy's, although it does seem to have something to do with
>>> timestamp
>>>> checking.
>>>>
>>>> (clicking on "sessions disabled"):
>>>>
>>>> WARNING: sessions have been disabled, because of an error.
>>>>
>>>>
>>>>          Perhaps you have disabled sessions for this
>>> instance of cq.
>>>>          If so, you can ignore this and return to cq.
>>>>
>>>>
>>>>
>>>>            You are running cq from the filesystem.
>>>>            Make sure that the directory /cq/sessions/
>>>>            exists, and that MarkLogic Server can write to it.
>>>>
>>>>
>>>> The complete error message follows:
>>>>
>>>> <err:error xsi:schemaLocation="http://marklogic.com/xdmp/error
>>>> error.xsd" xmlns:err="http://marklogic.com/xdmp/error"
>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>>>>  <err:code>XDMP-CAST</err:code>
>>>>  <err:message>Invalid cast</err:message>
>>>>  <err:format-string>XDMP-CAST: () cast as xs:dateTime --
>>> Invalid cast:
>>>> () cast as xs:dateTime</err:format-string>
>>>>  <err:retryable>false</err:retryable>
>>>>  <err:expr>() cast as xs:dateTime</err:expr>
>>>>  <err:data>
>>>>    <err:datum>()</err:datum>
>>>>    <err:datum>xs:dateTime</err:datum>
>>>>  </err:data>
>>>>  <err:stack>
>>>>    <err:frame>
>>>>      <err:uri>/cq/lib-controller.xqy</err:uri>
>>>>      <err:line>273</err:line>
>>>>      <err:operation>c:get-sessions(true())</err:operation>
>>>>      <err:variables>
>>>>    <err:variable>
>>>>      <err:name
>>>>
>>> xmlns="com.marklogic.developer.cq.controller">check-conflictin
>> g</err:name>
>>>>      <err:value>true()</err:value>
>>>>    </err:variable>
>>>>    <err:variable>
>>>>      <err:name
>>> xmlns="com.marklogic.developer.cq.controller">i</err:name>
>>>>      <err:value>&lt;sess:session id="f0777f6bc385fd1a"
>>>> xmlns:sess="com.marklogic.developer.cq.session"&gt;&lt;sec:user
>>>>
>>> xmlns:sec="http://marklogic.com/xdmp/security"&gt;ifactor...&l
>> t;/sess:session&gt;</err:value>
>>>>    </err:variable>
>>>>      </err:variables>
>>>>    </err:frame>
>>>>    <err:frame>
>>>>      <err:uri>/cq/lib-controller.xqy</err:uri>
>>>>      <err:line>255</err:line>
>>>>      <err:operation>c:get-available-sessions()</err:operation>
>>>>    </err:frame>
>>>>    <err:frame>
>>>>      <err:uri>/cq/lib-controller.xqy</err:uri>
>>>>      <err:line>307</err:line>
>>>>      <err:operation>c:get-last-session()</err:operation>
>>>>    </err:frame>
>>>>    <err:frame>
>>>>      <err:uri>/cq/lib-controller.xqy</err:uri>
>>>>      <err:line>190</err:line>
>>>>      <err:variables>
>>>>    <err:variable>
>>>>      <err:name
>>> xmlns="com.marklogic.developer.cq.controller">d</err:name>
>>>>      <err:value>()</err:value>
>>>>    </err:variable>
>>>>    <err:variable>
>>>>      <err:name
>>>> xmlns="com.marklogic.developer.cq.controller">session</err:name>
>>>>      <err:value>()</err:value>
>>>>    </err:variable>
>>>>    <err:variable>
>>>>      <err:name
>>> xmlns="com.marklogic.developer.cq.controller">d</err:name>
>>>>      <err:value>()</err:value>
>>>>    </err:variable>
>>>>      </err:variables>
>>>>    </err:frame>
>>>>    <err:frame>
>>>>      <err:uri>/cq/session.xqy</err:uri>
>>>>      <err:line>62</err:line>
>>>>    </err:frame>
>>>>  </err:stack>
>>>> </err:error>
>>>>
>>>>
>>>> Now, if I empty out the sessions folder and chmod a+rwx sessions, I
>>>> get
>>>> "session: New Session" in cq.  Then clicking through I get
>>> the message
>>>> "There are no resumable sessions..." then I create a new
>>> one using the
>>>> button, but it doesn't seem to get associated with my
>>> browser session?
>>>> Then if I wipe out my cq cookie and refresh, I go back to the
>>>> "sessions disabled" message...
>>>>
>>>>
>>>>
>>>> Michael Blakeley wrote:
>>>>> Cathy,
>>>>>
>>>>> Thanks for the report. I'm having trouble reproducing the error,
>>>>> though. As I see it, this test case ought to be equivalent:
>>>>>
>>>>> import module namespace cxq="com.marklogic.developer.cq.xquery"
>>>>>  at 'cq/lib-xquery.xqy';
>>>>>
>>>>>
>>> cxq:get-epoch-seconds(xs:dateTime("2008-10-28T15:42:45.600414-04:00")
>>>>> )
>>>>> => 1225222965
>>>>>
>>>>> So I'm not at all sure what's happening, but I'll keep
>>> digging into
>>>>> it. What happens if you reload (F5) the cq page? Same
>>> error, but with
>>>>> a different timestamp?
>>>>>
>>>>> Mike Sokolov suggested that the problem might have something to do
>>>>> with timestamps on the filesystem. What happens if you 'touch' the
>>>>> sessions directory and all its files, then reload cq? I'm
>>> thinking of
>>>>> something like 'touch cq/sessions cq/sessions/*'.
>>>>>
>>>>> -- Mike
>>>>>
>>>>> Cathy Bernardone wrote:
>>>>>> We have installed Marklogic 4.0 and CQ for 4.0 as well. However,
>>>>>> when  running CQ, sessions remained disabled.  Our
>>> directories have
>>>>>> proper  permissions for anyone to access them.  Below is
>>> the error
>>>>>> message we  get when clicking on "sessions disabled".
>>> Help would be
>>>>>> greatly  appreciated.
>>>>>>
>>>>>> Cathy
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> WARNING: sessions have been disabled, because of an error.
>>>>>>
>>>>>>
>>>>>>          Perhaps you have disabled sessions for this
>>> instance of cq.
>>>>>>          If so, you can ignore this and return to cq.
>>>>>>
>>>>>>
>>>>>>
>>>>>>            You are running cq from the filesystem.
>>>>>>            Make sure that the directory /cq/sessions/
>>>>>>            exists, and that MarkLogic Server can write to it.
>>>>>>
>>>>>>
>>>>>> The complete error message follows:
>>>>>>
>>>>>> <error:error xsi:schemaLocation="http://marklogic.com/xdmp/error
>>>>>> error.xsd" xmlns:error="http://marklogic.com/xdmp/error"
>>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance ">
>>>>>>  <error:code>XDMP-AS</error:code>
>>>>>>  <error:name>err:XPTY0004</error:name>
>>>>>>  <error:xquery-version>0.9-ml</error:xquery-version>
>>>>>>  <error:message>Invalid coercion</error:message>
>>>>>>  <error:format-string>XDMP-AS: (err:XPTY0004) $d as
>>>>>> xdt:dayTimeDuration -- Invalid coercion:
>>>>>> xs:dayTimeDuration("P14180DT19H42M45.600414S") as
>>>>>> xdt:dayTimeDuration</ error:format-string>
>>>>>>  <error:retryable>false</error:retryable>
>>>>>>  <error:expr>$d as xdt:dayTimeDuration</error:expr>
>>>>>>  <error:data>
>>>>>>    <error:datum>xs:dayTimeDuration("P14180DT19H42M45.600414S")</
>>>>>> error:datum>
>>>>>>    <error:datum>xdt:dayTimeDuration</error:datum>
>>>>>>  </error:data>
>>>>>>  <error:stack>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-xquery.xqy</error:uri>
>>>>>>      <error:line>45</error:line>
>>>>>>      <error:operation>x:cumulative-seconds-from-
>>>>>> duration(xs:dayTimeDuration("P14180DT19H42M45.600414S"))</
>>>>>> error:operation>
>>>>>>      <error:xquery-version>0.9-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-xquery.xqy</error:uri>
>>>>>>      <error:line>58</error:line>
>>>>>>      <error:operation>x:get-epoch-
>>>>>> seconds(xs:dateTime("2008-10-28T15:42:45.600414-04:00"))</
>>>>>> error:operation>
>>>>>>      <error:variables>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.xquery">dt</error:name>
>>>>>>
>>> <error:value>xs:dateTime("2008-10-28T15:42:45.600414-04:00")</
>>>>>> error:value>
>>>>>>    </error:variable>
>>>>>>      </error:variables>
>>>>>>      <error:xquery-version>0.9-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-xquery.xqy</error:uri>
>>>>>>      <error:line>66</error:line>
>>>>>>      <error:operation>x:get-epoch-seconds()</error:operation>
>>>>>>      <error:xquery-version>0.9-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-io.xqy</error:uri>
>>>>>>      <error:line>410</error:line>
>>>>>>      <error:operation>io:get-conflicting-locks("/cq/sessions/
>>>>>> d064d36f04973c13.xml", (), "admin at 10.0.104.139")</error:operation>
>>>>>>      <error:variables>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>> xmlns="com.marklogic.developer.cq.io">uri</error:name>
>>> <error:value>"/cq/sessions/d064d36f04973c13.xml"</error:value>
>>>>>>    </error:variable>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.io">limit</error:name>
>>>>>>      <error:value>()</error:value>
>>>>>>    </error:variable>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.io">owner</error:name>
>>>>>>      <error:value>"admin at 10.0.104.139"</error:value>
>>>>>>    </error:variable>
>>>>>>      </error:variables>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-controller.xqy</error:uri>
>>>>>>      <error:line>306</error:line>
>>>>>>      <error:operation>c:get-conflicting-locks("/cq/sessions/
>>>>>> d064d36f04973c13.xml", ())</error:operation>
>>>>>>      <error:variables>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.controller">uri</
>>>>>> error:name>
>>>>>>
>>> <error:value>"/cq/sessions/d064d36f04973c13.xml"</error:value>
>>>>>>    </error:variable>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.controller">limit</ error:name>
>>>>>>      <error:value>()</error:value>
>>>>>>    </error:variable>
>>>>>>      </error:variables>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-controller.xqy</error:uri>
>>>>>>      <error:line>298</error:line>
>>>>>>      <error:operation>c:get-conflicting-locks("/cq/sessions/
>>>>>> d064d36f04973c13.xml")</error:operation>
>>>>>>      <error:variables>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.controller">uri</
>>>>>> error:name>
>>>>>>
>>> <error:value>"/cq/sessions/d064d36f04973c13.xml"</error:value>
>>>>>>    </error:variable>
>>>>>>      </error:variables>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-controller.xqy</error:uri>
>>>>>>      <error:line>331</error:line>
>>>>>>      <error:operation>c:get-sessions(true())</error:operation>
>>>>>>      <error:variables>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.controller">check-
>>>>>> conflicting</error:name>
>>>>>>      <error:value>true()</error:value>
>>>>>>    </error:variable>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>> xmlns="com.marklogic.developer.cq.controller">i</
>>>>>> error:name>
>>>>>>      <error:value>&lt;session id="d064d36f04973c13"
>>>>>> xmlns="com.marklogic.developer.cq.session"&gt;&lt;sec:user
>>>>>> xmlns:sec="http://marklogic.com/xdmp/security
>>>>>> "&gt;admin&lt;/...&lt;/session&gt;</error:value>
>>>>>>    </error:variable>
>>>>>>      </error:variables>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-controller.xqy</error:uri>
>>>>>>      <error:line>315</error:line>
>>>>>>
>>> <error:operation>c:get-available-sessions()</error:operation>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-controller.xqy</error:uri>
>>>>>>      <error:line>377</error:line>
>>>>>>      <error:operation>c:get-last-session()</error:operation>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/lib-controller.xqy</error:uri>
>>>>>>      <error:line>240</error:line>
>>>>>>      <error:variables>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>> xmlns="com.marklogic.developer.cq.controller">d</
>>>>>> error:name>
>>>>>>      <error:value>()</error:value>
>>>>>>    </error:variable>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>>>>> xmlns="com.marklogic.developer.cq.controller">session</
>>> error:name>
>>>>>>      <error:value>()</error:value>
>>>>>>    </error:variable>
>>>>>>    <error:variable>
>>>>>>      <error:name
>>> xmlns="com.marklogic.developer.cq.controller">d</
>>>>>> error:name>
>>>>>>      <error:value>()</error:value>
>>>>>>    </error:variable>
>>>>>>      </error:variables>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>    <error:frame>
>>>>>>      <error:uri>/cq/session.xqy</error:uri>
>>>>>>      <error:line>62</error:line>
>>>>>>      <error:xquery-version>1.0-ml</error:xquery-version>
>>>>>>    </error:frame>
>>>>>>  </error:stack>
>>>>>> </error:error>
>>>>>>
>>>>>>
>>>>>>
>>> --------------------------------------------------------------------
>>>>>> ----
>>>>>>
>>>>>> _______________________________________________
>>>>>> General mailing list
>>>>>> General at developer.marklogic.com
>>>>>> http://xqzone.com/mailman/listinfo/general
>>>>> _______________________________________________
>>>>> General mailing list
>>>>> General at developer.marklogic.com
>>>>> http://xqzone.com/mailman/listinfo/general
>>>> _______________________________________________
>>>> General mailing list
>>>> General at developer.marklogic.com
>>>> http://xqzone.com/mailman/listinfo/general
>>> _______________________________________________
>>> General mailing list
>>> General at developer.marklogic.com
>>> http://xqzone.com/mailman/listinfo/general
>>>
>> _______________________________________________
>> General mailing list
>> General at developer.marklogic.com
>> http://xqzone.com/mailman/listinfo/general
> 
> _______________________________________________
> General mailing list
> General at developer.marklogic.com
> http://xqzone.com/mailman/listinfo/general



More information about the General mailing list