[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Auto email on commit - again
From: |
Peter Toft |
Subject: |
Auto email on commit - again |
Date: |
Wed, 25 Jan 2006 21:16:21 +0100 (CET) |
Some time ago I posted this email about my way of handling cvs commit
mails with the new file format, however today I had a 16 CPU server which
I accessed via SSH. Here the commit operation flies, but the file locking
gives problems; if I do "cvs -t commit ..." I see late in the commit
process (actually the very last steps)
....
S -> Lock_Cleanup()
S -> Simple_Lock_Cleanup()
-> close_connection_to_server ()
S -> Lock_Cleanup()
S -> Simple_Lock_Cleanup()
S -> server_cleanup()
One of these Simple_Lock_Cleanup() ends up halting the commit for ~15
seconds or more. The huge delay goes away if I do not add the send mail
stuff below to the loginfo file.
I have tried to call "mail" on the server directly - here it flies fast.
I have no clue why it happens with CVS 1.12.9.
The server runs RH AW3 with lots of memory and 16 non-loaded CPUs.
Any clue is badly needed (or alternative)
Best
Peter
---------- Forwarded message ----------
Date: Tue, 20 Dec 2005 00:15:20 +0100 (CET)
From: Peter Toft <address@hidden>
To: Mark E. Hamilton <address@hidden>
Cc: address@hidden, address@hidden
Subject: Auto email on commit
Early december there was another email about CVS and the log.pl contrib
script. Here is a follow-up + solution. Read on..
I have just updated to CVS 1.12.9.
This version is somewhat annoying, since it breaks the earlier
interface to the log.pl script (the <somepath>contrib/log script).
Earlier we had entries in the CVSROOT/loginfo file like this;
^MyModuleName <somepath>/contrib/log -V -m address@hidden -f
$CVSROOT/CVSROOT/commitlog %{s}
if I want mails to address@hidden when a commit is done to MyModuleName
But with CVS 1.12.9 I have to get rid of a deprecated log-format by
adding a line to CVSROOT/config
UseNewInfoFmtStrings=yes
and then commit "config" - see
http://ximbiot.com/cvs/manual/cvs-1.12.13/cvs_18.html#SEC189
(I cannot make the log.pl script work with CVS 1.12.9.
If someone can, let me know.)
With the new CVS-version I think the best and easiest replacement of
the log.pl script is to simply add a (long) one-liner per module to
CVSROOT/loginfo if you want to get cvs commit emails again
^MyModuleName ((echo "File %{p}/%{s}"; echo "Version update %{V} -> %{v}"; echo
"-----------------------------------"; cat) | mail -s "CVS commit: %{p}/%{s}
(v%{v})" address@hidden address@hidden)
if both address@hidden and address@hidden should get
emails at any commit to the CVS module MyModuleName.
(sorry about the long line; I have not yet figured out to put it into a
script - anyone who can help there?)
The result is generated emails such as
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Subject: CVS commit: MyModuleName/ChangeLog.txt (v1.162)
Body:
File MyModuleName/ChangeLog.txt
Version update 1.161 -> 1.162
-----------------------------------
Update of /opt/CVSROOT/MyModuleName
In directory
workstation13:/home/pto/MyModuleName
Modified Files:
ChangeLog.txt
Log Message:
I have just inserted some text and make commit of this
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Best
Peter Toft, Ph.D. address@hidden http://pto.linux.dk
LinuxForum 2006 - Wanna join? March 3. + 4. 2006.
http://www.linuxforum.dk - call for abstracts open now!
_______________________________________________
Info-cvs mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/info-cvs
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Auto email on commit - again,
Peter Toft <=