Thread overview
[Issue 11852] New: RDMD broken on the Github HEAD
Dec 31, 2013
Puneet Goel
Dec 31, 2013
Walter Bright
Jan 01, 2014
Puneet Goel
Jan 05, 2014
Andrej Mitrovic
Jan 05, 2014
Andrej Mitrovic
Jan 06, 2014
Puneet Goel
Jan 06, 2014
Andrej Mitrovic
Jan 06, 2014
Vladimir Panteleev
Jan 06, 2014
Andrej Mitrovic
Jan 06, 2014
Andrej Mitrovic
December 31, 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11852

           Summary: RDMD broken on the Github HEAD
           Product: D
           Version: D2
          Platform: All
        OS/Version: Linux
            Status: NEW
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody@puremagic.com
        ReportedBy: puneet@coverify.org


--- Comment #0 from Puneet Goel <puneet@coverify.org> 2013-12-31 00:24:04 PST ---
I get the following error when I try running rdmd

std.file.FileException@std/file.d(1364): /tmp/.rdmd-1000: File exists

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
December 31, 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11852


Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com


--- Comment #1 from Walter Bright <bugzilla@digitalmars.com> 2013-12-31 14:04:57 PST ---
What is the command line you are using?

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 01, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852



--- Comment #2 from Puneet Goel <puneet@coverify.org> 2013-12-31 22:10:31 PST ---
(In reply to comment #1)
> What is the command line you are using?

Just plain simple $ rdmd test.d

gives me this error. The error disappears once I remove the directory /tmp/.rdmd-1000 manually. But reappears when I run rdmd again. I have tried running on various machines (all ubuntu 13.10 systems).

I can also confirm that the error appears with the github version
   git://github.com/D-Programming-Language/tools.git
   SHA1: 1f39ed7b6e1cbb0695d7e9b48ad559efd4193bcb
   rdmd: Use a lock file to synchronize concurrent builds in the same workDir

But does not come with rdmd compiled from one previous version
   SHA1: f0606e372bf2a226739fab923c0f92cf65ef2228
   Merge pull request #101 from andralex/rdmd

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 05, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852


Andrej Mitrovic <andrej.mitrovich@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |andrej.mitrovich@gmail.com


--- Comment #3 from Andrej Mitrovic <andrej.mitrovich@gmail.com> 2014-01-05 12:06:19 PST ---
Is there a stack trace?

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 05, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852



--- Comment #4 from Andrej Mitrovic <andrej.mitrovich@gmail.com> 2014-01-05 12:12:19 PST ---
It's likely triggered by one of the three mkdirRecurse calls in RDMD, which calls mkdir on Posix, which is the origin of std/file.d(1364) in git-head.

Maybe there should be a check first via:

if (!path.exists())
    path.mkdirRecurse();

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 06, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852



--- Comment #5 from Puneet Goel <puneet@coverify.org> 2014-01-05 19:32:11 PST ---
(In reply to comment #4)
> It's likely triggered by one of the three mkdirRecurse calls in RDMD, which calls mkdir on Posix, which is the origin of std/file.d(1364) in git-head.
> 
> Maybe there should be a check first via:
> 
> if (!path.exists())
>     path.mkdirRecurse();

Andrej you are right. I tried creating a stack report, but somehow I was not able to manage that even I used a version of rdmd compiled with -g flag.

So I patched the rdmd.d as per your suggestion and it works. I have created a pull request.

https://github.com/D-Programming-Language/tools/pull/104

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 06, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852


Andrej Mitrovic <andrej.mitrovich@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull


--- Comment #6 from Andrej Mitrovic <andrej.mitrovich@gmail.com> 2014-01-06 05:34:04 PST ---
My suggestion had a race condition. Looks like this pull will fix the issue: https://github.com/D-Programming-Language/phobos/pull/1818

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 06, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852


Vladimir Panteleev <thecybershadow@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |thecybershadow@gmail.com


--- Comment #7 from Vladimir Panteleev <thecybershadow@gmail.com> 2014-01-06 15:38:18 EET ---
Sorry, you're right, rdmd pull #99 depended on Phobos #1818. I moved mkdirRecurse (then called ensurePathExists) from rdmd to Phobos at Andrei's suggestion. The rdmd pull was merged, and I didn't say anything because I thought the Phobos one would be merged promptly too.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 06, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852


Andrej Mitrovic <andrej.mitrovich@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
January 06, 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11852



--- Comment #8 from Andrej Mitrovic <andrej.mitrovich@gmail.com> 2014-01-06 07:17:51 PST ---
https://github.com/D-Programming-Language/phobos/commit/eea81d8a863421d9e6f855f487c6fe809a434b1c

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------