I recently configured a SharePoint 2013 Standard environment for a customer who required RBS for a video streaming service they wanted to build in SharePoint and I came across the following errors.
This is an array of errors I got depending on the site template (2010 vs. 2013) or what service I tried to write with, such as using Windows Explorer or using the Upload Document web interface.
The architecture of this SharePoint environment was quite simple as you can see below.
- SharePoint 2013 Standard
- SQL Server 2012 Standard
- RBS (FileStream)
All of this lives on the same physical server.
After having configured the SharePoint 2013 content database to use RBS as prescribed in the very useful instructions HERE, the end user gets the above error messages. Most often, the message states something similar to the below message.
Sorry, something went wrong
The URL ‘Shared Documents/filename.docx’ is invalid. It may refer to a nonexistent file or folder, or refer to a valid file or folder that is not within the current Web.
You will find later, that this error is not very helpful.
No new documents can be uploaded or created, and existing documents cannot be edited or removed.
I spent and inordinate amount of time troubleshooting this issue. Google searches of the error turned up little useful information. The most common articles I found typically were related to folks that could write small files under 1MB but anything larger wouldn’t write. That wasn’t helpful as I couldn’t write anything.
Checking the BLOB file location and it appeared that I had RBS setup right as the folder was created.
It turns out the issue was a permissions issue (as I had expected). It was a SQL permissions issue with the Web Applications service account.
I found that when I added the service account to the db_owner role on the content database, all of a sudden I could write to the site with new files, modify existing files and even delete files. Even the RBS portion was working just fine writing to the BLOB store.
Long story short, here are the instructions to manually add your service account for the web application to the db_owner role on the content database.
- Open SQL Server Management Studio
- Expand the Database folder
- Expand the specific content database you’ve configured for RBS
- Expand the Security folder
- Expand the Roles folder
- Double click db_owner (see below)
- In the Role Members section click the Add button (see below)
- Select the Web Application Service Account and click OK
- Click OK until you have returned to the screen from step 6 above
- You should now be able to write to your RBS enabled Content Database
I searched the web for quite some time and found no articles that was experiencing this issue so perhaps it was just a fluke. At first, I thought it was because I pre-created my content databases, but I did try letting SharePoint create the content database through the Add Content Database menu in Central Administration but I had the same issue.
I hope if you are experiencing this issue you find this article and it helps quicker than it took me to find the solution.