Author: toad
Date: 2007-05-03 21:28:13 +0000 (Thu, 03 May 2007)
New Revision: 13133
Modified:
trunk/freenet/src/freenet/node/fcp/ClientPut.java
Log:
Don't keep the old fieldset in RAM if the request has finished.
Saves a bunch of memory on the startup after completion.
Modified: trunk/freenet/src/freenet/node/fcp/ClientPut.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientPut.java 2007-05-03 21:00:14 UTC
(rev 13132)
+++ trunk/freenet/src/freenet/node/fcp/ClientPut.java 2007-05-03 21:28:13 UTC
(rev 13133)
@@ -333,8 +333,10 @@
}
if(logMINOR) Logger.minor(this, "data = "+data);
this.clientMetadata = cm;
+ SimpleFieldSet oldProgress = fs.subset("progress");
+ if(finished) oldProgress = null; // Not useful any more
putter = new ClientPutter(this, data, uri, cm, ctx,
client.core.requestStarters.chkPutScheduler,
- client.core.requestStarters.sskPutScheduler,
priorityClass, getCHKOnly, isMetadata, client.lowLevelClient,
fs.subset("progress"), targetFilename);
+ client.core.requestStarters.sskPutScheduler,
priorityClass, getCHKOnly, isMetadata, client.lowLevelClient, oldProgress,
targetFilename);
if(persistenceType != PERSIST_CONNECTION) {
FCPMessage msg = persistentTagMessage();
client.queueClientRequestMessage(msg, 0);