Informix

 View Only
  • 1.  how to terminate defunct threads?

    Posted Mon May 18, 2020 05:30 AM
    Hi, Two assertion failures occur in a customer's Informix instance and two threads remain defunct state.
    Is it possible to terminate a thread in the defunct state shown below? 

    onstat -g ath:
    
    IBM Informix Dynamic Server Version 12.10.FC12W1X5WE -- On-Line -- Up 230 days 09:40:11 -- 8573232 Kbytes
    
    Threads:
     tid     tcb              rstcb            prty status                vp-class       name
    ...
     2134943  700000050644808  7000000336243b8  1    cond wait  defunct      1cpu        sqlexec


    ------------------------------
    SangGyu Jeong
    Software Engineer
    Infrasoft
    Seoul Korea, Republic of
    ------------------------------

    #Informix


  • 2.  RE: how to terminate defunct threads?

    IBM Champion
    Posted Mon May 18, 2020 05:44 AM
    Hi,

    you can consider a defunct thread terminated already, so no need (and no way) for completely getting rid of it.

    The idea of leaving such crashing threads behind in this state, after having checked they're not holding critical resources others might depend on (e.g. mutexes), is  to avoid an immediate engine crash and instead allow for a more convenient point in time for cleaning up any mess they might have created, by a deliberate restart - if deemed necessary at all.

    HTH,
     Andreas

    ------------------------------
    Andreas Legner
    ------------------------------