Bug 105616 - cron doesn't run properly
cron doesn't run properly
Status: CLOSED CURRENTRELEASE
Product: Red Hat Linux
Classification: Retired
Component: vixie-cron (Show other bugs)
9
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Jason Vas Dias
Brock Organ
:
Depends On:
Blocks: 170803
  Show dependency treegraph
 
Reported: 2003-09-25 19:17 EDT by Ian Macdonald
Modified: 2007-04-18 12:57 EDT (History)
0 users

See Also:
Fixed In Version: vixie-cron-4.1
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2004-08-04 19:31:05 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Ian Macdonald 2003-09-25 19:17:45 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030701

Description of problem:
There are problems with cron not running jobs and/or not mailing the output to
the user.

If the program only has a little output, it is not mailed. In other
circumstances, the job does not run at all unless one attaches to the process
with strace.

Using nss_ldap seems to exacerbate these issues, but the problem is intermittent
and extremely hard to reproduce in the same way each time.

Version-Release number of selected component (if applicable):


How reproducible:
Sometimes

Steps to Reproduce:
1. define a cron job 'echo this is a test'
2.
3.
    

Actual Results:  output not mailed to user

Expected Results:  output should have been mailed

Additional info:

Here's a patch that fixes the issue:

diff -uNr vixie-cron-3.0.1.orig/do_command.c vixie-cron-3.0.1/do_command.c
--- vixie-cron-3.0.1.orig/do_command.c  2003-09-25 10:57:03.000000000 -0700
+++ vixie-cron-3.0.1/do_command.c       2003-09-25 10:57:37.000000000 -0700
@@ -161,7 +161,7 @@
 
        /* fork again, this time so we can exec the user's command.
         */
-       switch (vfork()) {
+       switch (fork()) {
        case -1:
                log_it("CRON",getpid(),"error","can't vfork");
                exit(ERROR_EXIT);
diff -uNr vixie-cron-3.0.1.orig/popen.c vixie-cron-3.0.1/popen.c
--- vixie-cron-3.0.1.orig/popen.c       2003-09-25 10:57:02.000000000 -0700
+++ vixie-cron-3.0.1/popen.c    2003-09-25 10:57:53.000000000 -0700
@@ -94,7 +94,7 @@
 #endif
 
        iop = NULL;
-       switch(pid = vfork()) {
+       switch(pid = fork()) {
        case -1:                        /* error */
                (void)close(pdes[0]);
                (void)close(pdes[1]);
Comment 1 Jason Vas Dias 2004-08-04 19:31:05 EDT
fixed in old vixie-cron-3.? and in latest vixie-cron-4.1-+.

Note You need to log in before you can comment on or make changes to this bug.