Tuesday, May 29, 2012

SharePoint Solution Deployment Stuck at Deploying Status

While trying to upgrade a SharePoint 2010 solution using the following command, received the error message saying "A deployment or retraction is already underway for the solution blah, and only one deployment or retraction at a time is supported".

 update-spsolution -identity blah.wsp -literalpath "blah" -gacdeployment

 The status also shows "Deploying" at Central Administration / System Settings / Manage farm solutions under Farm Management section.

The fix: Go to Central Administration / Monitoring / Check job status under Timer Jobs, Under Running section, locate the entry for the solution deployment job, the job should be named as "Microsoft SharePoint Foundation Solution Deployment for %SolutionName.wsp%. Click on the job title, then click the Delete button to delete the job on the next page. Afterwards, you can try to deploy the solution again.

The old stsadm comand, for example, see below, does not work anymore.
stsadm -o canceldeployment -id "job guid"

The "job guid" can be retrieved by issuing the following command:
stsadm -o enumdeployments

Monday, May 14, 2012

SharePoint Configuration Database Too Big

Ever wondering why is the SharePoint configuration database so large?  The database is over 35 GB and its transaction log file grows up to 90 GB. There are potentially 2 issues.
  1. the log file is too big: the log file can be shrank easily by using Management Studio, for example. Setting the database to simple mode can help too, but evaluate the pros and cons before making the change.
  2. the database is still too big after shrinking the log file. After some research, I found out that there is a TimerJobHistory table in the configuration database and this table uses huge amount of space. There is a job "Delete jobs history" under Central Administration->Monitoring->Timer Jobs, which runs weekly by default, and that job is supposed to delete old entries from the timer job history table. In my situation, the table has entries more than one month old and default number of days to keep is 7, I believe. The timer job is enabled and there is no error messages. So what happened?
Long story short, the timer job runs weekly as expected, but it fails because during the execution, the transaction log runs out of space. To fix the problem, I need to reduce the amount of data being deleted by the timer job during each run, so I need to modify the daystokeephistory value of the timer job. However, there is no UI to modify the retention days, the only way is to use PowerShell. See below:
$test = Get-SPTimerJob | Where-Object {$_.name -eq "job-delete-job-history"}
Above would display the current value.You can set the proper value for daystokeephistory then use either Central Administration or Power Shell to kick off the timer job, see below.
$test.daystokeephistory = 25
After multiple runs, at the end I set the timer job schedule to daily and daystokeephistory to 2 days.

So far so good.

Tuesday, May 8, 2012

List form can't be edited by InfoPath if the list has managed metadata column

Many people may have known about this already.

The exact error message from InfoPath is: The following fields in the SharePoint list are not supported because of their data type and will not be available in InfoPath Designer

Friday, May 4, 2012

Provision the Web Analytics Service Application on Microsoft SharePoint Server 2010

Good information from Bill Baer's Blog:


Also usage reporting functionality is not available in SharePoint Designer 2010. SharePoint Designer 2007 has the reporting functionality.

After  Web Analytics Service Application is provisioned, users with proper permissions can go to Site Actions/Site Settings page to view usage reports. The reports are under Site Actions heading.