Thread overview
[dmd-internals] Looking for paid help with a D compiler problem
Jan 12, 2015
Omri Palmon
Jan 13, 2015
Leandro Lucarella
Jan 18, 2015
Martin Nowak
Jan 20, 2015
Walter Bright
January 12, 2015
We are developing a large scale D project, and about 20% of the times we get the following error:

 dmd: backend/aa.c:423: void AArray::rehash_x(aaA*, aaA**, size_t):
Assertion `0' failed.
 Aborted (core dumped)

Quite strangely, the problem occurs inconsistently, in about 20% of the cases, even when running multiple times on the same project.

Can anyone help us diagnose this problem and come up with either a patch to the D compiler, or a twik to our project that would make this problem go away.

Needless to say, we are willing to pay for such work.
Please email me at omri@weka.io, or forward this to others who you think
can help.



[image: Inline image 1]
*Omri Palmon, CEO *
*E *omri@weka.io  <omri@weka.io>*T *+972-54-6763282
www.weka.io


January 13, 2015
Omri Palmon via dmd-internals, el 12 de January a las 11:00 me escribiste:
> We are developing a large scale D project, and about 20% of the times we get the following error:
> 
>  dmd: backend/aa.c:423: void AArray::rehash_x(aaA*, aaA**, size_t):
> Assertion `0' failed.
>  Aborted (core dumped)

Are you using rdmd or plain dmd? We experience some random crashes (that would look like that, but I don't remember precisely and I can't check right now). We are using rdmd to run tests that sometimes runs concurrently, and I have the theory this is because rdmd is not prepared to run the same binary concurrently compiled from different locations. My theory is rdmd object cache gets screwed with half compiled objects from another instance or something and this is why dmd crashes. Is a wild theory which I couldn't prove yet though. But if you are using rdmd, and this happens only when you compile multiple things concurrently, it might worth trying to use only dmd or avoid the concurrency. I couldn't get to debug this problem myself yet, and since all I need normally is just to trigger a rebuild of the project, it was never a high priority issue.


-- 
Leandro Lucarella (AKA luca)                     http://llucax.com.ar/
----------------------------------------------------------------------
Es mas posible, que un elefante maneje un cero km a que un camello
habite un departamento de un ambiente.
	-- Peperino PĆ³moro
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
January 18, 2015
On 01/13/2015 04:41 AM, Leandro Lucarella via dmd-internals wrote:
> Omri Palmon via dmd-internals, el 12 de January a las 11:00 me escribiste:
>> We are developing a large scale D project, and about 20% of the times we
>> get the following error:
>>
>>   dmd: backend/aa.c:423: void AArray::rehash_x(aaA*, aaA**, size_t):
>> Assertion `0' failed.
>>   Aborted (core dumped)
>
> Are you using rdmd or plain dmd?

Was the problem resolved?
I've never seen that assertion before.
If it's not related to concurrent rdmd runs, you might be able to reduce a test case with dustmite.
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
January 20, 2015
I did reply to you via private email, but did not receive a response. Perhaps it got stuck in your spam filter?

On 1/12/2015 1:00 AM, Omri Palmon via dmd-internals wrote:
>
> Please email me at omri@weka.io <mailto:omri@weka.io>, or forward this to others who you think can help.
>