Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.programming.threads > #1434
| From | Robert Wessel <robertwessel2@yahoo.com> |
|---|---|
| Newsgroups | comp.programming.threads |
| Subject | Re: deadlock detection |
| Message-ID | <ofvfk81jk7k26g0r0bbkb95npvfbn8cm8d@4ax.com> (permalink) |
| References | <1d1a06b6-7e30-4f08-9d1b-7c64d3d4daaf@googlegroups.com> <2da5bc87-f943-4470-b5f6-a6069296f1d9@l9g2000yqp.googlegroups.com> |
| Organization | Forte Inc. http://www.forteinc.com/apn/ |
| Date | 2013-03-19 01:03 -0500 |
On Mon, 18 Mar 2013 22:38:49 -0700 (PDT), Michael Podolsky <michael.podolsky.69@gmail.com> wrote: >On Mar 15, 6:46 am, Aaron Brady <castiro...@gmail.com> wrote: >> I have invented a deadlock detector. The procedure is very simple and it would be very useful. It must be broken or it would exist already. >> >> The Wikipedia article claims it's impossible [1]. >> >> [1]http://en.wikipedia.org/wiki/Deadlock#Avoidance > >Are you sure this article claims that deadlock detection is >impossible? > >I hope I understood the idea of your implementation. I recently made a >kind of development in the same direction to analyze in runtime lock >patterns which may lead to _potential_ deadlocks -- just by searching >for cycles in a graph. > >Supposing your system works perfectly as expected, one question should >be asked here, in my opinion - what the application will do if it >actually detects a deadlock i.e. what will it do if its lock request >is rejected? Supposing our goal is to preserve its robustness, some >methodology/framework should be defined here to allow it to survive >and make further progress in execution. > >And if you did not mean to make the application robust, what is then >the primarily goal of your invention? In general it's impossible (basically it reduces to the halting problem). But it is possible to detect many cases (just like you can decide the halting problem for many specific programs). But reliably detecting deadlock would at least be useful for identifying and fixing the problem - even if the current run of the application crashed. And in many cases you can just kill one of the lock holding processes (for example, if the deadlock were in a database between two or more transactions - kill one and let it roll back, and then continue with the rest). In those cases you really want *reliable* deadlock detection (you don't want to start killing transactions just because the system is running a bit slow at the moment), and again, you can generate good diagnostic information to be logged (and hopefully acted on by development).
Back to comp.programming.threads | Previous | Next — Previous in thread | Next in thread | Find similar
deadlock detection Aaron Brady <castironpi@gmail.com> - 2013-03-15 03:46 -0700
Re: deadlock detection Michael Podolsky <michael.podolsky.69@gmail.com> - 2013-03-18 22:38 -0700
Re: deadlock detection Robert Wessel <robertwessel2@yahoo.com> - 2013-03-19 01:03 -0500
Re: deadlock detection Michael Podolsky <michael.podolsky.69@gmail.com> - 2013-03-19 19:14 -0700
Re: deadlock detection Aaron Brady <castironpi@gmail.com> - 2013-03-21 22:59 -0700
Re: deadlock detection Aaron Brady <castironpi@gmail.com> - 2013-03-19 17:17 -0700
Re: deadlock detection Michael Podolsky <michael.podolsky.69@gmail.com> - 2013-03-19 19:09 -0700
Re: deadlock detection Aaron Brady <castironpi@gmail.com> - 2013-03-20 09:07 -0700
Re: deadlock detection Johann Klammer <klammerj@NOSPAM.a1.net> - 2013-03-19 20:24 +0100
Re: deadlock detection Aaron Brady <castironpi@gmail.com> - 2013-03-26 17:18 -0700
csiph-web