1

I have a document library which throws the following error when selecting a view that sorts based on the date modified:

This view cannot be displayed because it exceeds the list view threshold (10000 items) enforced by the administrator

This library does not have an indexed column and I cannot create one because of the treshold.

What I would try to do now is create a new document library with the same columns but create an index on the date modified column. Then I would like to move all documents from the old library to the new one. And then maybe create a view that limits the documents to perhaps modified in the last 3 months.

Now, my questions to you are:

  • Is this the correct approach to solve this problem? Move the documents to a new library with an indexed column?
  • What's the best way to go about this? With Powershell I presume, but that's not really my strong suit. Could anyone point me in the right direction?
  • When copying the documents, is it possible to copy the metadata as well? Created by, date created, modified by, date modified,...

Thanks in advance!


EDIT: SOLUTION

I was able to solve the problem based on the answer marked as solution. What I did was:

  1. Disable throttling on the document library (through Powershell on the SP server).

    $web = Get-SPWeb http://sharepoint.url
    $list = $web.Lists["Document library"]
    $list.EnableThrottling = $false
    $list.Update()
    
  2. Make an indexed column out of the "Modified" column.

  3. I then waited two days for the indexing to complete, no idea if it's necessary or not.
  4. I modified the view and added a filter on the "Modified" column.

Show items only when the following is true:

Show the items when column

Modified (Indexed)

is greater than or equal to

[Today]-90

  1. I then enbled throttling again on the document library.

This will show the modified documents of the last 3 months without showing the treshold error.

  • Disabling throttling is generally a very bad idea; the throttling exists to prevent SharePoint from using up too much memory on one user and crashing / causing all of those other wonderful issues that happens when SharePoint runs out of memory. – NotVonKaiser Mar 9 '16 at 19:23
1

I have faced almost same issue due to list threshold limit when my items exceeded the limit to 50K while limit was only 5K (as by default). You have two options here.

  1. Disable throttling for the library.
  2. Create an indexed column and then use that column in your custom view as a filtering column.

Creating index column may take some time based on data size. Once you create the indexed column you can try filtering in a day or two probably. Check if this can help you.

Regards,

  • +1, And perhaps enable the throttling again. – Nadeem Yousuf Feb 25 '15 at 13:52
2

Just wanted to add to this... BEWARE...

So the idea is sound.. Index the Modified date then for the view, only show N number of days that will return < 5000 items.

Modified (Indexed) >= [Today]-90

The problem is that the moment you add a Formula into your view's filter box, that view will no longer show up for Alerts Subscriptions.

Modified (Indexed) >= [Today]      --- This will show up in Alerts
Modified (Indexed) >= [Today]-90   --- This will NOT

Once again Microsoft..you are killing me here!

0

Here is a great work around if you do not have easy access to "Central Administration" and you have not already created indexed columns.

-You can attempt to create an index on an existing column, but it will more than likely error out.

**Create a item limit view based on the ID field(which is indexed). You can now access that view in "Content and Structure" and move some of the items to another list; to get your problem list under 5000.

-This is not a perfect solution because there is no logical order to a view based on the ID field, but it will at least get you moving again if you do not have access to the "Central Administration" panel.

0

Since everyone else has provided workarounds I figure I ought to supply a more MS-supported answer:

Get your list down to under 10,000 items.

You're right; SharePoint doesn't work particularly well with indexed columns on lists this large. That being said, is this a list where you absolutely need to have 10k or more items in it to be reviewed all at once? The fact that you're wanting to filter by the last 90 days alone tells me that you've probably got a lot of old data there that you can send to an archive library. So, I think you actually have a few alternatives here:

  • Fix that list! One option, albeit perhaps the one you don't want to hear, is to create a new list, index the fields you want to filter on, and then add all those list items to it. As long as the fields and all that are the same, you ought to be able to move stuff over a number of items at a time using the Content and Structure tool that's still somehow in there from 2007. Or you can have a developer write a Powershell script that does the same. In addition to time, you might also want to try this on a smaller scale just to make sure you're OK with the metadata you might lose by doing this.

  • Set up a workflow to automatically export items to a document library as they age or if certain business rules apply. If your administrator has given access to it, you can use Designer to create custom workflows that will do this for you. You may need to export the first batch on your own but this is technically OOB. And, once you get your list down to under 5,000 items, you can start to add indices and in turn add filters to them.

  • Find other ways to get rid of those extra items. I would never tell you to delete data, of course. But if that is an option...

  • Use a non-SP way of viewing all that data. Okay, I admit it, I'm a developer and this is how I think. I have a similar problem (although people aren't hitting the 10k item limit they do want to quickly search through a lot of list items and the original idea to display 1000 or more items on a page and Ctrl-F their way through them was a bad, bad fix) and the way I resolved it was to make a single page app using Angular and Breeze. There are a couple of courses on PluralSight that can get you started on this.

    I will say that this is not a beginner's fix, although it is technically something you can do OOB (by creating your framework and linking your index.html to a Content Editor Web Part) if you're familiar with the SharePoint web service API. You get around the 10,000 item limit here because the API will only feed you 100 results at a time (well, okay, I guess this means you aren't really getting around the 10k item limit).

  • Consider a more targeted or 3rd party solution. There are 3rd party solutions that provide filters like this, often based on the REST API. Or if you have a dev in-house, bring them in.

0

I will suggest a different approach - create content organizer to re-route those documents. Workflow free, hassle free.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.