Jump to content


Photo
- - - - -

Command Line Kill for Clients?


4 replies to this topic

#1 balford

balford

    Member

  • Members
  • PipPip
  • 10 posts
  • Gender:Male
  • Location:Seattle, WA USA

Posted 25 April 2008 - 09:23 PM

While usually the Task Manager is able to kill users, occasionally we must resort to a KILL command in SQL to kill a hung user. In even rarer cases, the SQL kill fails to kill users and we are forced to stop / restart services or even reboot the server to clear the hung user. The later case is a problem since it will affect all 200 users!

Is there some backdoor or command line command to kill a ProIV client?

Thanks for any infomation,

Bob Alford

#2 Fred Marker

Fred Marker

    Advanced

  • Members
  • PipPipPip
  • 82 posts
  • Gender:Male
  • Location:Columbus, Ohio, United States

Posted 06 May 2008 - 12:20 PM

Bob,

Since you mention Task Manager, I assume you are running the ProIV kernel on Windows.

We use pslist.exe from System Internals to display a list of the active ProIV threads. We sort this list on descending kernel time. Usually, the hung threads have the most kernel time relative to all the other threads. The potentially hung threads are at the top of the sorted list.

Then we use Process Explorer (procexp.exe), another System Internals utility, to locate and kill the offending thread.

Years ago, we would need to do this approximately every 3-4 months. Now running 5.5r543, we rarely have any hung threads.

Fred

#3 Jim

Jim

    Advanced

  • Members
  • PipPipPip
  • 52 posts
  • Gender:Male

Posted 07 May 2008 - 10:53 AM

Bob,

Since you mention Task Manager, I assume you are running the ProIV kernel on Windows.

We use pslist.exe from System Internals to display a list of the active ProIV threads. We sort this list on descending kernel time. Usually, the hung threads have the most kernel time relative to all the other threads. The potentially hung threads are at the top of the sorted list.

Then we use Process Explorer (procexp.exe), another System Internals utility, to locate and kill the offending thread.

Years ago, we would need to do this approximately every 3-4 months. Now running 5.5r543, we rarely have any hung threads.

Fred


Fred,

Can I ask you for some more information on this approach. I've been testing it as a client of ours is occasionally getting hung clients where the thread is unkillable using the P4 Service Manager (Kernel 5.5, Windows). We've set the XFUNCT, timeout funct etc. and can trap normal exit using window X or timeouts before any TCP timeout, but in scenarios where the hung thread is unkillable using the P4 Service manager I've killed the thread using SI's Process Explorer (didn't need to use pslist to identify thread - the 'Information' breakdown of the PRO32SRV process listed the individual threads and their kernel times?), and found the following:

- the P4 client on the client computer still remains hung until a manual disconnect using the toolbar button is issued

- the user thread is still listed under the P4 Service Manager on the server, and still does not respond to kill requests

- ProISAM file locks for that user are not released.

Item #1 is not an issue. #2 is cause for concern as there may be other unreleased resources. #3 is a problem as, as well as potentially locking shared resources for other users, we use a file keyed on user to reduce the use of comm vars, and the file lock means the user cannot log back in.

Did you have any of the above problems after killing the offending thread? Are more than one threads involved in each client connection? I've seen mention of ISVIEW on the forum but it doesn't appear to be installed by default at least with the ProIV installation I am working with. Are there utils out there to monitor Iscollect (or Windows equiv), or to force a lock release? TIA for any info. On a related note it seems the version of the P4 Service Manager I have doesn't always refresh the thread list properly - it seems to require a restart to get an accurate picture.

Jim.

#4 Fred Marker

Fred Marker

    Advanced

  • Members
  • PipPipPip
  • 82 posts
  • Gender:Male
  • Location:Columbus, Ohio, United States

Posted 05 June 2008 - 06:41 PM

Sorry for the delay in my response. I have been out of the office much of the month of May.

It has been quite some time since we last experienced such hung threads so I don't have any recent examples to draw on.

Our ProIV client software actually runs as Citrix published applications so any hung thread clients eventually timeout and disconnect. We have not had any issue with locked files/records when we have killed threads.

I believe that Iscollect is not available or not used in a Windows environment.

Yes, ProIV Service Manager does not alway refresh with the correct active threads/connections. We too have to exit and restart Service Manager to get an fresh view.

Fred

#5 Jim

Jim

    Advanced

  • Members
  • PipPipPip
  • 52 posts
  • Gender:Male

Posted 09 June 2008 - 02:54 PM

Sorry for the delay in my response. I have been out of the office much of the month of May.

It has been quite some time since we last experienced such hung threads so I don't have any recent examples to draw on.

Our ProIV client software actually runs as Citrix published applications so any hung thread clients eventually timeout and disconnect. We have not had any issue with locked files/records when we have killed threads.

I believe that Iscollect is not available or not used in a Windows environment.

Yes, ProIV Service Manager does not alway refresh with the correct active threads/connections. We too have to exit and restart Service Manager to get an fresh view.

Fred

Thanks for getting back to me Fred - back to the drawing board ...



Reply to this topic



  


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users