For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Igor Stasenko

Ken, this issue with UUID is almost half-year old (if not older),
and was reported multiple times by multiple people who running squeak on linux.
I thought this were fixed already.. but it seems there are some VMs
which don't have such fix.

David, can you shed a light on the status of given issue?

2009/7/16 Ken Causey <[hidden email]>:
> So I disabled all the Traits tests and tried to run the rest.  At some
> point (sorry I was not watching closely) the image crashed.  Again this
> is on 32bit linux, exupery vm 0.15.1.
>
> Segmentation fault
>
> 2031394508 UUID>initialize
> 2031394392 Behavior>new:



--
Best regards,
Igor Stasenko AKA sig.
Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

David T. Lewis
 
On Thu, Jul 16, 2009 at 10:53:25PM +0300, Igor Stasenko wrote:
>
> Ken, this issue with UUID is almost half-year old (if not older),
> and was reported multiple times by multiple people who running squeak on linux.
> I thought this were fixed already.. but it seems there are some VMs
> which don't have such fix.
>
> David, can you shed a light on the status of given issue?

I only know that it has been reported several times on the Pharo
list. I have not seen the problem myself, but I assume that it's
a bug in the plugin, so I opened an issue on Mantis to track it:

  http://bugs.squeak.org/view.php?id=7358

If anyone has additional information, please update the Mantis report.
That's all I know for now.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Andreas.Raab
 
As a workaround, how is this?

UUID>>initialize
        "Some unix versions crash with the UUID prim, so disable it for all of 'em"
        Smalltalk platformName = 'unix'
                ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4]
                ifFalse:[self primMakeUUID].


Cheers,
   - Andreas

David T. Lewis wrote:

>  
> On Thu, Jul 16, 2009 at 10:53:25PM +0300, Igor Stasenko wrote:
>> Ken, this issue with UUID is almost half-year old (if not older),
>> and was reported multiple times by multiple people who running squeak on linux.
>> I thought this were fixed already.. but it seems there are some VMs
>> which don't have such fix.
>>
>> David, can you shed a light on the status of given issue?
>
> I only know that it has been reported several times on the Pharo
> list. I have not seen the problem myself, but I assume that it's
> a bug in the plugin, so I opened an issue on Mantis to track it:
>
>   http://bugs.squeak.org/view.php?id=7358
>
> If anyone has additional information, please update the Mantis report.
> That's all I know for now.
>
> Dave
>
Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Brent Pinkney-2
 
> As a workaround, how is this?
>
> UUID>>initialize
> "Some unix versions crash with the UUID prim, so disable it for all of 'em"
> Smalltalk platformName = 'unix'
> ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4]
> ifFalse:[self primMakeUUID].

No lads, we use this in a production telco environment - lets fix it properly.

Brent
Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

David T. Lewis
 
On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote:

>  
> > As a workaround, how is this?
> >
> > UUID>>initialize
> > "Some unix versions crash with the UUID prim, so disable it for all of 'em"
> > Smalltalk platformName = 'unix'
> > ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4]
> > ifFalse:[self primMakeUUID].
>
> No lads, we use this in a production telco environment - lets fix it properly.

Agreed.

Someone (faried) has added an additional Mantis report on this problem, see
http://bugs.squeak.org/view.php?id=7371.

The new bug report contains some useful gdb output showing a segfault occuring
in the actual uuid_generate() library call. The VM support code wrapping this
call looks dead simple, so I'm hard pressed to see how that could be wrong.
This plugin is trivial; we must be missing something obvious.

Note, I'm not actually working on this bug, and I've never seen it happen. I'm
just tracking it in Mantis and hoping that someone can point to a solution.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Nicolas Cellier

Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ?

Nicolas

2009/7/18 David T. Lewis <[hidden email]>:

>
> On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote:
>>
>> > As a workaround, how is this?
>> >
>> > UUID>>initialize
>> >     "Some unix versions crash with the UUID prim, so disable it for all of 'em"
>> >     Smalltalk platformName = 'unix'
>> >             ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4]
>> >             ifFalse:[self primMakeUUID].
>>
>> No lads, we use this in a production telco environment - lets fix it properly.
>
> Agreed.
>
> Someone (faried) has added an additional Mantis report on this problem, see
> http://bugs.squeak.org/view.php?id=7371.
>
> The new bug report contains some useful gdb output showing a segfault occuring
> in the actual uuid_generate() library call. The VM support code wrapping this
> call looks dead simple, so I'm hard pressed to see how that could be wrong.
> This plugin is trivial; we must be missing something obvious.
>
> Note, I'm not actually working on this bug, and I've never seen it happen. I'm
> just tracking it in Mantis and hoping that someone can point to a solution.
>
> Dave
>
>
Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Brad Fowlow-2
In reply to this post by David T. Lewis
 

It's not clear from the reports whether this is known to be the first  
uuid_generate call.

It might help if someone afflicted could say
if this is always the first call...

Since it does look dead simple on the face of it.

But there's that almost-ambiguous extra indirection in there

        int MakeUUID(char *location)
        {
                uuid_t uuid;
    uuid_generate(uuid);
    memcpy((void *)location, (void *)&uuid, sizeof(uuid));
    return 1;
        }

since uuid_t is an array type, the & in (void *) & uuid
is one of those C miseries; who knows?

Anyway, is it the first uuid, or a subsequent one, that dies?

-b



>
> On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote:
>>
>>> As a workaround, how is this?
>>>
>>> UUID>>initialize
>>> "Some unix versions crash with the UUID prim, so disable it for  
>>> all of 'em"
>>> Smalltalk platformName = 'unix'
>>> ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4]
>>> ifFalse:[self primMakeUUID].
>>
>> No lads, we use this in a production telco environment - lets fix  
>> it properly.
>
> Agreed.
>
> Someone (faried) has added an additional Mantis report on this  
> problem, see
> http://bugs.squeak.org/view.php?id=7371.
>
> The new bug report contains some useful gdb output showing a  
> segfault occuring
> in the actual uuid_generate() library call. The VM support code  
> wrapping this
> call looks dead simple, so I'm hard pressed to see how that could be  
> wrong.
> This plugin is trivial; we must be missing something obvious.
>
> Note, I'm not actually working on this bug, and I've never seen it  
> happen. I'm
> just tracking it in Mantis and hoping that someone can point to a  
> solution.
>
> Dave
>

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Andrew Gaylard
In reply to this post by David T. Lewis
 
On Sat, Jul 18, 2009 at 8:11 PM, David T. Lewis<[hidden email]> wrote:

> Someone (faried) has added an additional Mantis report on this problem, see
> http://bugs.squeak.org/view.php?id=7371.

I can't replicate this on Ubuntu/x86, nor on Solaris/SPARC, both 3.10-4.

Can anyone replicate this bug?  What did you do?

--
Andrew
Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Bryce Kampjes
In reply to this post by David T. Lewis
 
On Sat, 2009-07-18 at 14:11 -0400, David T. Lewis wrote:

> On Sat, Jul 18, 2009 at 08:33:32AM +0200, Brent Pinkney wrote:
> >  
> > > As a workaround, how is this?
> > >
> > > UUID>>initialize
> > > "Some unix versions crash with the UUID prim, so disable it for all of 'em"
> > > Smalltalk platformName = 'unix'
> > > ifTrue:[UUIDGenerator default generateBytes: self forVersion: 4]
> > > ifFalse:[self primMakeUUID].
> >
> > No lads, we use this in a production telco environment - lets fix it properly.
>
> Agreed.
>
> Someone (faried) has added an additional Mantis report on this problem, see
> http://bugs.squeak.org/view.php?id=7371.
>
> The new bug report contains some useful gdb output showing a segfault occuring
> in the actual uuid_generate() library call. The VM support code wrapping this
> call looks dead simple, so I'm hard pressed to see how that could be wrong.
> This plugin is trivial; we must be missing something obvious.
>
> Note, I'm not actually working on this bug, and I've never seen it happen. I'm
> just tracking it in Mantis and hoping that someone can point to a solution.

I think another work around was to increase the size of the Squeak UUID
object by a byte which suggests the bug is an off by one error.

Bryce

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

David T. Lewis
In reply to this post by Nicolas Cellier
 
On Sat, Jul 18, 2009 at 08:24:10PM +0200, Nicolas Cellier wrote:
>
> Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ?
>

It certainly seems possible. The symptoms reported there are similar to what
Squeak/Pharo users have been reporting. There is a C test program that someone
might run to confirm, see the bugzilla report for details.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

David T. Lewis
In reply to this post by Bryce Kampjes
 
On Sat, Jul 18, 2009 at 09:16:19PM +0100, Bryce Kampjes wrote:
>  
> I think another work around was to increase the size of the Squeak UUID
> object by a byte which suggests the bug is an off by one error.

Interesting. I don't see an off-by-one error in the code, but perhaps it
might be an alignment issue that causes a larger buffer to be required on
some platforms?

Dave

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

David T. Lewis
In reply to this post by Nicolas Cellier
 
On Sat, Jul 18, 2009 at 08:24:10PM +0200, Nicolas Cellier wrote:

>
> 2009/7/18 David T. Lewis <[hidden email]>:
> >
> > Someone (faried) has added an additional Mantis report on this problem, see
> > http://bugs.squeak.org/view.php?id=7371.
> >
> > The new bug report contains some useful gdb output showing a segfault occuring
> > in the actual uuid_generate() library call. The VM support code wrapping this
> > call looks dead simple, so I'm hard pressed to see how that could be wrong.
> > This plugin is trivial; we must be missing something obvious.
> >
> > Note, I'm not actually working on this bug, and I've never seen it happen. I'm
> > just tracking it in Mantis and hoping that someone can point to a solution.
> >
>
> Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ?

FYI, faried has provided some excellent follow up information on this issue
on Mantis 7358, including a link to http://bugs.python.org/issue6059, which
appears to show Python running into the same library bug.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: For how long UUID issue will bite us? (Was: Re: [squeak-dev] Closure testers needed)

Igor Stasenko
 
Aha, so it seems that bug lies in uuid library..
Is there a way to find out the buggy version and then add a workaround
into plugin?
Something like put ' if (uuid_version() == xxx ) {} '

2009/7/21 David T. Lewis <[hidden email]>:

>
> On Sat, Jul 18, 2009 at 08:24:10PM +0200, Nicolas Cellier wrote:
>>
>> 2009/7/18 David T. Lewis <[hidden email]>:
>> >
>> > Someone (faried) has added an additional Mantis report on this problem, see
>> > http://bugs.squeak.org/view.php?id=7371.
>> >
>> > The new bug report contains some useful gdb output showing a segfault occuring
>> > in the actual uuid_generate() library call. The VM support code wrapping this
>> > call looks dead simple, so I'm hard pressed to see how that could be wrong.
>> > This plugin is trivial; we must be missing something obvious.
>> >
>> > Note, I'm not actually working on this bug, and I've never seen it happen. I'm
>> > just tracking it in Mantis and hoping that someone can point to a solution.
>> >
>>
>> Anything to do with https://bugzilla.redhat.com/show_bug.cgi?id=471801 ?
>
> FYI, faried has provided some excellent follow up information on this issue
> on Mantis 7358, including a link to http://bugs.python.org/issue6059, which
> appears to show Python running into the same library bug.
>
> Dave
>
>



--
Best regards,
Igor Stasenko AKA sig.