11-26-2002
lpsched signals
Hello,
I am sure this info is somewhere on the web but have not been able to find it via google or by searching this site. On HPUX we have a model script that runs a command to capture the spool file to a repository and doesn't actually physically print the spool file. This has been working fine for many years.
Today we found a strange quirk. If the print queue is disabled, the model script stops executing as expected but if the capture command is running, it continues to run until it completes. The return code from the capture command is not passed back to the model script (or the model script ignores it because it has been disabled). When the queue is enabled again, the job that was running when the queue was disabled is processed again. The lpsched man page (lpsched 1M on HP) mentions this behavior and this is the behavior I would expect from lpsched. The problem is the same spool file is being completely processed twice causing duplication in our repository.
So here comes the question. Does anyone know anyway I can send SIGTERM/SIGKILL/etc to the capture command when the queue is disabled by placing code in the same model script? In my case it would be approriate to kill the capture command if the queue is disabled. If this is not possible, how about the inverse - passing the success of the capture command back to model script thus completing the job so lpsched starts with the next job when the queue is enabled once again.
During some of my testing to figure this out, I have noticed that once a queue is disabled, any commands running from that model script seem to lose STDOUT and STDERR. Can anyone confirm this? I am doing more testing to see if I can prove otherwise.
Thanks,
TioTony
10 More Discussions You Might Find Interesting
1. Programming
does the way of handling, interrupting signals in HP-UX same as that of solaris. If there is difference than what it is.?:confused: (1 Reply)
Discussion started by: kapilv
1 Replies
2. UNIX for Advanced & Expert Users
hi i am using a Unixware 2.1 os. last day system hanged up and restarted. now lpsched does not start.
lpNet log file says:
starting lpNet Parent
error: class= Fatal, type= Unix, trace= (lpNetParent/MountPipe)), Too many symoblic links in path name traversal.
abnormal process termination.
i... (0 Replies)
Discussion started by: kapilverma_udr
0 Replies
3. Solaris
:confused:
Dear All,
Was wondering if I can get any help on Solaris 10 here..
I have a issue with lpsched service, when I am sending any print jobs.
the following is the error
UX:lpstat: ERROR: Can't send message to the LP print service.
TO FIX: The LP print service apparently has... (2 Replies)
Discussion started by: Sapna
2 Replies
4. AIX
Hi everyone,
I have a problem with lpsched on an AIX 5.1 machine.
the lpsched process is terminating as soon as it starts, if i do the command:
/usr/lib/lp/lpsched
I get the output:
UX:lpsched: INFO: Print services started.
However if i look in the /var/lp/logs/lpsched log file i... (1 Reply)
Discussion started by: jbonevia
1 Replies
5. Solaris
We have a total of 51 lpsched daemons running. I just have a feeling that is way too much print daemons.
root 16570 21343 0 08:57:06 ? 0:00 /usr/lib/lpsched
root 21357 21343 0 08:13:33 ? 0:00 /usr/lib/lpsched
root 21377 21343 0 08:13:33 ? 0:00 /usr/lib/lpsched
... (0 Replies)
Discussion started by: Sarccastik Dude
0 Replies
6. UNIX for Dummies Questions & Answers
(posted this in the scripting forum as well, but figured it should go here) So, what's going on is this:
For our program, we had to create our own shell, and if the user pressed ctrl-c just at the cmdline, then this signal would be ignored, but if there is a foreground process running, let's... (0 Replies)
Discussion started by: blind melon
0 Replies
7. Programming
How can use signals in a C program If i want a child program to signal it's parent program that it(child) program has completed the task that it was assigned.:confused: (2 Replies)
Discussion started by: kapilv
2 Replies
8. UNIX for Dummies Questions & Answers
I know how to add signal to a set. But what if I want to add 2 or 3 signals to the set.
I know I can use sigaddset (&set,SIGBUS)....but what if I want to add SIGBUS and SIGALRM at once. Do i have to do it like this..
sigaddset (&set,SIGBUS);
sigaddset (&set,SIGALRM);
Is there another way to... (0 Replies)
Discussion started by: joker40
0 Replies
9. UNIX for Dummies Questions & Answers
I was wondering about following. If I have set of 3 signals. And they are all blocked.Now at some point in the program the set is unblocked. Which signal will be delivered first.This is my set....SIGTSTP,SIGQUIT,SIGINT.When I added them in the set and unblock them I did it in following order...
... (1 Reply)
Discussion started by: joker40
1 Replies
10. UNIX for Advanced & Expert Users
Hi All,
The problem statement is as below:
Problem: A process (exe) is getting executed in background. The output of this process is getting logged in a file. After successfully running for some time the process gets terminated. In the log file following is present:
^M[7m Interrupt ^M[27m... (8 Replies)
Discussion started by: Praty.27
8 Replies
LEARN ABOUT PLAN9
lpsched
lpsched(1M) System Administration Commands lpsched(1M)
NAME
lpsched - start the LP print service
SYNOPSIS
lpsched [-f num_filters] [-n num_notifiers] [-p fd_limit] [-r reserved_fds]
DESCRIPTION
The lpsched command starts or restarts the LP print service.
The lpshut command stops the LP print service. Printers that are restarted using lpsched reprint (in their entirety) print requests that
were stopped by lpshut. See lpshut(1M).
It is recommended that you start and stop the LP print service using svcadm(1M). See NOTES.
OPTIONS
The following options are supported:
-f num_filters Specifies the number of concurrent slow filters that may be run on a print server. A default value of 1 is used if
none is specified. Depending on server configuration, a value of 1 may cause printers to remain idle while there
are jobs queued to them.
-n num_notifiers Specifies the number of concurrent notification processes that can run on a print server. A default value of 1 is
used when none is specified.
-p fd_limit Specifies the file descriptor resource limit for the lpsched process. A default value of 4096 is used if none is
specified. On extremely large and active print servers, it may be necessary to increase this value.
-r reserved_fds Specifies the number of file descriptors that the scheduler reserves for internal communications under heavy load.
A default value of 2 is used when none is specified. It should not be necessary to modify this value unless
instructed to do so when troubleshooting problems under high load.
EXIT STATUS
The following exit values are returned:
0 Successful completion.
non-zero An error occurred.
FILES
/var/spool/lp/* LP print queue.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWpsu |
+-----------------------------+-----------------------------+
SEE ALSO
lp(1), svcs(1), lpstat(1), lpadmin(1M), lpmove(1M), lpshut(1M), svcadm(1M), attributes(5), smf(5)
System Administration Guide: Basic Administration
NOTES
The lpsched service is managed by the service management facility, smf(5), under the service identifier:
svc:/application/print/server
Administrative actions on this service, such as enabling, disabling, or requesting restart, can be performed using svcadm(1M). The ser-
vice's status can be queried using the svcs(1) command.
SunOS 5.10 3 Sep 2004 lpsched(1M)