Skip to content

solr-reindexing-after-process-running #872

@Paurikova2

Description

@Paurikova2

Problem:
Solr is not reindexing after adding an embargo to an item via the process. The item remains visible for CMDI until Solr reindexes (e.g., after the item's metadata changes, cron job, etc.).

Task:
Reindex Solr during processing.

1. When should Solr be reindexed?

When an item’s metadata changes (e.g., by a user, curate task, or script).
When resource policies or embargoes are added/removed (via process).

2. When are we reindexing Solr now?

itemRestRepository: delete item
ResourceRestRepository: createAnnReturn, delete
WorkflowItemRestRepository: createAndReturn
DSpaceObjectRestRepository: patchDspaceObject

Problems:
Solr is not reindexing when the process is running (e.g., BulkAccessControl), and this issue occurs in similar situations but in different places.

Solution:

  1. Reindex Solr when an item is updated/deleted or when resource policies are updated/deleted.
    Problem: Dependencies between folders (e.g., dspace-server-webapp and dspace-api).
  2. Move SolrOAIReindexer to dspace-api
    Problem: dependency between (dspace-api and dspace-oai).
  3. Call it when the process is running.
    Problem: Dependency between (dspace-api and dspace-oai).

Milan’s solution: Events

After discussion with Jozef:
"We have to solve this problem!"
Possible solutions:

  1. Service -Problem with dependencies: In the dspace-api interface and the implementation in dspace-server-webapp. Check if something like this already exists. Create a service and communicate this with the dspace community (it should exist, and if not, why isn't it there?).
  2. Events

Working:

  1. In the dspace-api interface and the implementation in dspace-server-webapp. Check if something like this already exists.
  • I found AuthorizationFeatureService which implemented in dspace-server-webapp. They use annotation @service.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions