[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: Re: branches/KDE/3.5/kdelibs/kioslave/http
From: Hamish Rodda <rodda () kde ! org>
Date: 2005-12-28 11:00:00
Message-ID: 200512282200.02934.rodda () kde ! org
[Download RAW message or body]
On Wednesday 28 December 2005 21:38, David Faure wrote:
> On Wednesday 28 December 2005 11:22, Hamish Rodda wrote:
> > On Wednesday 28 December 2005 20:57, David Faure wrote:
> > > On Wednesday 28 December 2005 09:40, Hamish Rodda wrote:
> > > > SVN commit 491966 by rodda:
> > > >
> > > > When uploading files to a webdav(s) URL, stat the file first to make
> > > > sure it doesn't already exist.
> > > >
> > > > I would have expected this check to be within kio, but oh well,
> > > > what's an extra round trip anyway...
> > >
> > > Right, KIO::CopyJob does check if the destination exists first.
> > >
> > > So I'm surprised by this... but I'm not sure I have a webdav account
> > > somewhere to even check what the problem is.
> > > I guess you checked already that HTTPProtocol::davStatList returns
> > > ERR_DOES_NOT_EXIST correctly?
> >
> > That's just it, the file exists, so if it was to be stat-ed, it would
> > return the correct entry.
>
> Oh sorry, I was confused. I see.
>
> > I looked at why the ftp ioslave works while the webdav slave doesn't, and
> > found that the ftp ioslave first returns ERR_FILE_ALREADY_EXIST from
> > put(), which then invokes the overwrite/rename dialog. Are you sure the
> > check is within copyjob?
>
> Right; it's not. We don't stat each and every destination (only the overall
> destination directory), it would be far too slow. So we do expect put() to
> return ERR_FILE_ALREADY_EXIST when that's the case, indeed. Your fix is
> correct then.
... which is still a shame because there are an extra O(n) round trips
generated by it. If kio could do a list() and use that information where
there are enough files in a directory to make it worthwhile, that would be
good for webdav. Maybe something to think about for 4?
Cheers,
Hamish.
[Attachment #3 (application/pgp-signature)]
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic