<commit_before>%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{\label{sec:History-7-7}Development Release Series 7.7}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

This is the development release series of Condor.
The details of each version are described below.


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection*{\label{sec:New-7-7-3}Version 7.7.3}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\noindent Release Notes:

\begin{itemize}

\item Condor version 7.7.3 not yet released.
%\item Condor version 7.7.3 released on Month Date, 2011.

\item
\emph{Condor now dynamically links with the ClassAds, Globus and VOMS
libraries on Mac OS X.}
A copy of these libraries is included with Condor.
\Ticket{2482}

\end{itemize}


\noindent New Features:

\begin{itemize}

\item In Condor version 7.7.2, multiple Condor installations led to the
possibility for some installations to use the wrong version of the ClassAds 
library.
This should no longer be an issue, 
as the binaries now use \Env{RUNPATH} instead of \Env{RPATH}, 
allowing use of the \Env{LD\_LIBRARY\_PATH} environment variable 
to set where to look for the shared libraries.
\Ticket{2539}

\item The Amazon SOAP interface is no longer present or supported in Condor.
The EC2 REST interface is favored and supported in Condor
using a \SubmitCmd{grid\_resource} of \SubmitCmd{ec2}.
\Ticket{2523}

\item The new \Condor{gather\_info} tool introduced in 
Condor version 7.5.6 has been updated and enhanced.
It collects data about a Condor installation, and, if desired, 
about a specific job. 
This information is useful to Condor developers to help 
debug problems in a pool or with a job.
\Ticket{1664}
\Ticket{2372}

\item The \Condor{userprio} tool supports two new command line options.
The \Opt{-grouporder} flag displays submitter entries 
for accounting groups at top of the list,
 in breadth-first order by group hierarchy.
The \Opt{-grouprollup} flag reports accounting statistics for groups 
as summed at a level within the group hierarchy.
\Ticket{1926}

\item The \Condor{collector} now avoids the performance problems caused
previously when clients initiated communication with the \Condor{collector},
but then delayed sending input.
\Ticket{2506}

\item When using versions of \Prog{glexec} that create a copy of the proxy 
for use by the job, 
Condor now ensures that this copy of the proxy is cleaned up
when the job is done.
\Ticket{2501}

\item The \Condor{startd} now logs a clear message, if it rejects a job
because no valid \Condor{starter} daemons were detected.
\Ticket{2470}

\item The new submit command \SubmitCmd{want\_graceful\_removal}
may be used to specify that a job being removed or put on hold should
be shut down gracefully, rather than being immediately hard-killed.
This allows the job to perform some final actions such as cleaning
up or saving state.  The usual policies governing the Preempting/Vacating
state apply in this case.  

This new submit command replaces a different mechanism that was added 
in Condor version 7.5.2 to achieve some of the same effects.  
The version 7.5.2 mechanism applied to vanilla jobs under Linux;
if the job set \SubmitCmd{remove\_kill\_sig} or \SubmitCmd{kill\_sig},
the hard-kill signal that Condor would normally send to end the job was
replaced with the signal specified by the user.  

With the new submit command, the version 7.5.2 mechanism is no longer used.
The soft-kill signal may still be customized using
\SubmitCmd{kill\_sig}, so a similar effect can be achieved by setting
\Expr{want\_graceful\_removal=True} and setting \SubmitCmd{kill\_sig}
to an alternative signal, if desired.  The new mechanism works on all
platforms and works for all universes in which the job is managed by
the \Condor{startd}; as such the new mechanism is not supported
in the grid, local, or scheduler universes.

In addition, the new submit command \SubmitCmd{job\_max\_vacate\_time}
replaces the \SubmitCmd{kill\_sig\_timeout} command.
\SubmitCmd{job\_max\_vacate\_time}
adjusts the time given to an evicted job for gracefully shutting down.
\Ticket{2536}

\item The \Condor{master} now logs a more informative error message
when it fails to start a daemon.
\Ticket{2580}

\item The \Condor{schedd} daemon now logs a more informative error message
when it rejects job ClassAd updates from the \Condor{shadow} due to
authorization problems.
\Ticket{2581}

\end{itemize}

\noindent Configuration Variable and ClassAd Attribute Additions and Changes:

\begin{itemize}

\item The new configuration variable \Macro{MachineMaxVacateTime} is
now used to express the maximum time in seconds that the machine is
willing to wait for a job to gracefully shut down.  
The default is 600 seconds (10 minutes).  
The boolean \MacroNI{KILL} expression was
previously used to terminate the graceful shutdown of jobs.  
It should normally be set to \Expr{False} now.  If desired, it may be
used to abort the graceful shutdown of the job earlier than
\MacroNI{MachineMaxVacateTime}.
\Ticket{2536}

\item The new configuration variable \Macro{NEGOTIATOR\_SLOT\_CONSTRAINT} 
defines an expression which constrains which ClassAds are fetched
by the \Condor{negotiator} from the \Condor{collector}
for the negotiation cycle. 
\Ticket{2277}

\item The new configuration variable 
\Macro{NEGOTIATOR\_SLOT\_POOLSIZE\_CONSTRAINT} 
replaces \Macro{GROUP\_DYNAMIC\_MACH\_CONSTRAINT}.
\MacroNI{GROUP\_DYNAMIC\_MACH\_CONSTRAINT} may still be used,
but a warning is written to the log,
identifying that the configuration needs to be updated to use the new name.
The pool size resulting from applying this constraint is used
to determine quotas for both dynamic quotas in hierarchical groups,
and when there are no groups.
\Ticket{2277}

\item The configuration variable \Macro{NEGOTIATOR\_STARTD\_CONSTRAINT\_REMOVE} 
was introduced in Condor version 7.7.1.
It has now been removed, as its functionality 
was made obsolete by \MacroNI{NEGOTIATOR\_SLOT\_CONSTRAINT}.
\Ticket{2277}

\item The configuration variables \Macro{IGNORE\_NFS\_LOCK\_ERRORS}
and \Macro{BIND\_ALL\_INTERFACES} no longer support the undocumented use of
'Y' or 'y' to mean \Expr{True}.

\end{itemize}

\noindent Bugs Fixed:

\begin{itemize}

\item When the \Condor{procd}'s named command pipe is removed, 
or when the inode of the pipe has been changed while the daemon is running, 
the \Condor{procd} will now exit.
Its previous behavior had the \Condor{procd} continue to execute 
in a useless mode of operation, unable to receive any communication.
\Ticket{2500}

\item Lines like ``ProcAPI sanity failure on pid 1317, age = -1901476270''
should no longer appear in the \Condor{master} daemon log on Mac OS X.
\Ticket{2594}

\item Added logic to the \Condor{negotiator} daemon's Accountant
initialization to ensure that table entries are always created for
accounting groups on startup and reconfig.
\Ticket{2509}

\item When \Condor{advertise} is used with the \Opt{-tcp} option, this
used to cause the following log message to appear in the \Condor{collector}
log:
\begin{verbatim}
DaemonCore: Can't receive command request from IP (perhaps a timeout?)
\end{verbatim}
\Ticket{2483}

\item \MacroNI{NETWORK\_INTERFACE} did not have any effect.  This bug
was introduced in 7.7.0.
\Ticket{2513}

\item \Prog{glexec} now also works when Condor is running as root.
\Ticket{2503}

\item \Condor{master} now successfully advertises itself in a personal
condor installation when the collector is configured to use port 0
and to operate through a shared port.<commit_msg>rewrite of version history entry ===GT=== #2594<commit_after>%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!
%%%      PLEASE RUN A SPELL CHECKER BEFORE COMMITTING YOUR CHANGES!

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{\label{sec:History-7-7}Development Release Series 7.7}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

This is the development release series of Condor.
The details of each version are described below.


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection*{\label{sec:New-7-7-3}Version 7.7.3}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\noindent Release Notes:

\begin{itemize}

\item Condor version 7.7.3 not yet released.
%\item Condor version 7.7.3 released on Month Date, 2011.

\item
\emph{Condor now dynamically links with the ClassAds, Globus and VOMS
libraries on Mac OS X.}
A copy of these libraries is included with Condor.
\Ticket{2482}

\end{itemize}


\noindent New Features:

\begin{itemize}

\item In Condor version 7.7.2, multiple Condor installations led to the
possibility for some installations to use the wrong version of the ClassAds 
library.
This should no longer be an issue, 
as the binaries now use \Env{RUNPATH} instead of \Env{RPATH}, 
allowing use of the \Env{LD\_LIBRARY\_PATH} environment variable 
to set where to look for the shared libraries.
\Ticket{2539}

\item The Amazon SOAP interface is no longer present or supported in Condor.
The EC2 REST interface is favored and supported in Condor
using a \SubmitCmd{grid\_resource} of \SubmitCmd{ec2}.
\Ticket{2523}

\item The new \Condor{gather\_info} tool introduced in 
Condor version 7.5.6 has been updated and enhanced.
It collects data about a Condor installation, and, if desired, 
about a specific job. 
This information is useful to Condor developers to help 
debug problems in a pool or with a job.
\Ticket{1664}
\Ticket{2372}

\item The \Condor{userprio} tool supports two new command line options.
The \Opt{-grouporder} flag displays submitter entries 
for accounting groups at top of the list,
 in breadth-first order by group hierarchy.
The \Opt{-grouprollup} flag reports accounting statistics for groups 
as summed at a level within the group hierarchy.
\Ticket{1926}

\item The \Condor{collector} now avoids the performance problems caused
previously when clients initiated communication with the \Condor{collector},
but then delayed sending input.
\Ticket{2506}

\item When using versions of \Prog{glexec} that create a copy of the proxy 
for use by the job, 
Condor now ensures that this copy of the proxy is cleaned up
when the job is done.
\Ticket{2501}

\item The \Condor{startd} now logs a clear message, if it rejects a job
because no valid \Condor{starter} daemons were detected.
\Ticket{2470}

\item The new submit command \SubmitCmd{want\_graceful\_removal}
may be used to specify that a job being removed or put on hold should
be shut down gracefully, rather than being immediately hard-killed.
This allows the job to perform some final actions such as cleaning
up or saving state.  The usual policies governing the Preempting/Vacating
state apply in this case.  

This new submit command replaces a different mechanism that was added 
in Condor version 7.5.2 to achieve some of the same effects.  
The version 7.5.2 mechanism applied to vanilla jobs under Linux;
if the job set \SubmitCmd{remove\_kill\_sig} or \SubmitCmd{kill\_sig},
the hard-kill signal that Condor would normally send to end the job was
replaced with the signal specified by the user.  

With the new submit command, the version 7.5.2 mechanism is no longer used.
The soft-kill signal may still be customized using
\SubmitCmd{kill\_sig}, so a similar effect can be achieved by setting
\Expr{want\_graceful\_removal=True} and setting \SubmitCmd{kill\_sig}
to an alternative signal, if desired.  The new mechanism works on all
platforms and works for all universes in which the job is managed by
the \Condor{startd}; as such the new mechanism is not supported
in the grid, local, or scheduler universes.

In addition, the new submit command \SubmitCmd{job\_max\_vacate\_time}
replaces the \SubmitCmd{kill\_sig\_timeout} command.
\SubmitCmd{job\_max\_vacate\_time}
adjusts the time given to an evicted job for gracefully shutting down.
\Ticket{2536}

\item The \Condor{master} now logs a more informative error message
when it fails to start a daemon.
\Ticket{2580}

\item The \Condor{schedd} daemon now logs a more informative error message
when it rejects job ClassAd updates from the \Condor{shadow} due to
authorization problems.
\Ticket{2581}

\end{itemize}

\noindent Configuration Variable and ClassAd Attribute Additions and Changes:

\begin{itemize}

\item The new configuration variable \Macro{MachineMaxVacateTime} is
now used to express the maximum time in seconds that the machine is
willing to wait for a job to gracefully shut down.  
The default is 600 seconds (10 minutes).  
The boolean \MacroNI{KILL} expression was
previously used to terminate the graceful shutdown of jobs.  
It should normally be set to \Expr{False} now.  If desired, it may be
used to abort the graceful shutdown of the job earlier than
\MacroNI{MachineMaxVacateTime}.
\Ticket{2536}

\item The new configuration variable \Macro{NEGOTIATOR\_SLOT\_CONSTRAINT} 
defines an expression which constrains which ClassAds are fetched
by the \Condor{negotiator} from the \Condor{collector}
for the negotiation cycle. 
\Ticket{2277}

\item The new configuration variable 
\Macro{NEGOTIATOR\_SLOT\_POOLSIZE\_CONSTRAINT} 
replaces \Macro{GROUP\_DYNAMIC\_MACH\_CONSTRAINT}.
\MacroNI{GROUP\_DYNAMIC\_MACH\_CONSTRAINT} may still be used,
but a warning is written to the log,
identifying that the configuration needs to be updated to use the new name.
The pool size resulting from applying this constraint is used
to determine quotas for both dynamic quotas in hierarchical groups,
and when there are no groups.
\Ticket{2277}

\item The configuration variable \Macro{NEGOTIATOR\_STARTD\_CONSTRAINT\_REMOVE} 
was introduced in Condor version 7.7.1.
It has now been removed, as its functionality 
was made obsolete by \MacroNI{NEGOTIATOR\_SLOT\_CONSTRAINT}.
\Ticket{2277}

\item The configuration variables \Macro{IGNORE\_NFS\_LOCK\_ERRORS}
and \Macro{BIND\_ALL\_INTERFACES} no longer support the undocumented use of
'Y' or 'y' to mean \Expr{True}.

\end{itemize}

\noindent Bugs Fixed:

\begin{itemize}

\item When the \Condor{procd}'s named command pipe is removed, 
or when the inode of the pipe has been changed while the daemon is running, 
the \Condor{procd} will now exit.
Its previous behavior had the \Condor{procd} continue to execute 
in a useless mode of operation, unable to receive any communication.
\Ticket{2500}

\item For Mac OS X platforms, 
improper detection of a non existent process led to lines such as
\begin{verbatim}
ProcAPI sanity failure on pid 1317, age = -1901476270
\end{verbatim}
appearing in the \Condor{master} daemon log.
This should no longer be the case.
\Ticket{2594}

\item Added logic to the \Condor{negotiator} daemon's Accountant
initialization to ensure that table entries are always created for
accounting groups on startup and reconfig.
\Ticket{2509}

\item When \Condor{advertise} is used with the \Opt{-tcp} option, this
used to cause the following log message to appear in the \Condor{collector}
log:
\begin{verbatim}
DaemonCore: Can't receive command request from IP (perhaps a timeout?)
\end{verbatim}
\Ticket{2483}

\item \MacroNI{NETWORK\_INTERFACE} did not have any effect.  This bug
was introduced in 7.7.0.
\Ticket{2513}

\item \Prog{glexec} now also works when Condor is running as root.
\Ticket{2503}

\item \Condor{master} now successfully advertises itself in a personal
condor installation when the collector is configured to use port 0
and to operate through a shared port.
{'fraction_non_alphanumeric': 0.0983088645233228, 'fraction_numerical': 0.018955584463854303, 'mean_word_length': 4.629009762900976, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5377301', 'n_tokens_mistral': 4961, 'n_tokens_neox': 4656, 'n_words': 2138}