[ 
https://issues.apache.org/jira/browse/AXIS-2574?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rodrigo Ruiz updated AXIS-2574:
-------------------------------

    Attachment: Call.diff

Sorry, the previous patch was broken and led to compile errors. This is the 
correct one.

> Reading an attachment (slowly) can cause resource deleted error
> ---------------------------------------------------------------
>
>                 Key: AXIS-2574
>                 URL: https://issues.apache.org/jira/browse/AXIS-2574
>             Project: Axis
>          Issue Type: Bug
>          Components: Basic Architecture
>    Affects Versions: 1.2.1
>            Reporter: Steve Sowerby
>         Attachments: Call.diff, Call.diff
>
>
> When reading the data from an attachment we periodically get the following 
> error:
> java.io.IOException: Resource has been deleted.
>  at 
> org.apache.axis.attachments.ManagedMemoryDataSource$Instream.read(ManagedMemoryDataSource.java:688)
> Having run this throught a debugger and had a brief look at the code it seems 
> to me there is a race condition of sorts.
> The MemoryManagedDataSource that provides the InputStream has been marked as 
> deleted by the finalize method of AttachmentPart.
> So basically if the client doesn't read off the attachment fast enough then 
> the writer will have finished and the AttachmentPart gets finalized and blam, 
> you've got a deleted MemoryManagedDataSource.
> I'm not sure what the best fix is.  Perhaps the deletion should actually be 
> some reference count rather than a simple boolean.  That way the 
> MemoryManagedDataSource gets deleted once all the writers and readers are 
> done?  Although perhaps then there would be an issue if the client was very 
> slow to even open the attachment?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to