Showing posts with label SharePoint 2010. Show all posts
Showing posts with label SharePoint 2010. Show all posts

Monday, 7 January 2019

"An update conflict has occurred, and you must re-try this action" in SharePoint

Hi all,

I was facing this issue when trying to run manually a timer job from the Central Administration GUI.

According to Microsoft, I've clear the cache of SharePoint only from 1 server of my Farm.
I've 4 servers in that Farm, and I had to clear the cache on each servers in my Farm.

This article explain how to clear the cache config, but the path mentioned is specific for SharePoint 2007:
https://support.microsoft.com/en-us/help/939308/error-message-when-you-try-to-modify-or-to-delete-an-alternate-access

Use this article for the path for SharePoint 2010, 2013 and 2016:

https://gallery.technet.microsoft.com/office/SharePoint-2010-2013-21f55320

1- Stop SharePoint Timer Job Service
2- Navigate to : C:\ProgramData\Microsoft\SharePoint\Config
3- Locate the GUID folder that has the file "Cache.ini", and the .xml files
4- Create a Backup folder
     Move all *.xml files into the Backup folder
     Copy the Cache.ini into the backup folder
5- Edit the Cache.ini (from the GUID folder)
     Select ALL, type 1
     Save the Cache.ini file
6- Restart the SharePoint Timer Job, and check that the cache .xml files are created again

Proceed those steps on each servers in your Farm.


Voilà,

That’s all Folks !!!

Monday, 5 November 2018

SharePoint 2013 ::: Event ID 6482 ::: An update conflict has occured

Hi all,

Today, I'm facing with Event ID 6482, indicating that the job is failing due to an update conflict.



The resolution for this issue is to delete ALL .xml files where the mentioned file is located.


1. Finding the filename:
The first line give the file name of the .xml file to find. The name is located into the brackets at the end of the line:
service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance (a5744ce1-d592-42fc-a081-82188cbee126).

2. Stop the "SharePoint Timer Service"

3. Browse on each servers of your farm to this path:
C:\ProgramData\Microsoft\SharePoint\Config

4. Delete all .xml files present into the folder where .xml files are located (the other folder does contain  ".PERSISTEDFILES" : do not toutch them)

5. Edit the file "Cache.ini", and write down the number "1"

6. Save the "Cache.ini" file

7. Repeat steps 2 to 6 on each servers of your farm

8. Restart the "SharePoint Timer Service" on each servers of your farm.

9. Check that all cache files are automatically recreated.

10. Check that the file "Cache.ini" contains another number then "1"



==> Problem solved.




Voilà,


That’s all Folks !!

Monday, 9 November 2015

Why a Content DataBase is not cleaning the free space after Move-SPSite or Delete-SPSite?

Hi all,

I was faced to a full Database, and the quick-win solution, was to move some sites to another Database.

After making the list of the site collection present in the database, I found that the moved sites were no more present, as expexted.
But on the SQL side, the Database was still full…

I’ve asked our SQL Team to Shrink the Database, but nothing was changed.

Then, I’ve search why the space used by the moved sites was not cleared by the Timer Job.
Timer Job… The Gradual Site Delete timer job.

I’ve found why the Database didn’t change the free space after moving sites.
The timer job in SharePoint wasn’t correctly set.

After checking, the job supposed to be run automatically every day from 10PM to 6AM, but it wasn’t run.


Reason: start time is before end time. Seems that Microsoft logic is … special.

In the drop down list, the time for the timer job (same problem for all timer jobs in all SharePoint versions) start at 12AM and ends at 11PM.

The problem, is that by default, the Gradual Site Delete timer job is set as below: from 10PM to 6AM
This is quite logic for us (human), but I’ve the impression that the timer job doesn’t see the 6AM after 10PM in the drop-down list.
Also, I found that clicking on the “Run Now” button didn’t free the space in the concerned Database.


Thus, this default setting seems not allowing the Timer Job to run:




Solution: instead  of starting at 10PM, I’ve set it to start at 12AM
                                Now, no more red warning message.
                                And clicking on “Run Now” button is directly clearing the free space of all the                                      databases of my Web App.




So, I’ve had to check all my Gradual Site Delete timer job for each Web App I have.
Also, I found this problem to my SharePoint 2010 Farm and my brand new SharePoint 2013 Farms.


Hope this could help.



That’s all Folks


Wednesday, 26 August 2015

SharePoint 2013 returns to 'upgrade required' status

Hi all,

This post is related to the fact that after upgrading your SharePoint Farm with success, you are faced again with some servers in the "Upgrade Required" status.

As this issue was still coming and coming after each try to re-upgrade my farm, I decided to open a case at Microsoft support.

So, hereunder, you can find the resolution steps that will bring your smile back.


In summary, if one or several servers (my production farm is composed by 25 servers) are going back to the "Upgrade Required" after being marked as "No Action Required" during few days, check first if you don't have some sites that were not upgraded.
In this case, only 1 Site Collection wasn't correctly upgraded, and after a manual upgrade (via powershell cmdlets), all was solved.



Here is the case summary for your records:
==================
Title: SHP2013 returns to 'upgrade required' status
Severity: B
Status: Resolved and Closed

ACTION/RESULT:
Customer reported that after completing the upgrade to CU December 2014 (more than once) on the SharePoint 2013 farm - some the "Servers in this Farm" were still showing "Upgrade Required"

CAUSE/RESOLUTION:
In a previous upgrade attempt, there was the indication of a Site Collection that was not provisioned correctly:
07-24-2015 13:12:59.59 OWSTIMER (0x1CEC) 0x1F5C SharePoint Foundation Upgrade SPSiteWssSequence alsj5 WARNING SPWeb [https://mysite.sharepoint.me/sites/myname] [MyName, MyFirstName] is in a partially provisioned state. 021f1d9d-33b4-00ca-36cd-9ce05d7b2e40

Running (Get-SPSite https://mysite.sharepoint.me/sites/myname).NeedsUpgrade showed that this needs to be upgraded.
Customer ran the script:
$dir = Get-Location
$file = "$dir\farmSCUpgradeRequired.txt"

#Sites
Get-SPWebApplication -includecentraladministration | ForEach-Object {
               $webappurl = $_.Url
               $_.Sites | ForEach-Object {
                              "{0};{1};{2}" -f $webappurl, $_.URL, $_.NeedsUpgrade
               }
} | Out-File $file
This showed that the site collection mentioned before was in fact the only one needing an upgrade.

Customer run the powershell command:
  Upgrade-SPSite https://mysite.sharepoint.me/sites/myname -versionupgrade

The Site Collection was upgraded successfully.

After this, customer ran the "Product Version Job" timer job, and only 2 servers were still showing "Upgrade Required".
Running "stsadm -o localupgradestatus" showed only for these 2 servers, the following error message:
  <object>
    <name>Sharepoint_SA_UserProfile_Profile</name>
    <type>Microsoft.Office.Server.Administration.ProfileDatabase</type>
    <level>2</level>
    <status>Cannot Upgrade</status>
  </object>
  <object>
    <name>Sharepoint_SA_UserProfile_Social</name>
    <type>Microsoft.Office.Server.Administration.SocialDatabase</type>
    <level>2</level>
    <status>Cannot Upgrade</status>
  </object>

This means that the servers had something different than the rest of the servers, as the Databases were already up to date.
Running Get-SPDatabase | where {$_.Name -like "*UserProfile*"} | ft Name, NeedsUpgrade, NeedsUpgradeIncludeChildren, CanUpgrade also showed the information for these databases on the affected servers.

As this issue could only be on the servers, running the Configuration Wizard on both affected servers, made the message "Upgrade Required" go away.
After some days, the servers are still on a stable state.
=================



That's all folks

Monday, 11 May 2015

Search did not provide new items

Hi All,


Today, I’ll talk about the Search issue I had few weeks ago.

This started on our SharePoint 2010 production Farm, with complain from users that weren’t able to find they newly added documents in the Search box.
At the beginning, I was asking them to wait until next working day, as the Incremental Crawl was running.

Then, days passed, and more and more users were complaining again and again.

Checking the server was showing that the Incremental Crawl were running, but really slowly.
Every days, I was receiving tickets about the usage of the CPU of my crawl server that was stuck at 100%.

When reading over the web, I discovered that the Crawl engine was using all the CPU while crawling.
This was driving me to the wrong path, and letting my server going deeper in the “glue”

I started to pause all the Content Sources, except one, but nothing seems to unstruck the index crawl.

So, I started to think about this problem, and facing Incremental Crawl of more than 300 hours, I decided to call Microsoft for having their support.
First of all, they confirmed that the Crawl process is using 100% of the available CPU, even if you add more and more CPU.
But the advantage, is that the Crawling Time is reduced.

Then, Microsoft asked me to run the Diagnostic Tool on my Service Farm, and they first pointed out that my servers were not fitting to the minimum hardware requirements: 2CPU + 40Gb HDD.

Then, I made a CPU and HDD upgrade: 4CPU + 270Gb HDD.

I started a Full Crawl of each Content Sources, then gradually, I’ve implemented the “Crawl Schedules” for each Content Sources.


Since last week, all the Content Sources are correctly crawling, and nobody is complaining.


So, this is the point to check when you have a search issue:
 - Number of CPU
 - Size of your log disk
 - Crawl Schedule starting at different time
 - Content DataBases are attached/detached, a Full Crawl must be performed (information given by Microsoft)



Voilà,


Thanks all folks

Tuesday, 31 March 2015

Confirm Site use and Deletion

Hi All,

Today, I spend time to check the Retention Time of an unused mySite.
One of my client was complaining that he received a mail reminder that his mySite will be deleted as there is no activity.

Here is the way to check in SharePoint 2013 (same as SharePoint 2010):

 - Step 1:


 - Step 2:



Et Voilà !!!



That’s all folks


Search Issue: Internal Server Error Exception

HI All,

Today I found the solution of our error with the Search in our SharePoint 2010 Farm.


The problem is that each user making a search into his Site collection via the Search Box as bellow, received this error message:





After checking services, IIS, Central Administration, rebooting all servers from this Service Farm, I still had plenty of Error with the Event ID 8313:



The solution is to stop/start (from Central Administration) the “Search Query and Site Settings Service” from each affected servers.
In my case, I had 2 servers having the service activated.
Thus, I’ve stop/start the servcice on both servers.


The main reason of the Round Robin Service Load Balancer Event, is that when the service is activated on several servers, if the first server cannot fint the search URL, it’ll send the request to the second server.
The risk is to have a ping-pong play between those servers.

To figure out this issue, I’ve read lot of blogs, and I found a clear explanation in Henry Ong blog.
He save my day.


Also, according to Microsoft, I was asked to schedule a daily recycling of the Application Pool for the “Search Query and Site Settings Service” service.
By default, the recycling is not set in IIS.

First point: find the correct Application Pool.

In the event log, the Affected Endpoint was https://<servername>/61c52c151c..../....svc
In the IIS Manager, under “SharePoint Web Services” path, I found it and opened the “Advanced Settings” from the right pane.
Thus, I had the Application Pool to schedule the recycle.


Now, open the Application Pools path, and select the correct Application Pool.
In the right pane, under the “Edit Application Pool” section, select “Recycling”:
                I‘ve decided that this Application Pool will be recycled each day at 4:50 AM.



Don't forget to do this manipulation on all servers that will start the “Search Query and Site Settings Service” service.



Thanks all Folks


Thursday, 5 March 2015

Diagnose and Clean MissingWebPart and MissingAssembly issues

Hi all,

Today I found useful cmdlets to diagnose and clear those errors in the Content DB of my SharePoint 2010 Farm.


How to:

Step 1:
 - Test-SPContentDatabase -name <ContentDB_Name> -webapplication <Web App URL>

Step 2:
 - Select the WebPart Class GUID

Step 3:
 - Run this command with the related WebPart Class GUID:

Run-SQLQuery -SqlServer "SRV_DATABASE" -SqlDatabase "SharePoint_Content_sharepoint_db_name" -SqlQuery "SELECT * from AllDocs inner join AllWebParts on AllDocs.Id = AllWebParts.tp_PageUrlID where AllWebParts.tp_WebPartTypeID = '9812863c-ee62-dab6-57f5-79e9d4d36022'" | select Id, SiteId, DirName, LeafName, WebId, ListId, tp_ZoneID, tp_DisplayName | Format-List

Step 4:
 - The result will give the below info:

Id                            : a5da7b36-083f-4d07-b50b-8f1fc8d7bbe9
SiteId                      : 53061278-8b1d-4d6d-9dce-8568f90c5574
DirName                 : Sites/blahblasite/Sandbox/TestWSServiceLevelDashboard
LeafName               : default.aspx
WebId                     : 2ab691b1-0d74-4bf2-9524-c6b1d969cfac
ListId                      :
tp_ZoneID              : Left
tp_DisplayName     :


 - The URL to use is:                http://shareppoint.contoso.com/Sites/blahblahsite/Sandbox/TestWSServiceLevelDashboard/default.aspx?contents=1

 - So, here are the steps that I follow to remove the “ErrorWebPart”:
     1- select the Error rows
     2- click on “Close” to set them as “No” for the “Open on Page?” column
     3- select the same Error rows then Delete them



Step 5:
 - Execute again the “Test-SPContentDatabase” to check that all entries for the MissingWebPart are gone.


Thanks all folks

User credential issue in SharePoint Site

Hi all,

Today, I'll talk about an strange SharePoint issue, but it's not an issue from SharePoint.

It's a client side issue.


Facts:
 - User is Site Collection Administrator
 - User gets popup to enter his login/password (credentials) when accessing to his SharePoint Site
 - Login & Password are correct
 - Login to his SharePoint site from another computer is working (this is the first test I've asked the user to do and provide me his feedback)


Solution: Check the user credentials on your computer:

 - Click on Start
 - Control Panel
 - User Account
 - Credential Manager
 - Remove from Vault all references to SharePoint sites


Possible reason:
 As company policy, we must change our password several times per year.
 I bet that Windows kept (for this user) his old password in cache, thus replacing automatically his credentials by the one stored in the Credential Manager.



That's all folks

How to : Add new file type in SharePoint 2010

Hi all,

Today’s task is to add a new managed file type.
The file type is .dmmx from Dropmind.

To achieve this request, I’m following the blog page of Romain K.


Step 1 : Assign an icon to the document in SharePoint

  1. Find a png image of the icon of 16 x 16 pixel with transparency : 
  2. Copy this .png file to your Hive14 folder : ..\14\Template\Images\dropmind.png
  3. Register the picture in the ..14\Template\xml\DOCICON.XML file
        In the section <ByExtension>, add:
                <Mapping Key="dmmx" Value="dropmind.png" />

  4. Save the file and test the upload of a .dmmx file:



Step 2 : Declare document mime type as “downloadable” in IIS

  1. Open IIS Console, and browse to your Web Application


  2. Double click on the “Mime Types” menu of the selected Web Application (because I only allow this type of files on a specific Web App)



  3. In the “Action Pane”, top right of the IIS Console, click on the “Add…” button
  4. Declare the custome Mime Type:



  5. Via PowerShell, let’s declare the Mime Type as “Downloadable”:

          $web = Get-SpWebApplication -Identity <WebApplication>
          $web.AllowedInlineDownloadedMimeTypes.Add("application/vnd.dropmind")
          $web.Update()


  6. Now, I’m able to download the file from my SharePoint Site:




Thank's all folks


Tuesday, 28 January 2014

SharePoint 2010 : The search function does not seem to work in some cases.

Hi all,

Today, I decided to figure out with a recurrent problem with the Search engine.
Search engine, is the standard version of SharePoint 2010 (not the enterprise version).

And, customers are always complaining about it, saying that it’s not always working.
After checking, testing and log-reading, the only visible thing is : search is working O_°

So, today, I made long tests and reproduce the problem, and give a credible explanation to my customer.

The problem is that the customer is trying to search as in Google, with part of the name.
What is wrong?
It should give back some results, but there is only the “no results found” page sent back to him.


So, I discover that the search engine will only search for the exact word in the path of the file, but it’ll give a result only if the keyword is not part of a word in the file name.

In my example, the customer is trying to have results for “VE11”.
There is no word “VE11” in the library.
But there is “VE 11” in the library, and the search is using them as 2 keywords: “VE” & “11”, and search for each of them.



Input from my customer:
Keyword(s) : SharePoint 2010 : Contoso Internal
Make your selection : Probleem
Describe : The search function does not seem to work in some cases.
Een voorbeeld uit de library “CCJ requests invoiced” op batch datum 11/12/2013:
Example: If we search on “VE 11” as part of a file name from the "CCJ requests invoiced" library, we get no result. If we search on another part of that same file name e.g. “345340” we do find a result. Idem for a search on “TU60” without result, whereas “345225” from the same name, does give a result.
Attachment : Ja

My research and conclusion:
Checked search.
Result found with all given examples.
Test with: "VE 11" and "345340"
VE 11 => several results
               

345340 => 1 result
               

VE11 => no results

VE11L3005493 => 1 result : VE11L3005493 13 ccj 345340.msg

Try to search with this word “ve11l3005493”, starting with first letter, then adding eachletter one by one.
You’ll find out how the search engine of SharePoint 2010 is working.
The search is indexing complete part of the names of the file name, not part of the different names making the filemane.
The matching result is always written in bold.
This is the reason why there is no result for "VE11", but you gor result for "345340", and also results for "VE 11" (as "VE" and "11" are indexed by the SharePoint search engine.



Then, I decided to make a last test : writing the keyword between asterisk  è *VE11*
Et voilà.







That’s all Folks


Monday, 27 January 2014

MissingWebPart Error in SharePoint 2010

Hi all,

Today I found useful cmdlets to diagnose and clear those errors in the Content DB of my SharePoint 2010 Farm.

How to proceed:

Step 1: Inspect the DB
-          Test-SPContentDatabase -name <ContentDB_Name> -webapplication <Web App URL>

Step 2:
-          Select the WebPart Class GUID

Step 3:
           -     Create the SQL Function and execute it into PowerShell:

function Run-SQLQuery ($SqlServer, $SqlDatabase, $SqlQuery)
{
    $SqlConnection = New-Object System.Data.SqlClient.SqlConnection
    $SqlConnection.ConnectionString = "Server =" + $SqlServer + "; Database =" + $SqlDatabase + "; Integrated Security = True"
    $SqlCmd = New-Object System.Data.SqlClient.SqlCommand
    $SqlCmd.CommandText = $SqlQuery
    $SqlCmd.Connection = $SqlConnection
    $SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
    $SqlAdapter.SelectCommand = $SqlCmd
    $DataSet = New-Object System.Data.DataSet
    $SqlAdapter.Fill($DataSet)
    $SqlConnection.Close()
    $DataSet.Tables[0]
}

-          Run this command with the related WebPart Class GUID:

Run-SQLQuery -SqlServer "SRV_DATABASE" -SqlDatabase "SharePoint_Content_sharepointWorkgroup17" -SqlQuery "SELECT * from AllDocs inner join AllWebParts on AllDocs.Id = AllWebParts.tp_PageUrlID where AllWebParts.tp_WebPartTypeID = '9812863c-ee62-dab6-57f5-79e9d4d36022'" | select Id, SiteId, DirName, LeafName, WebId, ListId, tp_ZoneID, tp_DisplayName | Format-List


Step 4:
-          The result will give the below info, with the URL where the Missing Web Part is located:

Id                         : a5da7b36-083f-4d07-b50b-8f1fc8d7bbe9
SiteId                   : 53061278-8b1d-4d6d-9dce-8568f90c5574
DirName              : Sites/WW12000012/Sandbox/TestWSServiceLevelDashboard
LeafName            : default.aspx
WebId                 : 2ab691b1-0d74-4bf2-9524-c6b1d969cfac
ListId                   :
tp_ZoneID           : Left
tp_DisplayName  :



                  Adding at the end of the URL "?contents=1" will let SharePoint to show the "Web Part Page"


-          So, here are the steps that I follow to remove the “ErrorWebPart”:

1- select the Error rows
2- click on “Close” to set them as “No” for the “Open on Page?” column
3- select the same Error rows then Delete them



Step 5:
-          Execute again the “Test-SPContentDatabase” to check that all entries for the MissingWebPart are gone.




That's all folks




How to replace an existing URL located in the Top Navigation Bar

Hi All,

Today's request is to replace the Hyperlink in the navigator bar, as the referenced site URL has changed.




And last but not least, the request is to change this hyperlink to all sites inside the Web App: more than 1800 Site Collection.


This is the used Code:

#----------------------------------------------------------------------
#Below the code to update the topnavigationbar
#  for all Site Collection of the mentioned Web Application .
# Author : Marc Mathot
# Date: November 2013
#----------------------------------------------------------------------
$Webs = Get-SPSite -WebApplication "http://SharePoint.Contoso.com"  -limit ALL | Get-SPWeb -limit all

Foreach($Web in $Webs)
{
$TN = $Web.Navigation.TopNavigationBar | Where-Object {$_.Title -eq "Landing Page & Wiki"}
if ($TN.url -like "http://SharePoint.Contoso.com*")
{
   write-host "Updating $($Web.url)"
  “Updating $($Web.url), $($TN.Url)” | out-file D:\temp\LandingPageUpdate.csv   -append
    $TN.Url = "http://NewSharePoint.Contoso.com/Pages/LandingPageWikiDefault.aspx"
    $TN.update()
}
}
#----------------------------------------------------------------------

Also, in parallel, I had to modify the template used to create the new sites into this Web App.
Doing this will avoid having to run this script periodically to correct the changes.




That's all folks

Thursday, 28 November 2013

PowerShell cmdlets for SharePoint ::: Check DB that must be upgraded

Hi all,

Today, I’ll write down the PowerShell cmdlets used to diagnostic and solve the error “Database is in compatibility range and upgrade is recommended”.

The reason of this error is simple: I ran the SharePoint Feb 2013 Cumulative Update on my production Farm, and I got errors.
Thus, some DB’s are upgraded, other are not.

Now, I want to list them, and check in my test environment if I can upgrade each DB one by one without having my entire Farm down.
If my farm is down during the process, I must prepare a technical activity and work on it during the night.

I found a post from academicjargon giving the cmdlets to use. 

List DB that need to be upgraded:
Get-SPDatabase | ?{$_.NeedsUpgrade –eq $true} | Select Name

List DB that need to be upgraded and upgrade them:
Get-SPContentDatabase | ?{$_.NeedsUpgrade –eq $true} | Upgrade-SPContentDatabase

And this cmdlet if you want to upgrade one specific content DB:
                Get-SPContentDatabase –Identity SP2010_MySiteContentDB | Upgrade-SPContentDatabase





Job’s done.

Thursday, 1 August 2013

Error 404 with Calendar Overlay across 2 Web Applications (part 2)

Hi all,

This is the reply that I’ve received this morning from our Vendor concerning the Calendar Overlay issues between multiple Web Applications: “it’s by design”.
So, no fix can be expected for this at the moment.

Therefore, I recommend educating the end user to open the item in the correct Web Application when needed.


You can find hereunder the complete explanation:


--------------------------------------------------------------- 
Hello Marc

As I also could repro the issue, MSFT did further research and found that this behavior is ‘by design’.
The issue has been addressed by the product group earlier and this was their answer :


It turns out it is by design:
=====================

We have conducted a thorough investigation into this matter and have determined the issue is Design Change Request in a feature area of substantial complexity. This complexity precludes making changes in this area outside of a major release.

The SharePoint calendar aggregation feature was designed to aggregate calendars within a single web application.
The calendar can aggregate across alternate access mappings, but not across apps. The alternate access mapping support did, however, make it appear that calendars could be aggregated across multiple web apps, but that is not a supported scenario. Adding support for cross web application calendar aggregation would involve significant feature work and as such, is not possible in a QFE.

Microsoft carefully reviews all Hotfix requests, as each code change must maintain or improve both quality and stability of the product.
In this instance, the risks to product quality and potential for destabilization are too high to permit changes in this area outside of a major release.

We thank you for bringing this issue to our attention and continuing to work with us on improving our products for customers worldwide.


The response is actually coming from the product group and they have no ETA on this nor if it will be fixed or not in future releases.
--------------------------------------------------------------- 



Voilà.