<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>KB-1223 "Could not initialize search engine... Lock obtain timed out" error thrown after starting second application server in an environment with multiple application servers</title><link>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>KB-1223 "Could not initialize search engine... Lock obtain timed out" error thrown after starting second application server in an environment with multiple application servers</title><link>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers</link><pubDate>Thu, 18 Jan 2024 03:22:38 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:738898c6-773f-4374-9775-59ecea50bff2</guid><dc:creator>Devon Lee</dc:creator><comments>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers#comments</comments><description>Current Revision posted to Appian Knowledge Base by Devon Lee on 1/18/2024 3:22:38 AM&lt;br /&gt;
&lt;h2 id="symptoms"&gt;Symptoms&lt;/h2&gt;
&lt;p&gt;In a distributed environment containing two JBoss application servers, users will notice the following error upon starting the second application server:&lt;/p&gt;
&lt;pre&gt;12:38:22,974 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 89) JBWEB000287: Exception sending context initialized event to listener instance of class com.appiancorp.common.config.ConfigurationLoader: com.appiancorp.common.config.FatalConfigurationException: com.appiancorp.suiteapi.common.exceptions.AppianException: An unexpected error occurred while trying to initialize and validate the Appian data source. (APNX-1-4179-004)
...
Caused by: java.lang.IllegalStateException: [jdbc/AppianPrimaryDS] Could not initialize search engine.
...
Caused by: java.lang.IllegalStateException: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
Caused by: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
&lt;/pre&gt;
&lt;p&gt;The second application server started will always fail to deploy.&lt;/p&gt;
&lt;h2 id="cause"&gt;Cause&lt;/h2&gt;
&lt;p&gt;The following are&amp;nbsp;possible causes to this issue:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starting with Appian 16.1, the name of the &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt; property was updated to &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;. However, &lt;strong&gt;custom.properties&lt;/strong&gt; was not updated to reflect this on both application servers.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property points to the same shared network drive in both application servers&amp;#39; &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined.&lt;/li&gt;
&lt;li&gt;The&amp;nbsp;application server is improperly shut down.&lt;/li&gt;
&lt;li&gt;In a distributed environment, the network drive where &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin&lt;/code&gt; resides becomes unavailable while the application server is starting up or shutting down. The network drive becoming unavailable would prevent the deletion of the &lt;strong&gt;write.lock&lt;/strong&gt; file.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined or is using the wrong property name, then Appian will use &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;/search-local/index-primary&lt;/code&gt;as the value of that property. For the purposes of this KB article, &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;&lt;/code&gt; denotes the directory defined in the property &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; in &lt;strong&gt;custom.properties&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If no value is set for &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; and &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;(&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) is not defined correctly (or defined at all), Appian will use &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary&lt;/code&gt; on that particular machine as the value of &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;).&lt;/p&gt;
&lt;h2 id="action"&gt;Action&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Ensure that the correct property name is being used:
&lt;ul&gt;
&lt;li&gt;Appian 7.11 and earlier: &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Appian 16.1 and later: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ensure that the property itself is only referenced once in each &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;Ensure that there is a value set for the appropriate property and that the two application servers &lt;strong&gt;do not&lt;/strong&gt; point to the same shared network drive.&amp;nbsp;&lt;strong&gt;Note:&lt;/strong&gt; You can create two separate folders within the same network drive and have each application server point to the different folders, as this is a valid configuration.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;An example of how each &lt;strong&gt;custom.properties&lt;/strong&gt; file should be defined:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 1: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-1/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 2: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-2/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Similar notation for any additional application server.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the above steps don&amp;#39;t work, perform the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop the application server.&lt;/li&gt;
&lt;li&gt;Delete the &lt;strong&gt;write.lock&lt;/strong&gt; file in &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Restart the application server.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="affected-versions"&gt;Affected Versions&lt;/h2&gt;
&lt;p&gt;This article applies to all versions of Appian.&lt;/p&gt;
&lt;p&gt;Last Reviewed:&amp;nbsp;March 2017&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: database, installation, application server, windows, infrastructure, jboss&lt;/div&gt;
</description></item><item><title>KB-1223 "Could not initialize search engine... Lock obtain timed out" error thrown after starting second application server in an environment with multiple application servers</title><link>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers/revision/3</link><pubDate>Mon, 23 Jul 2018 17:33:36 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:738898c6-773f-4374-9775-59ecea50bff2</guid><dc:creator>Jordan Horwat</dc:creator><comments>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers#comments</comments><description>Revision 3 posted to Appian Knowledge Base by Jordan Horwat on 7/23/2018 5:33:36 PM&lt;br /&gt;
&lt;div class="row content_container"&gt;
&lt;h2 id="symptoms"&gt;Symptoms&lt;/h2&gt;
&lt;p&gt;In a distributed environment containing two JBoss application servers, users will notice the following error upon starting the second application server:&lt;/p&gt;
&lt;pre&gt;12:38:22,974 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 89) JBWEB000287: Exception sending context initialized event to listener instance of class com.appiancorp.common.config.ConfigurationLoader: com.appiancorp.common.config.FatalConfigurationException: com.appiancorp.suiteapi.common.exceptions.AppianException: An unexpected error occurred while trying to initialize and validate the Appian data source. (APNX-1-4179-004)
...
Caused by: java.lang.IllegalStateException: [jdbc/AppianPrimaryDS] Could not initialize search engine.
...
Caused by: java.lang.IllegalStateException: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
Caused by: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
&lt;/pre&gt;
&lt;p&gt;The second application server started will always fail to deploy.&lt;/p&gt;
&lt;h2 id="cause"&gt;Cause&lt;/h2&gt;
&lt;p&gt;The following are&amp;nbsp;possible causes to this issue:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starting with Appian 16.1, the name of the &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt; property was updated to &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;. However, &lt;strong&gt;custom.properties&lt;/strong&gt; was not updated to reflect this on both application servers.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property points to the same shared network drive in both application servers&amp;#39; &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined.&lt;/li&gt;
&lt;li&gt;The&amp;nbsp;application server is improperly shut down.&lt;/li&gt;
&lt;li&gt;In a distributed environment, the network drive where &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin&lt;/code&gt; resides becomes unavailable while the application server is starting up or shutting down. The network drive becoming unavailable would prevent the deletion of the &lt;strong&gt;write.lock&lt;/strong&gt; file.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined or is using the wrong property name, then Appian will use &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;/search-local/index-primary&lt;/code&gt;as the value of that property. For the purposes of this KB article, &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;&lt;/code&gt; denotes the directory defined in the property &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; in &lt;strong&gt;custom.properties&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If no value is set for &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; and &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;(&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) is not defined correctly (or defined at all), Appian will use &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary&lt;/code&gt; on that particular machine as the value of &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;).&lt;/p&gt;
&lt;h2 id="action"&gt;Action&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Ensure that the correct property name is being used:
&lt;ul&gt;
&lt;li&gt;Appian 7.11 and earlier: &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Appian 16.1 and later: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ensure that the property itself is only referenced once in each &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;Ensure that there is a value set for the appropriate property and that the two application servers &lt;strong&gt;do not&lt;/strong&gt; point to the same shared network drive.&amp;nbsp;&lt;strong&gt;Note:&lt;/strong&gt; You can create two separate folders within the same network drive and have each application server point to the different folders, as this is a valid configuration.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;An example of how each &lt;strong&gt;custom.properties&lt;/strong&gt; file should be defined:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 1: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-1/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 2: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-2/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Similar notation for any additional application server.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the above steps don&amp;#39;t work, perform the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop the application server.&lt;/li&gt;
&lt;li&gt;Delete the &lt;strong&gt;write.lock&lt;/strong&gt; file in &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Restart the application server.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="affected-versions"&gt;Affected Versions&lt;/h2&gt;
&lt;p&gt;This article applies to all versions of Appian.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Last Reviewed:&amp;nbsp;March 2017&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: database, installation, application server, windows, infrastructure, jboss&lt;/div&gt;
</description></item><item><title>KB-1223 "Could not initialize search engine... Lock obtain timed out" error thrown after starting second application server in an environment with multiple application servers</title><link>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers/revision/2</link><pubDate>Tue, 07 Mar 2017 10:07:47 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:738898c6-773f-4374-9775-59ecea50bff2</guid><dc:creator>Nick Vigilante</dc:creator><comments>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers#comments</comments><description>Revision 2 posted to Appian Knowledge Base by Nick Vigilante on 3/7/2017 10:07:47 AM&lt;br /&gt;
&lt;div class="row content_container"&gt;
&lt;h2 id="symptoms"&gt;Symptoms&lt;/h2&gt;
&lt;p&gt;In a distributed environment containing two JBoss application servers, users will notice the following error upon starting the second application server:&lt;/p&gt;
&lt;pre&gt;12:38:22,974 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 89) JBWEB000287: Exception sending context initialized event to listener instance of class com.appiancorp.common.config.ConfigurationLoader: com.appiancorp.common.config.FatalConfigurationException: com.appiancorp.suiteapi.common.exceptions.AppianException: An unexpected error occurred while trying to initialize and validate the Appian data source. (APNX-1-4179-004)
...
Caused by: java.lang.IllegalStateException: [jdbc/AppianPrimaryDS] Could not initialize search engine.
...
Caused by: java.lang.IllegalStateException: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
Caused by: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
&lt;/pre&gt;
&lt;p&gt;The second application server started will always fail to deploy.&lt;/p&gt;
&lt;h2 id="cause"&gt;Cause&lt;/h2&gt;
&lt;p&gt;The following are&amp;nbsp;possible causes to this issue:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starting with Appian 16.1, the name of the &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt; property was updated to &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;. However, &lt;strong&gt;custom.properties&lt;/strong&gt; was not updated to reflect this on both application servers.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property points to the same shared network drive in both application servers&amp;#39; &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined.&lt;/li&gt;
&lt;li&gt;The&amp;nbsp;application server is improperly shut down.&lt;/li&gt;
&lt;li&gt;In a distributed environment, the network drive where &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin&lt;/code&gt; resides becomes unavailable while the application server is starting up or shutting down. The network drive becoming unavailable would prevent the deletion of the &lt;strong&gt;write.lock&lt;/strong&gt; file.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined or is using the wrong property name, then Appian will use &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;/search-local/index-primary&lt;/code&gt;as the value of that property. For the purposes of this KB article, &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;&lt;/code&gt; denotes the directory defined in the property &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; in &lt;strong&gt;custom.properties&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If no value is set for &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; and &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;(&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) is not defined correctly (or defined at all), Appian will use &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary&lt;/code&gt; on that particular machine as the value of &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;).&lt;/p&gt;
&lt;h2 id="action"&gt;Action&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Ensure that the correct property name is being used:
&lt;ul&gt;
&lt;li&gt;Appian 7.11 and earlier: &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Appian 16.1 and later: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ensure that the property itself is only referenced once in each &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;Ensure that there is a value set for the appropriate property and that the two application servers &lt;strong&gt;do not&lt;/strong&gt; point to the same shared network drive.&amp;nbsp;&lt;strong&gt;Note:&lt;/strong&gt; You can create two separate folders within the same network drive and have each application server point to the different folders, as this is a valid configuration.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;An example of how each &lt;strong&gt;custom.properties&lt;/strong&gt; file should be defined:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 1: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-1/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 2: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-2/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Similar notation for any additional application server.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the above steps don&amp;#39;t work, perform the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop the application server.&lt;/li&gt;
&lt;li&gt;Delete the &lt;strong&gt;write.lock&lt;/strong&gt; file in &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Restart the application server.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="affected-versions"&gt;Affected Versions&lt;/h2&gt;
&lt;p&gt;This article applies to all versions of Appian.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Last Reviewed:&amp;nbsp;March 2017&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: database, application server, windows, jboss&lt;/div&gt;
</description></item><item><title>KB-1223 "Could not initialize search engine... Lock obtain timed out" error thrown after starting second application server in an environment with multiple application servers</title><link>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers/revision/1</link><pubDate>Mon, 06 Mar 2017 21:17:55 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:738898c6-773f-4374-9775-59ecea50bff2</guid><dc:creator>Nick Vigilante</dc:creator><comments>https://community.appian.com/support/w/kb/438/kb-1223-could-not-initialize-search-engine-lock-obtain-timed-out-error-thrown-after-starting-second-application-server-in-an-environment-with-multiple-application-servers#comments</comments><description>Revision 1 posted to Appian Knowledge Base by Nick Vigilante on 3/6/2017 9:17:55 PM&lt;br /&gt;
&lt;div class="row content_container"&gt;
&lt;h2 id="symptoms"&gt;Symptoms&lt;/h2&gt;
&lt;p&gt;In a distributed environment containing two JBoss application servers, users will notice the following error upon starting the second application server:&lt;/p&gt;
&lt;pre&gt;12:38:22,974 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 89) JBWEB000287: Exception sending context initialized event to listener instance of class com.appiancorp.common.config.ConfigurationLoader: com.appiancorp.common.config.FatalConfigurationException: com.appiancorp.suiteapi.common.exceptions.AppianException: An unexpected error occurred while trying to initialize and validate the Appian data source. (APNX-1-4179-004)
...
Caused by: java.lang.IllegalStateException: [jdbc/AppianPrimaryDS] Could not initialize search engine.
...
Caused by: java.lang.IllegalStateException: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
Caused by: org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: NativeFSLock@&amp;lt;BASEPATH_HOME&amp;gt;/_admin/search-local/index-primary/com.appiancorp.tempo.rdbms.EventFeedEntry/write.lock
...
&lt;/pre&gt;
&lt;p&gt;The second application server started will always fail to deploy.&lt;/p&gt;
&lt;h2 id="cause"&gt;Cause&lt;/h2&gt;
&lt;p&gt;There are three possible causes to this issue:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Starting with Appian 16.1, the name of the &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt; property was updated to &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;. However, &lt;strong&gt;custom.properties&lt;/strong&gt; was not updated to reflect this on both application servers.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property points to the same shared network drive in both application servers&amp;#39; &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If the &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) property is not defined or is using the wrong property name, then Appian will use &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;/search-local/index-primary&lt;/code&gt;as the value of that property. For the purposes of this KB article, &lt;code&gt;&amp;lt;BASE_PATH&amp;gt;&lt;/code&gt; denotes the directory defined in the property &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; in &lt;strong&gt;custom.properties&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If no value is set for &lt;code&gt;conf.suite.BASE_PATH&lt;/code&gt; and &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;(&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;) is not defined correctly (or defined at all), Appian will use &lt;code&gt;&amp;lt;APPIAN_HOME&amp;gt;/_admin/search-local/index-primary&lt;/code&gt; on that particular machine as the value of &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt; (&lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;).&lt;/p&gt;
&lt;h2 id="action"&gt;Action&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Ensure that the correct property name is being used:
&lt;ul&gt;
&lt;li&gt;Appian 7.11 and earlier: &lt;code&gt;conf.data.primary.datasource.search.index&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Appian 16.1 and later: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ensure that the property itself is only referenced once in each &lt;strong&gt;custom.properties&lt;/strong&gt; file.&lt;/li&gt;
&lt;li&gt;Ensure that there is a value set for the appropriate property and that the two application servers &lt;strong&gt;do not&lt;/strong&gt; point to the same shared network drive.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;An example of how each &lt;strong&gt;custom.properties&lt;/strong&gt; file should be defined:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 1: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-1/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;custom.properties&lt;/strong&gt; on application server 2: &lt;code&gt;conf.data.APPIAN_DATA_SOURCE.search.index=/path/to/search-local-2/index-primary&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Similar notation for any additional application server.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="affected-versions"&gt;Affected Versions&lt;/h2&gt;
&lt;p&gt;This article applies to all versions of Appian.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Last Reviewed:&amp;nbsp;March 2017&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: database, application server, windows, jboss&lt;/div&gt;
</description></item></channel></rss>