Showing posts with label Oracle HCM. Show all posts
Showing posts with label Oracle HCM. Show all posts

November 1, 2026

Redwood Recruiting: the ESS and OSCS index ingest jobs must all succeed, or the data won't load

# Fix of the Day #25: Redwood Recruiting: the ESS and OSCS index ingest jobs must all succeed, or the data won't load

Part of my Oracle Fusion HCM Fix of the Day series: real issues from implementations and a Redwood rollout I led without a Systems Integrator, and how I fixed each one.

This is Fix #25. Start from Fix #1 to follow the series in order.

Moving Recruiting to Redwood is not just a switch you turn on. The Redwood pages read much of their data from Oracle Search (OSCS, Oracle Search Cloud Service), and that search data has to be built by a set of scheduled processes. During our Recruiting Redwood setup, the lesson was simple and strict: every one of those ESS jobs has to finish with Succeeded. If even one ends in Warning or Error, the data does not load, and the Redwood pages show an incomplete picture.

The symptom

We submitted the ESS jobs for the Recruiting Redwood setup. Some completed. Some ended in Warning or Error. Others sat in Wait or Hold and never really started.

From the outside it looked like the setup had run. But the data was not there in Redwood: requisitions, candidates and lists of values were missing or incomplete. It is easy to look at a list of processes, see mostly green, and move on. That is the trap. A partial run is not a successful run.

Why it happens

These jobs depend on each other. One job builds or loads index data that the next one needs. If a job ends in Warning or Error, the index it was meant to build is incomplete, and anything that runs after it works from that gap.

Jobs stuck in Wait or Hold cause a different problem. Recurring indexing jobs and old duplicate requests keep running in the background. They compete with the full reload you are trying to do, or run on top of it at the wrong moment.

So a clean result needs two things: a clear queue before you start, and every job ending in Succeeded.

Before you start

  • You need the FND_MANAGE_SCHEDULED_JOB_DEFINITION_PRIV privilege to submit the OSCS ingest job. It comes with the Application Administrator and Application Developer job roles.
  • If you use the Redwood requisition and offer lists of values backed by Oracle Search, enable their profile options first: ORA_PER_ORACLE_SEARCH_WORKERSLOV_ENABLED, ORA_PER_ORACLE_SEARCH_POSITIONSLOV_ENABLED, ORA_PER_ORACLE_SEARCH_DEPARTMENTSLOV_ENABLED, ORA_PER_ORACLE_SEARCH_LOCATIONSLOV_ENABLED and ORA_PER_ORACLE_SEARCH_JOBSLOV_ENABLED.
  • If you use advanced job application filters, enable ORA_IRC_JA_ORACLE_SEARCH_ENABLED. Without it, the fa-hcm-jobapplication ingest fails with "Index not enabled".

The ESS jobs we ran, in order

Step 1: Stop and clear the queue

  1. In Scheduled Processes, stop anything still Running for Recruiting search.
  2. Cancel the recurring jobs Maintain Candidates and Job Requisitions for Search and Index Candidate Attachments.
  3. Search by status for Hold and for Wait, and cancel every request you find.
  4. Search once more and confirm nothing is left running, waiting or on hold.

Step 2: Reload the Recruiting search data (one at a time, each must succeed)

  1. Load and Index Master Geography Hierarchy, with no parameters.
  2. Load and Index Job Requisitions, indexing mode Drop and Recreate Index.
  3. Load and Index Candidates, indexing mode Drop and Recreate Index.
  4. Index Job Summary for Each Requisition, Full mode (needed for Smart Search and Career Coach search).

Step 3: OSCS index ingest

Job name: ESS job to create index definition and perform initial ingest to OSCS. Submit it once for each index, entering the index in the Index Name to Reingest field. Submit them one by one, and wait for each to succeed before the next. Never leave the field blank, or it runs for every predefined index.

  1. fa-hcm-savedsearch
  2. fa-hcm-requisition
  3. fa-hcm-jobapplication (only if advanced job application filters are enabled)
  4. fa-hcm-irc-hiring-events (if you use hiring events)
  5. fa-hcm-irc-messages (if you use the Redwood Message Center; run once, do not schedule it)
  6. For the Redwood requisition and offer lists of values: fa-hcm-person, fa-hcm-position, fa-hcm-organization, fa-hcm-location and fa-hcm-job

Step 4: Restart the incremental jobs

  1. Maintain Candidates and Job Requisitions for Search, every 15 minutes.
  2. Index Candidate Attachments, every 15 minutes.
  3. Index Job Summary for Each Requisition, Incremental mode.

How I fixed it

  1. I stopped all running Recruiting search jobs and cancelled every request in Hold or Wait.
  2. I confirmed the queue was clear before submitting anything.
  3. I ran the jobs above one at a time, in order.
  4. After each job, I checked the status. If it ended in Warning or Error, I opened the log, fixed the cause, and reran it before submitting the next one.
  5. When every job showed Succeeded, I restarted the recurring jobs.
  6. I checked the Redwood Recruiting pages, the requisition and candidate searches and the lists of values, and confirmed the data had loaded.

How to avoid it next time

  • Clear the queue first. Stop anything running, and cancel everything in Hold or Wait.
  • Treat Warning as a failure for setup jobs. Read the log every time.
  • Run the initial OSCS ingest by hand, once per index. Oracle advises against scheduling it.
  • Keep a checklist of the jobs with a status column, and tick each one only when it shows Succeeded.
  • Rerun the relevant jobs after quarterly updates and after a production-to-test refresh, following Oracle's guidance for your release.
  • After the last job, check the data in the Redwood pages, not just the job statuses.

Recruiting data depends on search indexes more than most people expect. In Fix #7, jobs were missing from the career site until the search index was rebuilt. Different symptom, same lesson: check the processes behind the page.

Key takeaway

For a Recruiting Redwood setup, every ESS and OSCS ingest job must end in Succeeded. Stop running jobs, cancel anything in Hold or Wait, then run the jobs one at a time in order and fix every warning or error before moving on.

Meeramaheswari Annadurai, Oracle HCM & Enterprise AI. More at meera2k10.github.io/enterprise-ai

```

October 12, 2026

Recruiting: jobs not visible on the career site

# Fix of the Day #7: Recruiting: jobs not visible on the career site

Part of my Oracle Fusion HCM Fix of the Day series: real issues from implementations and a Redwood rollout I led without a Systems Integrator, and how I fixed each one.

This is Fix #7. Start from Fix #1 to follow the series in order.

A recruiter publishes a job. The requisition says it is posted. But when a candidate opens the career site, the job is not there. This one causes a lot of back and forth between recruiters and the HCM team, because everything in the requisition looks correct. In my case the setup was fine. The search index behind the career site was not.

The symptom

Published requisitions were not showing on the career site. Recruiters could see them in the requisition list. The status looked right. The posting looked right. Candidates searching the career site simply could not find them.

There was no error message anywhere. That is what makes this kind of issue confusing. Nothing fails. The job just does not appear.

Why it happens

The career site does not read requisitions directly from the transaction tables every time a candidate searches. It relies on a search index. In Oracle Recruiting Cloud, that search is powered by Oracle Search Cloud Service, often called OSCS.

When a requisition is published, it needs to be picked up by that index before candidates can find it. If the index is out of step with the data, the career site shows an old picture. Jobs that are live in the application can still be missing from search results.

So there are two separate things to check. First, is the requisition really eligible to show on the career site? Second, has the search index caught up with it? In my case the first was fine. The fix needed an OSCS index rebuild.

How I fixed it

  1. I took a few specific requisitions that were missing and used them as test cases for the whole investigation.
  2. I checked each requisition's status and confirmed it was open and published, not just approved or saved.
  3. I checked the posting details: that it was posted to the right career site, internal or external, and that the posting start and end dates covered today.
  4. I searched the career site for those jobs using the job title and the requisition number, and confirmed they were still missing.
  5. With the requisition setup confirmed, I treated it as a search index problem rather than a data problem.
  6. I ran the OSCS index rebuild for recruiting through the scheduled processes.
  7. Once the process completed, I searched the career site again. The missing jobs now appeared.
  8. I asked the recruiters to confirm a few more of their recent postings were visible.

How to avoid it next time

  • Check the requisition first. Status, career site and posting dates explain many missing jobs before you touch the index.
  • If the setup is correct and jobs are still missing, suspect the search index early instead of reworking requisitions.
  • Re-check career site search after quarterly updates, bulk requisition loads and career site configuration changes.
  • Agree with recruiters on a simple first check: search by requisition number on the career site before raising a ticket.
  • Keep a short runbook entry for the index rebuild, so anyone on the support team can run it and verify the result.

Key takeaway

If a published requisition is not visible on the career site and the posting setup is correct, the search index is the likely gap. Rebuilding the OSCS index brought the jobs back for me.

Next in the series: loading learning completions with HDL, and why gaps in the payroll calendar blocked backdated records.

Meeramaheswari Annadurai, Oracle HCM & Enterprise AI. More at meera2k10.github.io/enterprise-ai

```

Redwood Recruiting: the ESS and OSCS index ingest jobs must all succeed, or the data won't load

# Fix of the Day #25: Redwood Recruiting: the ESS and OSCS index ingest jobs must all succeed, or the data won't load Part of my Oracl...