[
https://issues.apache.org/jira/browse/SYNAPSE-907?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Hiranya Jayathilaka updated SYNAPSE-907:
----------------------------------------
Fix Version/s: (was: FUTURE)
3.0
> VFSTransportListener locks a folder if a non-matching file is put in to it
> --------------------------------------------------------------------------
>
> Key: SYNAPSE-907
> URL: https://issues.apache.org/jira/browse/SYNAPSE-907
> Project: Synapse
> Issue Type: Bug
> Components: Transports
> Affects Versions: 2.1
> Environment: I have tried this with a ftp/sftp location
> Reporter: Amila Maharachchi
> Assignee: Hiranya Jayathilaka
> Priority: Blocker
> Labels: lock, vfs
> Fix For: 3.0
>
> Attachments: SYNAPSE_907.patch
>
>
> Create a VFS proxy, provide a file name pattern and a file uri to listen in.
> Then put a file with a non-matching file name patter to the mentioned folder.
> VFSTransportListener locks the folder without checking whether the file
> pattern matches and this lock is not released. After that even if we put a
> correct file, it cannot be processed due to the lock.
> Following code segment is the culprit.
> VFSTransportListener#scanFileOrDirectory
> else if (!(!entry.isFileLockingEnabled() || (entry.isFileLockingEnabled()
> && VFSUtils.acquireLock(fsManager,
> fileObject))) &&
> log.isDebugEnabled()) {
> log.debug("Couldn't get the lock for processing
> the file : "
> + child.getName());
> }
> this passes the wrong fileobject to acquire the lock (this should pass child
> intead of the fileObject). Even we fix this place, this logic is wrong. We
> dont need to acquire a lock for a non-matching file.
> I have rectified the logic and I'll provide a patch for this.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]