Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Karl Kopp 121 posts 227 karma points
    Aug 25, 2015 @ 02:41
    Karl Kopp
    0

    LockObtainFailedException on Azure after upgrade

    Today I upgraded a site from 7.2.2 to 7.2.8 hosted on Azure and I'm not getting the following error when Umbraco tries to update the Examine indexes.

    Provider=VenueIndexer, NodeId=-1
    System.Exception: Error indexing queue items,Lucene.Net.Store.LockObtainFailedException: Lock obtain timed out: [email protected]:\home\site\wwwroot\App_Data\TEMP\ExamineIndexes\Special\Index\write.lock: System.IO.IOException: The process cannot access the file 'D:\home\site\wwwroot\App_Data\TEMP\ExamineIndexes\Special\Index\write.lock' because it is being used by another process.
       at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
       at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
       at Lucene.Net.Store.NativeFSLock.Obtain() ---> System.IO.IOException: The process cannot access the file 'D:\home\site\wwwroot\App_Data\TEMP\ExamineIndexes\Special\Index\write.lock' because it is being used by another process.
       at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
       at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
       at Lucene.Net.Store.NativeFSLock.Obtain()
       --- End of inner exception stack trace ---
       at Lucene.Net.Store.Lock.Obtain(Int64 lockWaitTimeout)
       at Lucene.Net.Index.IndexWriter.Init(Directory d, Analyzer a, Boolean create, Boolean closeDir, IndexDeletionPolicy deletionPolicy, Boolean autoCommit, Int32 maxFieldLength, IndexingChain indexingChain, IndexCommit commit)
       at Lucene.Net.Index.IndexWriter.Init(Directory d, Analyzer a, Boolean closeDir, IndexDeletionPolicy deletionPolicy, Boolean autoCommit, Int32 maxFieldLength, IndexingChain indexingChain, IndexCommit commit)
       at Lucene.Net.Index.IndexWriter..ctor(Directory d, Analyzer a, MaxFieldLength mfl)
       at Examine.DataServices.RegisterEvents.SearchIndexerUpdateSpecials(Object sender, IndexingNodeDataEventArgs e)
       at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
       at UmbracoExamine.UmbracoContentIndexer.OnGatheringNodeData(IndexingNodeDataEventArgs e)
       at Examine.LuceneEngine.Providers.LuceneIndexer.GetDataToIndex(XElement node, String type)
       at Examine.LuceneEngine.Providers.LuceneIndexer.ProcessIndexQueueItem(IndexOperation op, IndexWriter writer)
       at Examine.LuceneEngine.Providers.LuceneIndexer.ProcessQueueItem(IndexOperation item, ICollection`1 indexedNodes, IndexWriter writer)
       at Examine.LuceneEngine.Providers.LuceneIndexer.ForceProcessQueueItems(Boolean block), IndexSet: VenueIndexSet
    

    I've disabled async (runAsync=false), and a few of the indexes update correctly, but this one doesn't. Any advice/help??

    Cheers, Karl

  • Shannon Deminick 1522 posts 5242 karma points
    Aug 27, 2015 @ 08:49
    Shannon Deminick
    0

    Hi Karl,

    Firstly never set this: runAsync=false. I've actually removed the docs for this since it should only ever be used for testing purposes. It will not work in multi-threaded environments (i.e. a website)!

    Since this is the only index exhibiting this behavior, id need to see your config. Do you have multiple writers or readers pointing to this directory?

    In your logs, does it show that your web app is restarting an awful lot ?

    It would also be strongly advised to upgrade to the latest Examine (which is not shipped with 7.2.8

  • Karl Kopp 121 posts 227 karma points
    Aug 28, 2015 @ 07:08
    Karl Kopp
    0

    Thanks Shannon - I've upgrade Examine via nuget and disabled the async and still get the lock error. I'll email u over the config now...

    Cheers, Karl

Please Sign in or register to post replies

Write your reply to:

Draft