GNU bug report logs - #16928
24.3.50; file _flymake not deleted on remote hosts

Previous Next

Package: emacs;

Reported by: Leo Liu <sdl.web <at> gmail.com>

Date: Mon, 3 Mar 2014 15:04:02 UTC

Severity: normal

Found in version 24.3.50

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 16928 in the body.
You can then email your comments to 16928 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to michael.albinus <at> gmx.de, bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Mon, 03 Mar 2014 15:04:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo Liu <sdl.web <at> gmail.com>:
New bug report received and forwarded. Copy sent to michael.albinus <at> gmx.de, bug-gnu-emacs <at> gnu.org. (Mon, 03 Mar 2014 15:04:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo Liu <sdl.web <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.3.50; file _flymake not deleted on remote hosts
Date: Mon, 03 Mar 2014 23:02:26 +0800
1. emacs -q
2. (add-hook 'find-file-hook 'flymake-find-file-hook)
3. make sure the php executable is available
4. save https://github.com/drupal/drupal/raw/7.x/update.php in a remote
   host
5. open it in emacs

And I see update_flymake.php not being deleted (cleaned up). So it seems
at the time flymake-simple-cleanup was called, (file-exists-p
"/host:/path/to/update_flymake.php") returned false.

This is kinda annoying because after a while I see lots of _flymake*
files in the project.

Leo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Tue, 04 Mar 2014 13:15:02 GMT) Full text and rfc822 format available.

Message #8 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Leo Liu <sdl.web <at> gmail.com>
Cc: 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Tue, 04 Mar 2014 14:14:14 +0100
Leo Liu <sdl.web <at> gmail.com> writes:

> 1. emacs -q
> 2. (add-hook 'find-file-hook 'flymake-find-file-hook)
> 3. make sure the php executable is available
> 4. save https://github.com/drupal/drupal/raw/7.x/update.php in a remote
>    host
> 5. open it in emacs
>
> And I see update_flymake.php not being deleted (cleaned up). So it seems
> at the time flymake-simple-cleanup was called, (file-exists-p
> "/host:/path/to/update_flymake.php") returned false.

Yes, I could reproduce it. The problem is, that flymake starts an
asynchronous process. It's sentinel calls then flymake-simple-cleanup,
which fires file-exists-p to an unpredictable time.

After serving flymake-find-file-hook, find-file has continued with the
other functions in find-file-hook. When the file-exists-p call from the
sentinel happened, Tramp was busy with requests from
vc-find-file-hook. And since Tramp is designed to work sequentially, it
couldn't serve promptly :-(

As temporary workaround, you could try

(add-hook 'find-file-hook 'flymake-find-file-hook 'append)

I will check, whether Tramp could be enabled to handle such asynchronous
calls. 

> Leo

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Tue, 04 Mar 2014 14:21:01 GMT) Full text and rfc822 format available.

Message #11 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Leo Liu <sdl.web <at> gmail.com>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Tue, 04 Mar 2014 22:20:13 +0800
On 2014-03-04 21:14 +0800, Michael Albinus wrote:
> Yes, I could reproduce it. The problem is, that flymake starts an
> asynchronous process. It's sentinel calls then flymake-simple-cleanup,
> which fires file-exists-p to an unpredictable time.
>
> After serving flymake-find-file-hook, find-file has continued with the
> other functions in find-file-hook. When the file-exists-p call from the
> sentinel happened, Tramp was busy with requests from
> vc-find-file-hook. And since Tramp is designed to work sequentially, it
> couldn't serve promptly :-(

I see. Maybe it is better for flymake to just call delete-file without
the file-exists-p check ignoring any error. I have found other cases
where _flymake files are left behind.

> As temporary workaround, you could try
>
> (add-hook 'find-file-hook 'flymake-find-file-hook 'append)

Thanks, will use it for now.

> I will check, whether Tramp could be enabled to handle such
>asynchronous
> calls. 

Thanks.

Leo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Tue, 04 Mar 2014 14:54:02 GMT) Full text and rfc822 format available.

Message #14 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Leo Liu <sdl.web <at> gmail.com>
Cc: 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Tue, 04 Mar 2014 15:53:19 +0100
Leo Liu <sdl.web <at> gmail.com> writes:

> I see. Maybe it is better for flymake to just call delete-file without
> the file-exists-p check ignoring any error. I have found other cases
> where _flymake files are left behind.

You could try. But i'm not 100% sure that we don't run into a similar
situation.

However, Tramp's `delete-file' handler doesn't get a special handling in
`vc-find-file-hook', so it might work.

> Thanks.
>
> Leo

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Fri, 07 Mar 2014 14:20:03 GMT) Full text and rfc822 format available.

Message #17 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Leo Liu <sdl.web <at> gmail.com>
Cc: 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Fri, 07 Mar 2014 15:19:22 +0100
Michael Albinus <michael.albinus <at> gmx.de> writes:

> Leo Liu <sdl.web <at> gmail.com> writes:
>
>> I see. Maybe it is better for flymake to just call delete-file without
>> the file-exists-p check ignoring any error. I have found other cases
>> where _flymake files are left behind.
>
> You could try. But i'm not 100% sure that we don't run into a similar
> situation.

I've checked further, there are still problems. A fix seems to be more
complex than expected, it must wait until the trunk is reopened (I fear
I could damage Tramp so close to the release).

For the time being, I have added `tramp-test31-asynchronous-requests' to
Tramp's test cases. It will fail until the bug is fixed.

Best regards, Michael.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Fri, 07 Mar 2014 15:22:01 GMT) Full text and rfc822 format available.

Message #20 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Leo Liu <sdl.web <at> gmail.com>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Fri, 07 Mar 2014 23:21:20 +0800
On 2014-03-07 22:19 +0800, Michael Albinus wrote:
> I've checked further, there are still problems. A fix seems to be more
> complex than expected, it must wait until the trunk is reopened (I fear
> I could damage Tramp so close to the release).
>
> For the time being, I have added `tramp-test31-asynchronous-requests' to
> Tramp's test cases. It will fail until the bug is fixed.

Thank you. It seems best for now.

Leo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Mon, 30 Sep 2019 03:55:01 GMT) Full text and rfc822 format available.

Message #23 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefan <at> marxist.se>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: Leo Liu <sdl.web <at> gmail.com>, 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Mon, 30 Sep 2019 05:54:11 +0200
Michael Albinus <michael.albinus <at> gmx.de> writes:

>>> I see. Maybe it is better for flymake to just call delete-file without
>>> the file-exists-p check ignoring any error. I have found other cases
>>> where _flymake files are left behind.
>>
>> You could try. But i'm not 100% sure that we don't run into a similar
>> situation.
>
> I've checked further, there are still problems. A fix seems to be more
> complex than expected, it must wait until the trunk is reopened (I fear
> I could damage Tramp so close to the release).
>
> For the time being, I have added `tramp-test31-asynchronous-requests' to
> Tramp's test cases. It will fail until the bug is fixed.

Hi Michael,

I'm now seeing the following test pass:

   passed  1/1  tramp-test43-asynchronous-requests (1.738177 sec)

Does that mean that this bug has been fixed?

Best regards,
Stefan Kangas




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#16928; Package emacs. (Wed, 02 Oct 2019 13:02:02 GMT) Full text and rfc822 format available.

Message #26 received at 16928 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Stefan Kangas <stefan <at> marxist.se>
Cc: Leo Liu <sdl.web <at> gmail.com>, 16928 <at> debbugs.gnu.org
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Wed, 02 Oct 2019 15:00:54 +0200
Stefan Kangas <stefan <at> marxist.se> writes:

> Hi Michael,

Hi Stefan,

> I'm now seeing the following test pass:
>
>    passed  1/1  tramp-test43-asynchronous-requests (1.738177 sec)

A lot of work has been done in order to let this test pass. It does
almost, but it is still unstable. That's why it is tagged :unstable.

> Does that mean that this bug has been fixed?

I've played the scenario the OP has given several times with Emacs
27.0.50, and the problem didn't happen. So yes, let's assume the bug has
been fixed.

> Best regards,
> Stefan Kangas

Best regards, Michael.




Reply sent to Stefan Kangas <stefan <at> marxist.se>:
You have taken responsibility. (Wed, 02 Oct 2019 13:05:02 GMT) Full text and rfc822 format available.

Notification sent to Leo Liu <sdl.web <at> gmail.com>:
bug acknowledged by developer. (Wed, 02 Oct 2019 13:05:02 GMT) Full text and rfc822 format available.

Message #31 received at 16928-done <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefan <at> marxist.se>
To: Michael Albinus <michael.albinus <at> gmx.de>
Cc: 16928-done <at> debbugs.gnu.org, Leo Liu <sdl.web <at> gmail.com>
Subject: Re: bug#16928: 24.3.50; file _flymake not deleted on remote hosts
Date: Wed, 2 Oct 2019 15:03:55 +0200
Michael Albinus <michael.albinus <at> gmx.de> writes:

> > Does that mean that this bug has been fixed?
>
> I've played the scenario the OP has given several times with Emacs
> 27.0.50, and the problem didn't happen. So yes, let's assume the bug has
> been fixed.

Thanks, I'm closing this now then.  We can always reopen later if this
turns out to still be a problem.

Best regards,
Stefan Kangas




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 31 Oct 2019 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 329 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.