chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florent Guillaume ...@nuxeo.com>
Subject Re: CMIS SQL query String limits: question
Date Wed, 19 Jun 2013 13:27:33 GMT
For very long and probably repetitive query strings, which should
compress well, you could use a representation based on gzip + base64
of the query string.

Florent

On Fri, Jun 7, 2013 at 11:03 AM, Florian Müller <fmui@apache.org> wrote:
> Hi Mark,
>
> The specification does not explicitly say that the entire query string must
> be in the header.
> The specification says for the AtomPub binding:
> "Upon submission (creation) of a query document, a response must be returned
> with a Location header representing the feed for that query."
>
> That is, a client should be able to repeat the query by just calling the URL
> in Location header (via HTTP GET). That means the URL must contain all
> necessary information about this query.
> There are two approaches to implement that. OpenCMIS uses a stateless
> approach and puts everything into the URL, which could be become very long.
> An alternative approach would be to store the query on the server, assign
> the query statement an id, and return an URL with that id. But that would
> require some sort of storage on the server side and opens up the question
> how long do you want to maintain these ids.
>
>
> - Florian
>
>
>
>> Hello
>>
>> I have question which appears to have been raised some time ago:
>>
>>
>> http://mail-archives.apache.org/mod_mbox/chemistry-dev/201106.mbox/%3C4DF8D70D.7000200%40alfresco.com%3E
>>
>> In that thread, there is reference made to this:
>>
>>
>> http://tomcat.apache.org/tomcat-6.0-doc/config/http.html#Standard_Implementation
>> -> maxHttpHeaderSize
>>
>> In the thread, it is also mentioned that:
>>
>> *The CMIS specification says that the server has to add a Location
>> header to its query response
>> that is "representing the feed for that query". That basically means
>> that the query is repeated
>> in the HTTP header*.
>> The default header buffer size in Tomcat 6 and 7 is 8k. If you remove
>> all other headers you
>> end up with about 7884 byte -- plus/minus a few bytes.
>> You can increase header buffer size in Tomcat.
>> in the HTTP header.
>> The default header buffer size in Tomcat 6 and 7 is 8k. If you remove
>> all other headers you
>> end up with about 7884 byte -- plus/minus a few bytes.
>> You can increase header buffer size in Tomcat.
>>
>> Just curious - is this something in the specification that can only be
>> addressed by placing the entire query String in the header?
>>
>> We have a use case for which the WHERE IN( ) clause could contain up to
>> 1000 or more 16-digit String values inside the WHERE acme:userID IN(
>> value1, value2, value3....)  part of the query - the acme:employeeID is a
>> custom metadata property of the implemented content model.
>>
>> FWIW... we use:
>>
>> OpenCMIS 0.8.0
>> Alfresco Enterprise 4.1.3
>>
>>
>> Thanks
>>
>> Mark
>> * *
>
>



-- 
Florent Guillaume, Director of R&D, Nuxeo
Open Source, Java EE based, Enterprise Content Management (ECM)
http://www.nuxeo.com   http://www.nuxeo.org   +33 1 40 33 79 87

Mime
View raw message