Classified Advertisements

Classified Advertisements (classads) are the lingua franca of HTCondor. They are used for describing jobs, workstations, and other resources. They are exchanged by HTCondor processes to schedule jobs. They are logged to files for statistical and debugging purposes. They are used to enquire about current state of the system.

A classad is a mapping from attribute names to expressions. In the simplest cases, the expressions are simple constants (integer, floating point, or string). A classad is thus a form of property list. Attribute expressions can also be more complicated. There is a protocol for evaluating an attribute expression of a classad vis a vis another ad. For example, the expression "other.size > 3" in one ad evaluates to true if the other ad has an attribute named size and the value of that attribute is (or evaluates to) an integer greater than three. Two classads match if each ad has an attribute requirements that evaluates to true in the context of the other ad. Classad matching is used by the HTCondor central manager to determine the compatibility of jobs and workstations where they may be run.

The classad library is available as a separate stand-alone package for use in applications other than HTCondor.

If you use the ClassAd library and have any questions or comments, we encourage you to subscribe to the HTCondor-users mailing list. This list is for discussion of ClassAds in addition to HTCondor. There is a web page for subscribing to the mailing list. The old mailing list classad-users has been retired, however the archives are still available.

Papers and Slides

ClassAd Distribution Downloads

C++ Implementation

Java Implementation

Sample Applications


This material is based in part upon work supported by the National Science Foundation under Grant No. 9972232
Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.