Skip to Content

sp_who shows infected status after kill command

Hello,

Running ASE 16 sp02 pl05 on Linux RHEL 7.2, after killing some processes with kill command ( kill <spid> ), sp_who shows "infected" status:

---------- Active Processes and Transactions in Database 'uno' ----------

Spid Program Transaction Status CPU I/O Blk Error

572 SqlDbx infected 1 0 0 0

858 SqlDbx infected 49 0 0 0

According to Admin manual:

infected;

Server has detected serious error condition; extremely rare.

kill command not recommended. Server restart probably required to clear process.

Which would be the reasons for this and any way to prevent them?

Thanks

Regards

Jose

Add comment
10|10000 characters needed characters exceeded

  • Thank you Bret,

    Does the same aplly if I use a dbcc dbreboot (report,<db>) and status shows "infected"?

    Regards

    Jose

  • Spids in "infected" status is very unusual. The most likely cause I can think of is that traceflag 3620 may somehow have been turned on. You can check for this with

    set switch on 3604
    go
    dbcc traceflags
    go


    and see if 3620 is in the list of active traceflags. (you can also grep for "3620" in the ASE errorlog).

    3620 is a rarely-used diagnostic flag that causes processes that would normally be killed and cleaned up to just be marked infected and left in place so that support engineers can then examine the spids structures during post-mortem investigation.

    -bret
  • Get RSS Feed

1 Answer

  • Best Answer
    Apr 19, 2017 at 11:37 AM

    Hi Jose,

    If this traceflag is on, any spids that are "infected" are probably in that state rather than being killed because of the flag - whether the spid is being shown by sp_who, select from sysprocesses, dbcc dbreboot, etc. If the flag isn't on (and errorlog doesn't reflect it having been on in the recent past) then the cause will be something else.

    -bret

    Add comment
    10|10000 characters needed characters exceeded