Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

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

Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo
Status: Accepted
Owner: [hidden email]
CC: [hidden email],  [hidden email]
Labels: Type-Bug

New issue 4910 by [hidden email]: Reproducible crash with Pharo 1.3  
+ Zn
http://code.google.com/p/pharo/issues/detail?id=4910

Pharo1.3
Latest update: #13307
on OSX Lion

Steps to reproduce:
1. Follow  
http://project.alpha.smallharbour.org/pier/Documentation/whichpackagestoload
2. After ZnZincServerAdaptor startOn: 8080 save the image and reopen it
3. Boom (tried several VM always crash)

PharoDebug.log attached

I've uploaded an image here: http://lolgzs.free.fr/pharo/PharoZnCrash.zip


Attachments:
        PharoDebug.log  140 KB


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo

Comment #1 on issue 4910 by [hidden email]: Reproducible crash with  
Pharo 1.3 + Zn
http://code.google.com/p/pharo/issues/detail?id=4910

Laurent,

OK, I downloaded your image and on my mac with my vm it just hangs.

What version of Zn are you using ?

In the lastest version, you should see this:

ZnMultiThreadedServer(ZnSingleThreadedServer)>>readRequest:
     ^ [ self readRequest: stream ]
                on: (self exceptionSet: #(ConnectionClosed ConnectionTimedOut  
ZnParseError PrimitiveFailed))
                do: [ :exception |
                        self log debug: [ exception printString, ' while reading request' ].
                        nil ]

On PrimitiveFailed, things should be cleaned up properly.

You should also be using the latest Pharo images with the fix to the  
Semaphore problem:

http://code.google.com/p/pharo/issues/detail?id=4768

I have no time to rebuild your image right now.

Thanks for reporting this.

Sven






_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo

Comment #2 on issue 4910 by [hidden email]: Reproducible crash with  
Pharo 1.3 + Zn
http://code.google.com/p/pharo/issues/detail?id=4910

Sorry, typo:

ZnMultiThreadedServer>>readRequestSafely:

should read like the above code.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo

Comment #3 on issue 4910 by [hidden email]: Reproducible crash with  
Pharo 1.3 + Zn
http://code.google.com/p/pharo/issues/detail?id=4910

I would really like to solve this problem. I have described it before, but  
here is what I think happens:

- you start the ZnZincServerAdaptor, which implies creating a listener  
socket and process
- you test it to see if it is running by doing one or more requests
- this means that at least one connection and worker process are alive
- you save the image
- the server receives a shutdown and stops cleanly
- since this is a ZnMultiThreadedServer and not the experimental  
ZnManagingMultiThreadedServer it leaves the connection and the worker  
process alone

- you restart the image
- the server receives a startup and starts working
- the worker process is revived and will continue its blocking read for the  
next request
- this signals a primitive failed and causes a hang/crash

Now, using the lastest Zn, the primitive failed should be caught and the  
connection and worker should be cleaned up silently, unless there is also a  
VM problem, but I don't think so.

(It would also be possible to make sure that no open connections are alive,  
close the browser that you used, check the Process Monitor)

Another option is to use the experimental ZnManagingMultiThreadedServer  
which does track its own connections and cleans them up, which should  
result in the worker processes stopping cleanly.

The next code requires the very latest Zinc-Seaside adaptor, you could try:

ZnZincServerAdaptor new
        port: 8080;
        serverClass: ZnManagingMultiThreadedServer;
        start;
        yourself

But then you absolutely need this patch:

http://code.google.com/p/pharo/issues/detail?id=4768




_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo

Comment #4 on issue 4910 by [hidden email]: Reproducible crash with  
Pharo 1.3 + Zn
http://code.google.com/p/pharo/issues/detail?id=4910

oups sorry Sven I haven't your answers in my inbox full of unread mails -  
hard times :)

I'll try and report. Thanks a lot.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo

Comment #5 on issue 4910 by [hidden email]: Reproducible crash with  
Pharo 1.3 + Zn
http://code.google.com/p/pharo/issues/detail?id=4910

Laurent can you have a look if this is still a problem with the latest  
14228 pharo because we integrated the latest version of Zn.



_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 4910 in pharo: Reproducible crash with Pharo 1.3 + Zn

pharo
Updates:
        Status: Closed

Comment #6 on issue 4910 by [hidden email]: Reproducible crash with  
Pharo 1.3 + Zn
http://code.google.com/p/pharo/issues/detail?id=4910

I've tried with Pharo 1.3 and latest Cog Cocoa, it works ! Thanks.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker