Grounding.co.za

Technology information for IT specialists
Welcome to Grounding.co.za Sign in | Join | Help
in Search

Neil's IW Space

Information Worker Blog's by Neil van Wyngaard

Controlling timer jobs in Sharepoint

One of the most frustrating things in Sharepoint for developers or even administrators, is implementing a new change and then nothing seems to happen. This is caused by the fact that Sharepoint implements almost all changes as jobs that run behind the scenes.

The only way to speed things up is to firstly understand what jobs are available and then finding a way to change the schedule or execute the job immediately. Unfortunately there is no way to to this in the admin console by default and therefore you will have to use the command line tool "stsadm" to do his. 

In this blog I will first outline the default jobs that exist, show where you can find this information using the "Sharepoint Admin Console" and then run a command to change the job schedule.

Default timer jobs

Default timer jobs for Windows SharePoint Services 3.0

The following table lists the default timer jobs created for Windows SharePoint Services 3.0.

 

Timer job title Schedule type
CEIP Data Collection Daily
Change Log Daily
Database Statistics Weekly
Dead Site Delete Daily
Disk Quota Warning Daily
Immediate Alerts Minutes
Recycle Bin Daily
Usage Analysis Daily
Workflow Minutes
Workflow Auto Cleanup Daily
Workflow Failover Minutes

Default timer jobs for Office SharePoint Server 2007

The following table lists the default timer jobs created for Microsoft Office SharePoint Server 2007.

 

Timer job title Schedule type
Application Server Administration Service Timer Job Minutes
Application Server Timer Job Minutes
Bulk Workflow Task Processing Daily
CEIP Data Collection Daily
Change Log Daily
Child Farm Content Source Discovery Minutes
Database Statistics Weekly
Dead Site Delete Daily
Disk Quota Warning Daily
Document Conversions Minutes
Expiration Policy Daily
Hold Processing and Reporting Daily
Immediate Alerts Minutes
Indexing Schedule Manager on SQL Server Minutes
Information Management Policy Daily
Licensing Synchronizer Job Hourly
My Site Cleanup Job Hourly
Office SharePoint Server CEIP Data Collection Daily
Office SharePoint Usage Analytics Log Import Daily
Office SharePoint Usage Analytics Processing Minutes
Profile Synchronization Hourly
Quick Profile Synchronization Minutes
Records Center Processing Daily
Recycle Bin Daily
Scheduled Approval Minutes
Scheduled Page Review Daily
Scheduled Unpublish Minutes
Search and Process Daily
Shared Services Provider Synchronizing Job Minutes
Shared Services Timer Job Minutes
SharePoint Services Search Refresh Minutes
SharePoint Worker Process Group Update One-Time
SKU Type Synchronization Job Hourly
Synchronization Scheduler Minutes
Usage Analysis Daily
Variations Propagate Page Job Definition Minutes
Variations Propagate Site Job Definition Minutes
Windows SharePoint Services Watson Policy Update One-Time
Workflow Minutes
Workflow Auto Cleanup Daily
Workflow Failover Minutes

Timer jobs for Office SharePoint Server 2007 with Project Server 2007

The following table lists the timer jobs that are available for Office SharePoint Server 2007 only, if Microsoft Office Project Server 2007 is installed in the farm.

 

Timer job title Schedule type
ProjectPSISharedApplicationTimerJob Minutes

ServerScheduledTimerJob
Subtypes:

  • Notifications   Timer job to send scheduled reminders
  • Cubeadmin   Timer job for building cubes
  • Admin   Time job for AdSync (ERP and Group sync)
  • Apply Resource Capacity TimeRange Job
  • Admin   Event Configuration TimerJob
  • Admin   Scheduled Archive/Backup Job
Minutes
ProjectServiceCredentialUpdateTimerJob Minutes
ProjectServiceCheckerTimerJob Minutes

Shared Services Provider timer jobs

Shared Services Provider (SSP) timer jobs are timer jobs that are created by default whenever an SSP is created. By default, SSP timer jobs are disabled, and they have to be enabled. These timer jobs are scheduled to run daily, weekly, or at any particular time.

Default SSP timer jobs

The following table contains the default timer jobs for any SSP created.

 

Timer job title Description
User Profile Full Import Job This timer job imports all data in user profiles.
User Profile Incremental Import Job This timer job imports only the user profiles that are added since the last import.
User Profile Change Job This timer job changes the user profile. User rights can be migrated from one user to another user. This timer job is used when a user needs to be migrated, but the previous user profile remains in the Active Directory directory service.
User Profile Change Cleanup Job This timer job is also used to migrate user rights from one user to another user, but this timer job migrates the user rights and cleans up that user from Active Directory. This is mainly used when the name of a user is changed in Active Directory. The older user name is replaced by new user name and the older one is removed from Active Directory.
Audience Compilation Job This timer job checks property values in user profile and membership in distribution lists, security groups, and reporting structures to see whether they match the audience rule created. Users that match the audience rules for an audience are included in that audience and the received content is targeted to that audience. A compilation schedule can be set.
Distribution List Import Job This timer job is used to import the distribution list, so that it can be used among different users.

SSP timer jobs for Office SharePoint Server 2007 with Project Server 2007

The following table lists the SSP timer jobs for Office SharePoint Server 2007 only, if Office Project Server 2007 is installed in the farm.

 

Timer job title Description
PWASSPSubmitSiteCreationTimerJob This timer job is a one-time timer job used to submit ProjectPSISharedApplicationTimerJob, which is used for provisioning PWA instances, and MUI provisioning.
PWASSPSubmitServerScheduledTimerJob This timer job is a one-time timer job to submit ServerScheduledTimerJob, which is used by business objects to schedule a task.

 

Viewing the Jobs using the admin Console

All the above mentioned jobs can be viewed using the "Admin web site for Sharepoint". Open up the site and navigate to the operations tab.

Global Config

On this tab you will find a section called "Global Configuration". There are two options here relating to jobs. The first one is called "Job Definitions" to show you a list of the jobs used by Sharepoint.

Timer Job Definitions

The second option is used to view the "Status" of each of these jobs.

Timer Job Status

Unfortunately none of these two screens allow you to change anything significant about the jobs except the description. You can also disable the job using this screen. The only way to change anything as far as scheduling goes is to use the command line.

Edit Timer Job

You can also view all the jobs from the command line by enumerating through the collection:

stsadm -o enumssptimerjobs -title "sspname"

Command Line

Changing the Job Schedules

The "stsadm" Administrators command-line application can be used to control certain Timed Jobs functionality. Unfortunately, there are no default commands to install or start/stop Timed Jobs, but there is a command to run all Jobs immediately and commands to reschedule a number of Jobs.

stsadm -o execadmsvcjobs 

When you schedule a timed job, you schedule the beginning time for the job. For example, you can schedule a job to be run daily, beginning between 3:00 AM and 5:00 AM. You always schedule jobs to begin within a time range, rather than at a specific time. This allows the SharePoint Timer service to be run at a random time in that range, so that not every server in a server farm is running the scheduled job at the same time. For example, if you set usage analysis processing to be done during the range 1:00 AM to 2:00 AM, then each front-end Web server starts processing usage analysis sometime between 3:00 and 5:00 AM.

There are also SharePoint components that use a Timed Job and can be controlled using the command-line tool. For example, the commands "setpolicyschedule", "setcontentdeploymentjobschedule", and "setsitedirectoryscanschedule" are components that support the Timed Job infrastructure. Each of the commands accepts a "-schedule" parameter (named "recurrence string" or "schedule" in the help function of stsadm) that is a free string of the form:

"[Time frame] [Interval] between [value] and [value]"

For example:

"every 10 minutes between 0 and 59"
"hourly between 0 and 59"
"daily at 21:00:00"
"weekly between Mon 02:00 and Fri 21:00:00"
"yearly at Dec 31 22:00:00"

The syntax looks like this:

stsadm -o setcontentdeploymentjobschedule -schedule "daily at 21:00:00"

Referenced Blogs:

http://technet.microsoft.com/en-us/library/cc678870(TechNet.10).aspx

http://www.codeguru.com/cpp/misc/misc/microsoftofficeoutlook/print.php/c14133

Related Blogs:

Overview of Shared Service Providers in Sharepoint

Installation Procedure for MOSS

Comments

 

Chris Sammut said:

Hi,

Would it be possible to send alerts when an overdue task occurred using a timer job?

Thanks

Chris

August 4, 2008 11:19 PM
 

Neil said:

Hi Chris.

To answer your question, yes, but you will most likely have to write a custom timer job for sharepoint. Here is a good article that tells you how.

www.andrewconnell.com/.../CreatingCustomSharePointTimerJobs.aspx

In saying this, I must admit that I would not solve this particular problem in this fashion. I think a better way would be to write a workflow and attach it to the task list. You should be able to do this either in SPD or VS 2008.

August 7, 2008 8:06 AM

About Neil

Neil van Wyngaard is a MCSE, MCSD, MCDBA, MCT, MCTS, MCITP, MCBMSS. Neil's core industry focus is CRM, ERP, EPM and ECM implementations in the enterprise environment. Core technology focus is based on SQL Server, Visual Studio, WSS, MOSS and OCS
Add to Technorati Favorites
Powered by Community Server (Commercial Edition), by Telligent Systems
Afrigator