Hooks allow to trigger functions calls on specific events.
They can be specified via the ClusterFunctions and are triggered on the following events:
pre.syncfunction(reg, fns, ...): Run before synchronizing the registry on the master. fn is the character vector of paths to the update files.
post.syncfunction(reg, updates, ...): Run after synchronizing the registry on the master. updates is the data.table of processed updates.
pre.submit.jobfunction(reg, ...): Run before a job is successfully submitted to the scheduler on the master.
post.submit.jobfunction(reg, ...): Run after a job is successfully submitted to the scheduler on the master.
pre.submitfunction(reg, ...): Run before any job is submitted to the scheduler.
post.submitfunction(reg, ...): Run after a jobs are submitted to the schedule.
pre.do.collectionfunction(reg, reader, ...): Run before starting the job collection on the slave.
reader is an internal cache object.
post.do.collectionfunction(reg, updates, reader, ...): Run after all jobs in the chunk are terminated on the slave.
updates is a data.table of updates which will be merged with the Registry by the master.
reader is an internal cache object.
pre.killfunction(reg, ids, ...): Run before any job is killed.
post.killfunction(reg, ids, ...): Run after jobs are killed. ids is the return value of killJobs.
runHook(obj, hook, ...)Return value of the called function, or NULL if there is no hook
with the specified ID.
[Registry | JobCollection]
Registry which contains the ClusterFunctions with element “hooks”
or a JobCollection which holds the subset of functions which are executed
remotely.
[character(1)]
ID of the hook as string.
[ANY]
Additional arguments passed to the function referenced by hook.
See description.