From: Paul on
Hello,

Intermittently, I get the following error message when using the
command "file delete -force $dirPath":

error deleting "value_of_dirPath/subDir/subSubDir": file already
exists

Does anyone know what this means? To me, the message itself makes no
sense. Why is a file's existence a reason for its being undeletable?


The error is NOT duplicatable. If I run the same command again, it
almost always works. But then a few minutes later it fails on another
directory.

DirPath is a directory, not a file. I'm expecting the command to do a
recursive deletion. In fact, by the time the error comes up, a number
of other subdirectories and their contents have already been deleted.

"SubSubDir" is also a directory. It may or may not be empty to begin
with, but by the time the error comes up, it's always empty already.

DirPath and all its subdirectories are encrypted.

Running Tcl/Tk 8.5.8.0 on Windows 7 Pro.

Thanks
Paul
From: Gerald W. Lester on
Paul wrote:
> Hello,
>
> Intermittently, I get the following error message when using the
> command "file delete -force $dirPath":
>
> error deleting "value_of_dirPath/subDir/subSubDir": file already
> exists
>
> Does anyone know what this means? To me, the message itself makes no
> sense. Why is a file's existence a reason for its being undeletable?
>
>
> The error is NOT duplicatable. If I run the same command again, it
> almost always works. But then a few minutes later it fails on another
> directory.
>
> DirPath is a directory, not a file. I'm expecting the command to do a
> recursive deletion. In fact, by the time the error comes up, a number
> of other subdirectories and their contents have already been deleted.
>
> "SubSubDir" is also a directory. It may or may not be empty to begin
> with, but by the time the error comes up, it's always empty already.
>
> DirPath and all its subdirectories are encrypted.
>
> Running Tcl/Tk 8.5.8.0 on Windows 7 Pro.
>
> Thanks
> Paul

Any chance it is a network share?

--
+------------------------------------------------------------------------+
| Gerald W. Lester |
|"The man who fights for his ideals is the man who is alive." - Cervantes|
+------------------------------------------------------------------------+
From: Larry W. Virden on
On Jan 28, 1:39 pm, Paul <pshab...(a)gmail.com> wrote:
> Hello,
>
> Intermittently, I get the following error message when using the
> command "file delete -force $dirPath":
>
>      error deleting "value_of_dirPath/subDir/subSubDir": file already
> exists
>
> Does anyone know what this means?  To me, the message itself makes no
> sense.  Why is a file's existence a reason for its being undeletable?

The man page for file (delete section) says:

If the -force option is specified on a directory, Tcl will attempt
both to change permissions and
move the current directory ``pwd'' out of the given path if that is
necessary to allow the deletion to proceed.

So the error sounds, to me, as if the code is changing directories as
it is deleting things, and sometimes, the path being deleted is where
the program is located.
From: Alexandre Ferrieux on
On Jan 28, 7:39 pm, Paul <pshab...(a)gmail.com> wrote:
> Hello,
>
> Intermittently, I get the following error message when using the
> command "file delete -force $dirPath":
>
>      error deleting "value_of_dirPath/subDir/subSubDir": file already
> exists
>
> Does anyone know what this means?  To me, the message itself makes no
> sense.  Why is a file's existence a reason for its being undeletable?
>
> The error is NOT duplicatable.  If I run the same command again, it
> almost always works.  But then a few minutes later it fails on another
> directory.
>
> DirPath is a directory, not a file.  I'm expecting the command to do a
> recursive deletion.  In fact, by the time the error comes up, a number
> of other subdirectories and their contents have already been deleted.
>
> "SubSubDir" is also a directory.  It may or may not be empty to begin
> with, but by the time the error comes up, it's always empty already.
>
> DirPath and all its subdirectories are encrypted.
>
> Running Tcl/Tk 8.5.8.0 on Windows 7 Pro.

Attach to your process (or rather, filter on its name) with ProcMon
(the tool by SysInternals, formerly FileMon/RegMon) and look at the
results of filesystem calls near the error.

-Alex
From: Paul on
Nope, it's a local dir.