10

My document id service does not run on some libraries. I've tried manually triggering it by running Document ID enable/disable job then Document ID assignment job. The Document ID field is always blank.

Any suggestions for debugging this issue? I've taken the suggestions listed here: Document IDs on existing Lists with inherited Content Types not showing

Not sure what may be pertinent but I have a custom solution with Content Types and List Definitions.

I don't have enough points to make a comment on the question above, or I would've asked the author if he'd found an answer instead of creating another question.

4
  • did you enable DocumentId on a site which had already content? If so, how large is your site (# of subsites, # of lists, # of document libraries)? May 31, 2012 at 18:22
  • The DocumentId was originally activated before users began adding content. When I activated/deactivated it for this fix, users were already using the system. The site is somewhere around 45 subsites, with an average of 10 lists/libraries on a subsite.
    – rboone
    May 31, 2012 at 18:59
  • If you find the answer, please don't edit your question but answer to your question. This will allow you to mark the question as answered.
    – Steve B
    Jul 2, 2012 at 11:24
  • Ok. I wasn't sure about the etiquette for answering your own question. I will add it as the answer and remove it from the question.
    – rboone
    Jul 2, 2012 at 20:45

5 Answers 5

7

Enabling document id on a hierarchy of sites is not as straight forward as one should think.

I have digged pretty deep into this one more than one occasion (might collect it to a blog post later), and it all boils down to the SPWorkItems that the timer job uses to enable document id on the sites/subsites and the timer job that sets the document id on each document.

One of the things that the work items look for, is how large the site collection is. A site that has more than one subsite, more than 20 lists (stupid since docid doesnt even support lists) and 40 document libraries (might be the other way around, i forget) is considered "a large site". If a site is large the work item is delayed for 30 seconds (which is also kind of weird, since that only would postpone any impact on site performance, and because the timer jobs that pick up the work items only run once a day anyhow!).

So basically since the timer job runs once a day, it can literally take weeks for a document id to be fully propagated.

There are several approaches here, but a simple one is to set the document id timer jobs (Document Id Assignment job and Document Id enable/disable job) schedule to something low, like 5 minutes or even less, and then trigger a document id enabling by going to _layouts/DocIdSettings.aspx and reset the document id prefix. This will trigger a chain of work items. This will take time even though you have set timer jobs to run frequently, due to the +30 minutes delay on "large sites" (there are ways to set the date directly in the database, but since that is unsupported I will not dig further into that here).

Then wait.... and wait... and wait even longer. I enabled Document Id for 3 site collections where one had approximately 50 sites and 300 documents. This took 3 full days with 5 minute interval on timer jobs (and me occasionally setting the work item to "now" instead of +30 minutes).

Note: DONT try and play around with some of the DocumentId methods in the API that are public but named InternalXXX. Calling these will render your site collection unusable for Document Id's as some of the docid properties that are written on SPWeb property bags will get out of sync. Trust me on this, I tried and messed up an entire test site ;-)

6

Activating/Deactivating the feature on the root site worked for me:

Site Actions > Site Settings > Site Collection Administration > Site collection Features > Document ID Service

5

There are a couple of things you could check here.

  1. Check the Document ID settings (under site collection administration) to make sure its enabled here as well.
  2. If you click OK you it may tell you the job needs to process
  3. In central administration you can manually start the jobs associated with the appropriate web application.
  4. Go to Central Administation > Monitoring > Review Job Definitions > Document ID enable/disable job for your web application. Then select Run Now
  5. Once step 4 is complete go to Document ID assignment job and select Run Now

Hopefully those steps help to solve your issue.

2
  • I appreciate your suggestions, but have already tried 4 and 5 as stated in my description. Document ID is enabled.
    – rboone
    Apr 19, 2012 at 19:16
  • Hmm, apparently I cant read late at night. Sorry about restating that. So does your custom solution have anything to do with the libraries where it is not working?
    – Cory
    Apr 19, 2012 at 19:35
1

Apparently patience is the answer. I've done the whole shibang: activated the Document ID feature, started both timer jobs manually (I did however change the timings on both to 30 minutes), and after seeing nothing for about 15 - 30 minutes, suddenly the document ID's started showing up...

0

Verify if web application / site has document ID enabled

$web=get-spweb URL

$web.properties

How to fix if documentID_enabled is set to 0:

$web=get-spweb URL

$web.properties["docid_enabled"]="1"

$web.properties.update()

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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