[hibernate-issues] [JIRA] (HSEARCH-3902) Expose addOrUpdate/delete/purge on IndexIndexer/PojoIndexer

Yoann Rodière (JIRA) jira at hibernate.atlassian.net
Tue Apr 28 03:03:53 EDT 2020


Yoann Rodière ( https://hibernate.atlassian.net/secure/ViewProfile.jspa?accountId=557058%3A58fa1ced-171a-4c00-97e8-5d70d442cc4b ) *created* an issue

Hibernate Search ( https://hibernate.atlassian.net/browse/HSEARCH?atlOrigin=eyJpIjoiY2NjN2EwMDEyN2UzNDg5NmEyYWVjYjEwNjVlODdmNTEiLCJwIjoiaiJ9 ) / Task ( https://hibernate.atlassian.net/browse/HSEARCH-3902?atlOrigin=eyJpIjoiY2NjN2EwMDEyN2UzNDg5NmEyYWVjYjEwNjVlODdmNTEiLCJwIjoiaiJ9 ) HSEARCH-3902 ( https://hibernate.atlassian.net/browse/HSEARCH-3902?atlOrigin=eyJpIjoiY2NjN2EwMDEyN2UzNDg5NmEyYWVjYjEwNjVlODdmNTEiLCJwIjoiaiJ9 ) Expose addOrUpdate/delete/purge on IndexIndexer/PojoIndexer ( https://hibernate.atlassian.net/browse/HSEARCH-3902?atlOrigin=eyJpIjoiY2NjN2EwMDEyN2UzNDg5NmEyYWVjYjEwNjVlODdmNTEiLCJwIjoiaiJ9 )

Issue Type: Task Assignee: Unassigned Components: backend-elasticsearch, backend-lucene, mapper-pojo Created: 28/Apr/2020 00:03 AM Fix Versions: 6.0.0.Beta-backlog-high-priority Priority: Major Reporter: Yoann Rodière ( https://hibernate.atlassian.net/secure/ViewProfile.jspa?accountId=557058%3A58fa1ced-171a-4c00-97e8-5d70d442cc4b )

This is only about SPIs, no new feature will be directly exposed as a result of this ticket.

First, we need to expose addOrUpdate on the PojoIndexer if we want to implement a mass indexer that works correctly with concurrent updates. We need this in Infinispan in particular.

Second, in Infinispan, indexing operations are always about a single entity/document, and contained types are irrelevant. Also, there is no concept of session, so the session is implemented as a singleton.
Thus indexing in Infinispan does not need the PojoIndexingPlan and its overhead; Infinispan could use the PojoIndexer directly, if only it exposed the missing operations (addOrUpdate/delete/purge).

Ideally, we should also make the PojoIndexer and IndexIndexers thread-safe, so that Infinispan can use them as singletons. This means in particular fixing the lazy initialization we currently have in PojoIndexer. Maybe we should make the PojoIndexer type-scoped and initialize its delegates eagerly? That certainly wouldn't be a problem for the MassIndexer.

( https://hibernate.atlassian.net/browse/HSEARCH-3902#add-comment?atlOrigin=eyJpIjoiY2NjN2EwMDEyN2UzNDg5NmEyYWVjYjEwNjVlODdmNTEiLCJwIjoiaiJ9 ) Add Comment ( https://hibernate.atlassian.net/browse/HSEARCH-3902#add-comment?atlOrigin=eyJpIjoiY2NjN2EwMDEyN2UzNDg5NmEyYWVjYjEwNjVlODdmNTEiLCJwIjoiaiJ9 )

Get Jira notifications on your phone! Download the Jira Cloud app for Android ( https://play.google.com/store/apps/details?id=com.atlassian.android.jira.core&referrer=utm_source%3DNotificationLink%26utm_medium%3DEmail ) or iOS ( https://itunes.apple.com/app/apple-store/id1006972087?pt=696495&ct=EmailNotificationLink&mt=8 ) This message was sent by Atlassian Jira (v1001.0.0-SNAPSHOT#100125- sha1:29f7b81 )
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/hibernate-issues/attachments/20200428/de23a4e4/attachment.html 


More information about the hibernate-issues mailing list