Changes for version 2.71_4770 - 2013-11-24
- Removed .pl extension from all new commands.
- Helios::Config->setParam(): fix so false values can be set.
- helios.pl: tweaks to database reconnect code.
- helios.pl: changes to command line option parsing so multiple jobtypes can be specified with multiple --jobtypes options.
- helios.pl: removed all use Error-based try {} catch {} blocks. This will allow future Helios versions to use exceptions based on Exception::Class rather than Error.
- Helios::TheSchwartz has been removed; Helios::TS has completely replaced it.
Changes for version 2.71_4460 - 2013-11-02
- Minor changes and fixes to new commands:
- helios_config_get.pl: fixed problem with not returning param values set in helios.ini.
- helios_config_set.pl: fixed problem with setting param values that evaluate to false.
- helios_config_unset.pl: changed output to make it more consistent with the other new commands.
- helios_job_status.pl, helios_job_info.pl: specifying --jobid no longer required; the first arg is assumed to be the jobid.
- helios_job_submit.pl: -v and -n now work in addition to --verbose and --no-validate.
- helios_service_status.pl: separated service version to its own line in output. Added '--epoch-time' option to report time in epoch seconds instead of localtime() format.
Changes for version 2.71_4350 - 2013-10-25
- NEW helios_service_status.pl - report service status.
- NEW helios_job_status.pl - report job exitstatus (if completed).
- NEW helios_job_info.pl - report job metainfo, args, and log msgs.
- helios_config_*.pl: added documentation.
- Helios::Config - fixed warning using getParam().
Changes for version 2.71_4250 - 2013-10-18
- Helios::Config:
- NEW set/get/unsetParam() methods to more easily work with individual config parameters in the HELIOS_PARAMS_TB table.
- NEW helios_config_*.pl commands to make Helios config params more accessible to shell scripts and other utilities.
- parseConfDb(): combined the 2 separate database queries into 1 to reduce database calls when config is updated.
- separated Helios config parameter documentation into Helios::Configuration POD.
- Helios::Service:
- Added JobLockInterval() functionality to control the amount of time jobs are locked from a Helios API. Previously, the only way to control the amount of time jobs were locked was to override TheSchwartz::Worker's grab_for() method.
- Changed hostname lookup handling to reduce the number of calls to Sys::Hostname::hostname().
- helios.pl:
- Changed cmd line option handling so --help and --version work again.
- Added startup message to report the dsn of the collective database helios.pl is connected to.
- Replaced most Error module-based try {} blocks with eval {}
- Updated POD with new cmd options and referenced Helios::Configuration.
- Helios::Job - replaced usage of Helios::TheSchwartz with the new Helios::TS class.
- Helios::JobType - added debug() accessor method.
- Makefile.PL: Added all helios_config_*.pl commands above and helios_jobtype_add.pl to EXE_FILES. Removed old LICENSE line.
Changes for version 2.71_4051 - 2013-10-04
- Added code for "virtual jobtypes" - jobtypes w/o a service class. Allows a service to handle jobs of multiple jobtypes without creating new service classes.
- NEW Helios::ObjectDriver class to improve driver init handling.
- NEW Helios::JobType class to represent jobtypes; there should no longer be a need to use TheSchwartz::FuncMap directly.
- NEW Helios::TS and Helios::TS::Job to:
- replace Helios::TheSchwartz as a full-featured TheSchwartz subclass.
- implement virtual jobtypes.
- fix [RT79690] by dumping Helios::TS::Job objects w/o arg() values before they are passed to the higher Helios layers.
- NEW helios_jobtype_add.pl to handle adding new jobtypes from the command line.
- helios.pl:
- now handles @ARGV completely differently to support virtual jobtype specification and add other options in future.
- uses Helios::TS instead of Helios::TheSchwartz
- Helios::Service:
- new, better constructor
- ton of NEW methods to support virtual jobtypes: set/getJobType() addAltJobType() set/getAltJobTypes() set/getAltJobtypeids() addAltJobtypeid() lookupAltJobtypeids() lookupJobtypeid()
- jobsWaiting(): rewritten to support multiple, "virtual" jobtypes
Changes for version 2.71_3860 - 2013-09-21
- Added PRIORITIZE_JOBS feature.
- Added WORKER_LAUNCH_PATTERN feature.
Documentation
CGI script to receive jobs for Helios via HTTP POST
Launch a daemon to service jobs in the Helios job processing system
get a config parameter's value from the Helios collective database
import a INI-style config file into the Helios database
set a config param's value in the Helios database
delete a config param's value from the Helios database
get detailed information about a job in a Helios collective
get a Helios job's exitstatus
Submit a job to the Helios job processing system from the cmd line
Add a jobtype to the Helios collective database
Clean old log and history entries from the Helios database
check the status of services running in a Helios collective
Helios configuration parameter reference
a tutorial for getting started with Helios
Modules
install all Helios related modules
a distributed job processing system
base class for Helios configuration system
a convenience class to import all Helios::Error exception classes
base exception class for Helios services
exception class for Helios indicating a configuration error occurred
exception class for Helios indicating a database error occurred
fatal exception class for Helios indicating a job failed but can be re-attempted
fatal exception class for Helios indicating a job failed and the error was so serious the job should not be reattempted.
exception class for Helios indicating a job's args are invalid
exception class for Helios indicating a jobtype error occurred
exception class for Helios indicating an error occurred in the logging subsystem
exception class for Helios indicating an object driver error occurred
exception class for Helios indicating a job was successful but it encountered errors during processing
base class for jobs in the Helios job processing system
class to represent Helios jobtypes
Base class for sending Helios logging information to external loggers
Helios::Logger subclass implementing Helios internal logging
base class for metajob burst services in Helios
class to return Helios::ObjectDriver::DBI objects pointing to the collective database
Data::ObjectDriver subclass for Helios
base class for services in the Helios job processing system
TheSchwartz subclass for Helios
TheSchwartz::Job subclass for Helios
Helios::Service subclass useful for testing
Provides
in lib/Helios/ConfigParam.pm
in lib/Helios/JobHistory.pm
in lib/Helios/LogEntry.pm
in lib/Helios/LogEntry/Levels.pm
Examples
- eg/MP3IndexerService-1.00/Changes
- eg/MP3IndexerService-1.00/LICENSE
- eg/MP3IndexerService-1.00/MANIFEST
- eg/MP3IndexerService-1.00/META.yml
- eg/MP3IndexerService-1.00/Makefile.PL
- eg/MP3IndexerService-1.00/README
- eg/MP3IndexerService-1.00/mp3submit4index.pl
- eg/MP3IndexerService-1.00/sql/config.sql
- eg/MP3IndexerService-1.00/sql/schema.sql
- eg/MP3IndexerService-1.00/t/MP3IndexerService.t