orbeon / orbeon/orbeon-forms

Warn in logs if we detect, at runtime, a "large" form

Open
#7,253 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area: Performance Module: Form Runner Module: XForms Type: RFE
Dominant language
Scala
Stars
545
Forks
215
Avg merge
1d 17h
Merged PRs (30d)
11

Description

We cannot know the size of a form in memory, we can only approximate it. Areas that we can easily detect:

  • number of dynamic form controls
  • size of XML instances (data, or datasets) (can be estimated)

We could, as a start, check those values and log them above a certain configurable threshold. For example:

WARNING - Form acme/sales/1 has 2412 form controls (threshold: 2000)
WARNING - Form acme/sales/1 has instance `my-dataset` consuming 10 MB (threshold: 1 MB)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing runtime form processing for dynamic form controls and XML instances, then identify the existing logging configuration and threshold mechanisms. The work is done when configurable thresholds produce warnings containing the form, control count or instance size, and threshold without attempting to measure total in-memory size.

Written by the indexing model from the issue text.

Assessment

Tech stack
scala
Domain
backend, observability
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.