On 6-Aug-07, at 5:38 AM, Erik Hatcher wrote:

I'm working on a project that embeds Solr, much like the EmbeddedSolr example posted here <http://wiki.apache.org/solr/ EmbeddedSolr>.

The application generally runs fine, with very rapid handling of indexing and search requests, however at heavy load we're experiencing "Lock obtain timed out: SimpleFSLock@ ..." errors. The heavy load can be replicated by indexing the same document repeatedly, so even a very tiny index experiences this. The application is configured with the following relevant pieces to solrconfig.xml:

  <indexDefaults>
<!-- Values here affect all index writers and act as a default unless overridden. -->
    <useCompoundFile>false</useCompoundFile>
    <mergeFactor>10</mergeFactor>
    <maxBufferedDocs>1000</maxBufferedDocs>
    <maxMergeDocs>2147483647</maxMergeDocs>
    <maxFieldLength>10000</maxFieldLength>
    <writeLockTimeout>1000</writeLockTimeout>

Have you tried upping this? The problem might be that you are commiting every 1.0s, and a single commit eventually might take longer than this (and you're only waiting 1.0s to acquire the write lock).

-Mike

    <commitLockTimeout>10000</commitLockTimeout>
  </indexDefaults>

and

    <autoCommit>
      <maxTime>1000</maxTime>
    </autoCommit>

So a commit is never sent, only relying on the autoCommit feature.

What troubleshooting/diagnostic steps do you recommend to dig further into this?

At the moment the application is intertwined with domain-specific stuff, so I haven't isolated it to a simple sharable situation yet, but I'll do that if necessary.

Thanks,
        Erik


Reply via email to