Greetings,

In investigating a connection pool issue we were having during development,
I was checking the FetchS3Object code to see how it reads content from S3.
I don't see a close()
<http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/model/S3Object.html#close-->invocation
on the S3Object in the FetchS3Object processor. I believe this can lead to
leaks on that object.

We we're seeing logs like the following after trying to process some 90k
objects from S3:
INFO [Timer-Driven Process Thread-55] com.amazonaws.http.AmazonHttpClient
Unable to execute HTTP request: Timeout waiting for connection from pool

Is the S3Object not closed because the stream content is lazily loaded
later in the flow (when accessed)? I didn't check the processSession
implementation which reads the input stream. Just figured I'd ask and see
if you all were aware, or that this is for some reason by design.

Thanks,
dh

Reply via email to