Hi Tim,

Yes, there is some overhead when reading the HTTP response into memory first 
before storing it into the database, but I suspect that overhead is negligable 
compared to the overhead of an HTTP request/response. If you really want to 
know the timing difference, then do some profiling, including whatever you do 
in the .Net layer.

You are aware that MarkLogic Server can return nice profiling information for 
each request, provided profiling is enabled in the app server? CQ can display 
this information quite nicely, but you would miss timings from .Net activity 
and overhead from using XCC..

Kind regards,
Geert

>


drs. G.P.H. (Geert) Josten
Consultant


Daidalos BV
Hoekeindsehof 1-4
2665 JZ Bleiswijk

T +31 (0)10 850 1200
F +31 (0)10 850 1199

mailto:[email protected]
http://www.daidalos.nl/

KvK 27164984

P Please consider the environment before printing this mail.
De informatie - verzonden in of met dit e-mailbericht - is afkomstig van 
Daidalos BV en is uitsluitend bestemd voor de geadresseerde. Indien u dit 
bericht onbedoeld hebt ontvangen, verzoeken wij u het te verwijderen. Aan dit 
bericht kunnen geen rechten worden ontleend.

> From: [email protected]
> [mailto:[email protected]] On Behalf Of
> Tim Meagher
> Sent: vrijdag 14 mei 2010 19:19
> To: 'General Mark Logic Developer Discussion'
> Subject: Re: [MarkLogic Dev General] Is there a simple way to
> retrieve the http response statuses when invoking xdmp:document-load?
>
> Hi Michael,
>
>
>
> If I use a combination of an xdmp:http-get() and
> xdmp:document-insert(), isn't there a penalty for having to
> obtain the document before loading it or does
> xdmp:document-load() pretty much do the same thing as the
> combination of xdmp:http-get() and xdmp:document-insert()
> (any buffering included)?
>
>
>
> I suspect that calling xdmp:http-get() and
> xdmp:document-insert() from within an xquery module running
> in MarkLogic might take advantage of some optimizations in
> the MarkLogic database.  Currently I have an .Net application
> with a .Net library that wraps xdmp:document-load in an HTTP
> Get invocation.  I mapped the location of the source document
> to a virtual web address.  Using this approach avoids
> buffering the source document locally before inserting it and
> prevents me from having to include and keep the XCC libraries
> current with the latest MarkLogic releases.
>
>
>
> It looks like there are a variety of methods available to
> accomplish my objective, but I would still like to submit a
> request to the new feature queue to obtain the http response
> status code xdmp:document-load().
>
>
>
> Thank you!
>
>
>
> ~Tim
>
>
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of
> Michael Blakeley
> Sent: Friday, May 14, 2010 11:23 AM
> To: General Mark Logic Developer Discussion
> Subject: Re: [MarkLogic Dev General] Is there a simple way to
> retrieve http response statuses wen invoking xdmp:document-load?
>
>
>
> Note that xdmp:http-get() supports repair options too - but
> they have to
>
> be specified in the right namespace.
>
>
>
> http://developer.marklogic.com/pubs/4.1/apidocs/Ext-2.html#xdm
> p:http-get
>
> >
>
> > This parameter can also include certain option elements
> (for example,
>
> > repair, encoding, default-language) in the xdmp:document-load and
>
> > xdmp:document-get namespaces.
>
>
>
> xdmp:http-get(
>
>    'http://google.com/DNE',
>
>    <options xmlns="xdmp:http-get">
>
>      <format xmlns="xdmp:document-get">xml</format>
>
>      <repair xmlns="xdmp:document-get">full</repair>
>
>    </options>)
>
>
>
> You can also use xdmp:tidy() on the response. That technique can
>
> sometimes fix up html that is too far gone for repair=full to handle.
>
> You might even decide which options to use on a case-by-case basis.
>
>
>
> -- Mike
>
>
>
> On 2010-05-14 08:12, Mark Helmstetter wrote:
>
> > You could use xdmp:http-get() to fetch the document (which
> will give you an http status code), use xdmp:unquote() to
> convert to xml (you can specify repair options here), then
> call xdmp:document-insert().
>
> >
>
> > From: [email protected]
> > [mailto:[email protected]] On Behalf Of Tim
> > Meagher
>
> > Sent: Friday, May 14, 2010 10:35 AM
>
> > To: 'General Mark Logic Developer Discussion'
>
> > Subject: [MarkLogic Dev General] Is there a simple way to
> retrieve http response statuses wen invoking xdmp:document-load?
>
> >
>
> >
>
> > xdmp:document-load() is a very powerful function for
> copying documents and is superior to xdmp:document-insert() because:
>
> >
>
> >
>
> >
>
> > 1.  It allows for document repair, and
>
> >
>
> > 2.  You can copy a document without having to buffer it and
> then insert it.
>
> >
>
> >
>
> >
>
> > However, as far as I can tell there is no simple way to
> determine the success of the document retrieval by checking
> the http response status code without looking at the contents
> of the inserted document.  Is that right?  Is there some kind
> of debug status that can be enabled for document loads to
> determine the success of the http response code?  If not, may
> I suggest that a simple mechanism be made available for doing so?
>
> >
>
> >
>
> >
>
> > It would be nice to know if the http source server is
> working properly, whether it is up or overloaded or whether
> the user is just pinging the wrong document URI.
>
> >
>
> >
>
> >
>
> > Thank you!
>
> >
>
> >
>
> >
>
> > Tim Meagher
>
> >
>
> >
>
> >
>
>
>
> _______________________________________________
>
> General mailing list
>
> [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