++ed by:

2 non-PAUSE users.

Andrew Johnson
and 1 contributors

Changes for version 2.41

  • -Official Oracle support! DDL for a Helios Oracle schema is in 'sql/helios_schema_oracle.sql'. Please note: 1) you will need to adjust the Oracle schema to fit your environment (especially in regards to security and tablespaces) 2) while the Helios core supports Oracle, the Helios::Panoptes web admin interface still only supports MySQL (Panoptes support for Oracle is being worked on) -Helios::Service and Helios::Job: added deferredJob() and deferred() methods to defer processing of a job even though it was available in the job queue. These methods (for now) simply expose the declined() feature added in TheSchwartz 1.10; no Helios job history is recorded for a deferred job. Existing Helios users will need to upgrade their TheSchwartz library to 1.10 to use this feature. -Helios::Logger & Helios::Logger::Internal: moved driver creation to base Helios::Logger class so (if necessary) any loggers can get a Data::ObjectDriver to the collective database -Helios::Service & Helios::Logger: refactored getDriver() into initDriver() and getDriver() to eventually allow caching of Data::ObjectDriver objects. Anything needing an ObjectDriver to the collective database should just continue to call getDriver() and everything will work fine. -helios.pl: calls the service class prep() method on startup rather than getConfigFromIni() and getConfigFromDb() separately. This ensures proper setup of the loggers and Data::ObjectDriver db connection. -helios.pl: changed startup message so perl doesn't carp a warning if the service class doesn't have a $VERSION defined. -helios.pl: added registration_interval as a configuration parameter (previously it was hard-coded to 300 seconds in helios.pl). The "registration_interval" parameter is the amount of time (in secs) between service daemon "collective check-ins" (when a service daemon records its current status in the HELIOS_WORKER_REGISTRY_TB table). This table is used to create the Helios::Panoptes Collective Admin page, and is also useful for system monitoring and statistics. -helios.pl: set new defaults for zero_sleep_interval (10) and registration_interval (60). These new defaults should make Helios more responsive in low load situations and generally work better for more users out-of-the-box. (The old defaults geared Helios more for large volumes of long-running jobs on heavily loaded databases. The new defaults should work for a better range of small- to mid-sized loads.) If these new defaults create too much traffic for your database, you can set new larger values in your helios.ini file to decrease database traffic. -helios.pl: changes to prevent a worker from transmuting to a new service daemon (caused by database instability during transition between helios.pl, TheSchwartz->work(), and Helios::Service->work() -updated tests -submitJob.pl: fixed example in POD -Removed Bundle::Helios::RedHat. Ultimately, it didn't work any better (or worse) than using 'install Helios' command with the CPAN shell. Bundle::Helios::Generic seems to work well on other platforms, however. If you wish to use Helios with RHEL/CentOS 5.x or earlier, it is recommended you install a more recent version of Perl than 5.8.8 for ease of installation reasons.
Show More


  • Helios::Tutorial - a tutorial for getting started with Helios
  • helios.pl - Launch a daemon to service jobs in the Helios job processing system
  • helios_job_submit.pl - Submit a job to the Helios job processing system from the cmd line
  • helios_log_clean.pl - Clean old log and history entries from the Helios database
  • submitJob.pl - CGI script to receive jobs for Helios via HTTP POST