It sounds like the client's SO_TIMEOUT value was exceeded while you were uploading.  What client are you using?  If using fedora.client.FedoraClient, you can control this in code via myClient.SOCKET_TIMEOUT_SECONDS = value;

- Chris

-----Original Message-----
From: fedora-commons-users-bounces@lists.sourceforge.net on behalf of Hassan, Steve
Sent: Wed 7/4/2007 9:02 AM
To: Fedora-commons-users@lists.sourceforge.net
Subject: Re: [Fedora-commons-users] large datastream upload socket timeoutissue

i am trying to upload a 266MB file to fedora using http://www.fedora.info/wiki/index.php/AddDatastream

but i get the following exception - although the upload seems to succeed:

    Caused by: java.net.SocketTimeoutException: Read timed out

is there a setting i need to change somewhere?

steve

-----Original Message-----
From: Chris Wilper [mailto:cwilper@cs.cornell.edu]
Sent: 03 July 2007 16:36
To: Hassan, Steve; Fedora-commons-users@lists.sourceforge.net
Subject: RE: [Fedora-commons-users] large datastream download memory issue




Nice catch... yes, it turns out it's hardcoded at 255 in FedoraAccessServlet!
I'll create a tracker item for this.  If not configurable, it seems the
buffer size should be at least 4096 or 8192.

Cheers,
Chris

-----Original Message-----
From: Hassan, Steve [ mailto:steveh@essex.ac.uk]
Sent: Tue 7/3/2007 11:11 AM
To: Chris Wilper; Fedora-commons-users@lists.sourceforge.net
Subject: RE: [Fedora-commons-users] large datastream download memory issue

thanks! i implemented a buffered ServletOutputStream on that URL and it worked like a treat!

do you know if there is a way to increase the fedora stream buffer? it seems to be quite small at 255 bytes per fetch (looking at log output).

steve

-----Original Message-----
From: Chris Wilper [ mailto:cwilper@cs.cornell.edu]
Sent: 03 July 2007 14:39
To: Hassan, Steve; Fedora-commons-users@lists.sourceforge.net
Subject: RE: [Fedora-commons-users] large datastream download memory issue




Fedora currently does not use soap with attachments, which would be the right way to
support this over soap in a non-memory-bound way.

You can however use plain old http to get the content:

http[s]://HOST:PORT/fedora/pid/dsID

This gets the most recent version of the datastream.
For a specific version you can add /date to the end of the url.  For example:

http[s]://HOST:PORT/fedora/pid/dsID/2007-05-14T04:14:05.800Z

- Chris

-----Original Message-----
From: fedora-commons-users-bounces@lists.sourceforge.net on behalf of Hassan, Steve
Sent: Tue 7/3/2007 9:17 AM
To: Fedora-commons-users@lists.sourceforge.net
Subject: [Fedora-commons-users] large datastream download memory issue

i uploaded a 100mb datastream to fedora and i have a problem with download of the stream using the fedora api-a.

using
  http://www.fedora.info/download/2.2/javadocs/fedora/server/types/gen/MIMETypedStream.html
  http://www.fedora.info/wiki/index.php/GetDatastreamDissemination

 MIMETypedStream mts = FedoraAccess.getDatastreamDissemination(pid,dsID,null);
 byte b = mts.getStream();

this creates a byte array of at least 100MB in memory.

is there a way to buffer the datastream instead?

steve
--
Steve Hassan
Systems and Applications Developer
http://www.data-archive.ac.uk/


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Fedora-commons-users mailing list
Fedora-commons-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fedora-commons-users