-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 
Author Message
 Post subject: Hibernate Search Not updating Index, when worker=async
PostPosted: Thu Jul 16, 2015 9:03 am 
Newbie

Joined: Thu Jul 16, 2015 8:09 am
Posts: 2
I'm using
hibernate.search 5.1.1
hibernate.search.infinispan 5.1.1
jgroups 3.6.3
Spring 3.2.8


In Sync mode <property name="hibernate.search.default.worker.execution" value="sync"/> I'm getting updates to the index.

In Async mode <property name="hibernate.search.default.worker.execution" value="async"/> I'm getting no updates to the index. I determined this by updating then searching.
During and after the transaction that's updating the entity I added:
FullTextEntityManager fullTextEntityManager = Search.getFullTextEntityManager(entityManager);
fullTextEntityManager.flushToIndexes();
Still no index changes.

I don't want to use sync because it's taking 3+ seconds to save and index update.

I've turned up all the logging to TRACE and see no errors.

I've tested while clustered and single node.

Any suggestions on how to troubleshoot or what might be wrong?

You can see below in the config I'm using a custom "hibernate.search.default.worker.backend" = com.company.platform.search.CSJGroupsBackendQueueProcessor

That is just for logging. It extends JGroupsBackendQueueProcessor and calls all it's methods.

Even Weirder, some indexes seem to be updating.

I put a break point in org.hibernate.search.backend.impl.lucene.ScheduleCommitPolicy and it's continually looping between two of my indexes... If i make an update to one of those two it works, but any other it does not.
persistence.xml
<!-- Hibernate Search Settings -->
<property name="hibernate.search.autoregister_listeners" value="true"/>

<property name="hibernate.search.default.worker.thread_pool.size" value="5"/>
<property name="hibernate.search.default.worker.execution" value="async"/>
<property name="hibernate.search.​default.​indexwriter.max_buffered_docs" value ="1"/>
<!--<property name="hibernate.search.default.indexwriter.infostream" value="true"/>-->
<property name="hibernate.search.lucene_version" value="LUCENE_4_10_4"/>
<property name="hibernate.search.default.directory_provider" value="infinispan"/>
<!--<property name="hibernate.search.default.directory_provider" value="ram"/>-->
<property name="hibernate.search.infinispan.configuration_resourcename"
value="hibernate-search-infinispan.xml"/>
<property name="hibernate.search.​default.​exclusive_index_use" value="true"/>
<property name="hibernate.search.​default.index_flush_interval" value="2000"/>
<!--<property name="hibernate.search.default.worker.backend" value="jgroups"/>-->
<property name="org.hibernate.search.backend.jgroups.impl.AutoNodeSelector"
value="com.company.platform.search.CSNodeSelector"/>
<property name="hibernate.search.default.worker.backend"
value="com.company.platform.search.CSJGroupsBackendQueueProcessor"/>
<property name="hibernate.search.services.jgroups.configurationFile" value="jdbc_ping.xml"/>

hibernate-search-infinispan.xml
<infinispan
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:infinispan:config:7.1 http://www.infinispan.org/schemas/infinispan-config-7.1.xsd
urn:infinispan:config:store:jdbc:7.1 http://www.infinispan.org/schemas/infinispan-cachestore-jdbc-config-7.1.xsd"
xmlns="urn:infinispan:config:7.1"
xmlns:jdbc="urn:infinispan:config:store:jdbc:7.1"
>

<!-- *************************** -->
<!-- System-wide global settings -->
<!-- *************************** -->

<jgroups>
<!-- Note that the JGroups transport uses sensible defaults if no configuration
property is defined. See the JGroupsTransport javadocs for more flags.
jgroups-udp.xml is the default stack bundled in the Infinispan core jar: integration
and tuning are tested by Infinispan. -->
<stack-file name="HibernateSearch-Infinispan-cluster" path="jdbc_ping.xml"/>
</jgroups>

<cache-container name="HibernateSearch" default-cache="default" statistics="false" shutdown-hook="DONT_REGISTER">

<transport stack="HibernateSearch-Infinispan-cluster"/>

<!-- Duplicate domains are allowed so that multiple deployments with default configuration
of Hibernate Search applications work - if possible it would be better to use JNDI to share
the CacheManager across applications -->
<jmx duplicate-domains="true"/>

<!-- *************************************** -->
<!-- Cache to store Lucene's file metadata -->
<!-- *************************************** -->


<replicated-cache name="LuceneIndexesMetadata" mode="SYNC" remote-timeout="480000">
<transaction mode="NONE"/>
<state-transfer enabled="true" timeout="480000" await-initial-transfer="true"/>
<indexing index="NONE"/>
<locking striping="false" acquire-timeout="10000" concurrency-level="500" write-skew="false"/>
<eviction max-entries="-1" strategy="NONE"/>
<expiration max-idle="-1"/>
</replicated-cache>

<!-- **************************** -->
<!-- Cache to store Lucene data -->
<!-- **************************** -->
<replicated-cache name="LuceneIndexesData" mode="SYNC" remote-timeout="480000">
<transaction mode="NONE"/>
<state-transfer enabled="true" timeout="480000" await-initial-transfer="true"/>
<indexing index="NONE"/>
<locking striping="false" acquire-timeout="10000" concurrency-level="500" write-skew="false"/>
<eviction max-entries="-1" strategy="NONE"/>
<expiration max-idle="-1"/>
</replicated-cache>

</cache-container>
</infinispan>

<config xmlns="urn:org:jgroups"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/JGroups-3.6.xsd">
<TCP_NIO
bind_addr="${jgroups.tcp.address:SITE_LOCAL}"
bind_port="${jgroups.tcp.port:7800}"
port_range="50"/>
<com.company.platform.cluster.AWS_PING
port_number="${jgroups.tcp.port:7800}"
filters="instance-state-name=running"
tags="elasticbeanstalk:environment-id"/>
<MERGE3 max_interval="30000"
min_interval="10000"/>
<FD_SOCK/>
<FD_ALL2/>
<VERIFY_SUSPECT timeout="3000" num_msgs="3"/>
<!-- Max 3 sec to respond for failure suspect. Max 3 trials -->
<pbcast.NAKACK use_mcast_xmit="false"/>
<UNICAST3/>
<RSVP/>
<pbcast.FLUSH/>
<pbcast.STABLE/>
<pbcast.GMS />
<MFC max_credits="2000000" min_threshold="0.10"/>
<FRAG2 frag_size="60000"/>
<CENTRAL_LOCK/>
<pbcast.STATE_TRANSFER/>
</config>


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.