# Oracle EBS Concurrent Request Purge Retention and Disk Calculator

> Source: https://netray.co/tools/oracle-ebs-concurrent-request-purge-and-disk-calculator
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Estimate how much disk the concurrent request log and output files use, and how large FND_CONCURRENT_REQUESTS stays, for a given Purge Concurrent Request and/or Manager Data (FNDCPPUR) Age value.

## Category

oracle

## Erp

Oracle E-Business Suite

## Audience

- Oracle Apps DBA
- EBS system administrator
- EBS technical consultant
- Infrastructure engineer

## Tool

**Kind:** calculator

**Inputs:**

#### Concurrent requests per day

**Key:** per_day

**Type:** number

**Default:** 8000

**Min:** 1

**Step:** 100

**Unit:** requests

**Help:** Replace with a real count: completed requests in FND_CONCURRENT_REQUESTS grouped by TRUNC(ACTUAL_COMPLETION_DATE), averaged over recent weeks.

#### Average request log file size

**Key:** log_kb

**Type:** number

**Default:** 20

**Min:** 0

**Step:** 1

**Unit:** KB

**Help:** Average of LFILE_SIZE (bytes) in FND_CONCURRENT_REQUESTS divided by 1024, or measure the files under the log directory.

#### Average request output file size

**Key:** out_kb

**Type:** number

**Default:** 150

**Min:** 0

**Step:** 5

**Unit:** KB

**Help:** Average of OFILE_SIZE (bytes) divided by 1024. Many programs write no output, so average over all requests, not only reports.

#### Share of requests with XML Publisher output

**Key:** xml_share

**Type:** slider

**Default:** 30

**Min:** 0

**Max:** 100

**Step:** 1

**Unit:** %

**Help:** Requests whose XML data output is post-processed by the Output Post Processor into a second, formatted file (PDF, RTF, Excel).

#### Extra file per XML Publisher request

**Key:** xml_kb

**Type:** number

**Default:** 200

**Min:** 0

**Step:** 10

**Unit:** KB

**Help:** Size of the additional formatted output created by the Output Post Processor, on top of the request output file.

#### Purge Age (Mode Value, days)

**Key:** retention

**Type:** slider

**Default:** 30

**Min:** 1

**Max:** 365

**Step:** 1

**Unit:** days

**Help:** Mode = Age, Mode Value = days of request history, log and output files to keep.

#### FND_CONCURRENT_REQUESTS bytes per row incl. indexes

**Key:** row_bytes

**Type:** number

**Default:** 2000

**Min:** 100

**Step:** 100

**Unit:** bytes

**Help:** Segment bytes of the table plus its indexes divided by its row count, from DBA_SEGMENTS and DBA_TABLES.

#### Child rows per request

**Key:** pp_rows

**Type:** number

**Default:** 2

**Min:** 0

**Step:** 1

**Unit:** rows

**Help:** Rows in related FND tables per request, for example FND_CONC_REQUEST_ARGUMENTS and FND_RUN_REQUESTS (request set members), which the purge also clears.

#### Bytes per child row

**Key:** pp_bytes

**Type:** number

**Default:** 500

**Min:** 50

**Step:** 50

**Unit:** bytes

**Help:** Average segment bytes per child row including indexes.

**Outputs:**

#### Requests kept at steady state

**Key:** steady_state

**Expr:** per_day * retention

**Format:** integer

**Description:** Rows in FND_CONCURRENT_REQUESTS once the purge runs daily. Also the Mode = Count value that keeps the same history.

#### Average file KB per request

**Key:** kb_per_request

**Expr:** log_kb + out_kb + (xml_share / 100) * xml_kb

**Format:** decimal

**Description:** Log plus output plus the XML Publisher share of the extra formatted file.

#### Log and output disk at steady state (GB)

**Key:** file_disk_gb

**Expr:** per_day * retention * kb_per_request / 1048576

**Format:** decimal

**Primary:** true

**Description:** KB divided by 1,048,576 gives binary GB (GiB). Size the filesystem holding APPLCSF for this plus headroom.

#### FND_CONCURRENT_REQUESTS and child rows (MB)

**Key:** table_mb

**Expr:** steady_state * (row_bytes + pp_rows * pp_bytes) / 1048576

**Format:** decimal

**Description:** Approximate segment space held by request history at steady state.

#### Growth per day without purge (GB)

**Key:** daily_growth_without_purge_gb

**Expr:** per_day * kb_per_request / 1048576 + per_day * (row_bytes + pp_rows * pp_bytes) / 1073741824

**Format:** decimal

**Description:** Files plus table rows added every day if FNDCPPUR is not scheduled.

#### Growth per year without purge (GB)

**Key:** yearly_growth_without_purge_gb

**Expr:** daily_growth_without_purge_gb * 365

**Format:** decimal

**Chart:**

#### Disk (GB) and table space (MB) versus purge Age in days

**Type:** line

**X:** retention

**From:** 7

**To:** 180

**Steps:** 30

**Series:**

- file_disk_gb
- table_mb

**Disclaimer:** Defaults are assumptions. Replace them with counts and averages from FND_CONCURRENT_REQUESTS and the file system on your instance. Retention must also satisfy your audit and records policy.

## Content

**Intro:** This calculator sizes the effect of the Age parameter of Purge Concurrent Request and/or Manager Data (FNDCPPUR) in Oracle E-Business Suite 12.2: how much disk the request log and output files take and how much space FND_CONCURRENT_REQUESTS and its child rows hold. Change the purge Age and the chart shows both curves from 7 to 180 days.

**Sections:**

#### What FNDCPPUR does and its parameters

**Body:** Purge Concurrent Request and/or Manager Data deletes request log files, manager log files and report output files from the operating system, and deletes history rows from Application Object Library tables. The documented tables are FND_CONCURRENT_REQUESTS, FND_RUN_REQUESTS, FND_CONC_REQUEST_ARGUMENTS, FND_DUAL, FND_CONCURRENT_PROCESSES and FND_CONC_STAT_LIST. You submit it from the System Administrator responsibility and can schedule it to resubmit itself.

**Bullets:**

- Entity: All (requests, managers and their files), Manager, or Request.
- Mode: Age keeps the last N days; Count keeps the N most recent records.
- Mode Value: days for Age or records for Count, valid 1 to 9999999.
- Optional filters: Oracle ID, User Name, Responsibility Application, Responsibility, Program Application, Program, Manager Application, Manager.
- Report: Yes lists the number of records purged. Purge Other: Yes also deletes FND_DUAL rows.

#### The formulas and where the files live

**Body:** With Mode = Age and a daily schedule, the history settles at requests per day times the Age, because each run deletes one day as another is added. File disk is that count times the average KB per request (log plus output plus the XML Publisher share of the extra formatted file), divided by 1,048,576 to get GB. Table space is the same count times bytes per row including indexes and child rows. These are steady-state averages, not an Oracle sizing formula. Under the default single file scheme (APPLLDM = single), request logs go to $APPLCSF/log and outputs to $APPLCSF/out; the product and user schemes, and the date and request ID schemes added in 12.2.6, create subdirectories under $APPLCSF instead. The purge removes files wherever they are, but empty subdirectories created by those schemes are left behind for you to clean up.

#### Worked example

**Body:** At 8,000 requests a day, 20 KB logs, 150 KB outputs and 30% of requests adding a 200 KB formatted file, the average is 230 KB per request. A 30-day Age keeps 240,000 requests, about 52.6 GB of files and about 687 MB of table and index space at 2,000 bytes per row plus two 500-byte child rows. Without any purge, the instance grows about 1.8 GB a day, roughly 650 GB a year. Cutting the Age to 14 days drops file disk to about 24.6 GB. The matching Mode = Count value for 30 days is 240,000.

#### Gotchas: audit, Retain for, and scheduling

**Body:** Oracle's sample guideline is to run the purge every 30 days for normal usage and every 14 days for heavy usage; many DBAs instead schedule it daily with a fixed Age so the file system stays flat, which is what this model assumes. Purging removes audit detail: the Signon Audit Concurrent Requests report and the Concurrent Request Statistics by Program report read FND_CONCURRENT_REQUESTS, so agree the Age with audit and finance before lowering it. A program defined with a Retain for value (days) on the HTML Concurrent Programs page keeps its requests for that many days even when the purge runs. Use the Program filter to purge chatty programs on a shorter Age than the default run.

**Cta:** If you want your DBAs to ask EBS about request volumes, slow programs and purge history in plain English on your own servers, we can set that up read-only.

**Faq:**

#### What is the concurrent request table in Oracle EBS?

**Answer:** FND_CONCURRENT_REQUESTS holds one row per request with its program, requester, phase and status codes, dates, and log and output file names. Related history sits in FND_RUN_REQUESTS for request sets, FND_CONC_REQUEST_ARGUMENTS for arguments, and FND_CONCURRENT_PROCESSES for manager processes. FNDCPPUR purges these tables, depending on the Entity you choose.

#### Which Oracle R12 concurrent request tables does the purge clear?

**Answer:** The System Administrator guide for 12.2 lists FND_CONCURRENT_REQUESTS, FND_RUN_REQUESTS, FND_CONC_REQUEST_ARGUMENTS, FND_DUAL, FND_CONCURRENT_PROCESSES and FND_CONC_STAT_LIST. FND_DUAL is only cleared when Purge Other is Yes. Count other request-related tables on your instance before and after a run to confirm their behaviour on your release.

#### Should I use Mode Age or Mode Count?

**Answer:** Age is easier to reason about for audit because it maps to a time window, and disk use follows request volume. Count caps the number of requests kept, so disk stays bounded even if volume spikes, but the time window shrinks on busy days. This calculator shows the Count value equivalent to your chosen Age.

#### How do I get real inputs instead of the defaults?

**Answer:** Count completed requests per day from FND_CONCURRENT_REQUESTS by TRUNC(ACTUAL_COMPLETION_DATE). Average LFILE_SIZE and OFILE_SIZE for file sizes, and compare with du on the log and out directories. For row bytes, divide the table and index segment bytes in DBA_SEGMENTS by the row count.

## Search terms

oracle ebs concurrent request table, oracle r12 concurrent request tables, oracle ebs concurrent programs, concurrent program in oracle r12, purge concurrent request and/or manager data, fndcppur parameters, fnd_concurrent_requests purge, oracle ebs log and output file cleanup

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
