Skip to content
IT Canvass
Troubleshooting · Lesson

Performance issues

Quick answer

Performance issues trace to database bottlenecks, oversized tasks, JVM limits or missing partitioning. Measure before changing anything.

Key takeaways

  • Symptom: The platform is slow: tasks, UI or provisioning are sluggish.
  • Most likely causes
  • Step-by-step fixes
  • How to prevent recurrence

The platform is slow, aggregation and refresh take too long, the UI lags, or provisioning is sluggish. Performance problems are almost always traceable to the database, unpartitioned heavy tasks, or JVM sizing, but you must measure to know which.

Start here: read the evidence

Baseline where time is actually spent before changing anything, task durations, database query times, GC behaviour. Blind tuning usually makes things worse; measurement points you at the real bottleneck.

Likely causes, in order

  • Database bottleneck, missing indexes, poor query plans, or an under-sized instance (the usual first cause).
  • Unpartitioned heavy tasks running single-threaded for hours.
  • Undersized JVM heap causing constant garbage collection.
  • Full instead of delta aggregation on large sources.
  • Custom rules querying the database per identity.

How to fix it

  • Baseline task times, DB query times and GC before tuning.
  • Add or verify database indexes, including for searched extended attributes.
  • Partition heavy aggregations and refreshes.
  • Enable delta aggregation where supported.
  • Right-size the JVM heap and connection pool; move heavy custom queries out of per-identity loops.

Preventing recurrence

Separate UI nodes from task nodes, keep the database properly sized and indexed, load-test before adding population or applications, and review custom rules for per-identity database calls.

Common pitfalls

  • Guessing instead of reading the task/transaction result, which usually names the cause.
  • Fixing the symptom, not the root cause, so it returns.
  • Changing several things at once, so you cannot tell what worked.

Want to learn this properly?

Our live, instructor-led SailPoint Training covers this hands-on, with real projects and a certification path.

Check your understanding

  1. What usually causes slowness?

    • A. Partition heavy tasks and use delta aggregation.
    • B. Database bottlenecks, unpartitioned tasks and JVM/limits issues.
    • C. Measure to find where time is actually spent.
    Show answer

    B. Database bottlenecks, unpartitioned tasks and JVM/limits issues.

    Database bottlenecks, unpartitioned tasks and JVM/limits issues.

  2. What should you do first?

    • A. Partition heavy tasks and use delta aggregation.
    • B. Measure to find where time is actually spent.
    • C. Database bottlenecks, unpartitioned tasks and JVM/limits issues.
    Show answer

    B. Measure to find where time is actually spent.

    Measure to find where time is actually spent.

  3. A key task-level fix?

    • A. Measure to find where time is actually spent.
    • B. Partition heavy tasks and use delta aggregation.
    • C. Database bottlenecks, unpartitioned tasks and JVM/limits issues.
    Show answer

    B. Partition heavy tasks and use delta aggregation.

    Partition heavy tasks and use delta aggregation.

Frequently asked questions

What does the term Performance issues refer to in SailPoint?

The platform is slow, aggregation and refresh take too long, the UI lags, or provisioning is sluggish. Performance problems are almost always traceable to the database, unpartitioned heavy tasks, or JVM sizing, but you must measure to know which.

What is the practical takeaway on Performance issues?

Separate UI nodes from task nodes, keep the database properly sized and indexed, load-test before adding population or applications, and review custom rules for per-identity database calls.

What is worth remembering about Performance issues in practice?

Database bottleneck, missing indexes, poor query plans, or an under-sized instance (the usual first cause). Unpartitioned heavy tasks running single-threaded for hours. Undersized JVM heap causing constant garbage collection.

What tends to go wrong with Performance issues?

Guessing instead of reading the task/transaction result, which usually names the cause. Fixing the symptom, not the root cause, so it returns. Changing several things at once, so you cannot tell what worked.
CallWhatsAppEnquire