Skip to content

[Due for payment 2025-09-19] [Due for payment 2025-09-17] Reduce useOnyx calls on list-item level in TransactionItemRowRBRWithOnyx. #67165

Closed

Description

@mountiny

Coming from here

Background:

The transaction list displays many items per report, each rendering with related data like violations. These components rely on hooks to fetch the data required for each item.

Problem:

When each transaction item makes multiple data subscriptions via useTransactionViolations hook, it causes excessive re-renders and slowness in large transaction lists.

Solution:

Move violation data fetching to the parent transaction list component using useReportWithTransactionsAndViolations, which performs a single shared subscription. Pass the resulting violation data down as props to child components like TransactionItemRowRBRWithOnyx and MoneyRequestHeader. This pattern reduces subscriptions from N×4 per report to 1, significantly improving rendering performance while preserving all existing functionality.

Issue OwnerCurrent Issue Owner: @johncschuster

Activity

  1. added
    BugSomething is broken. Auto assigns a BugZero manager.
    on Jul 25, 2025
  2. melvin-bot commented on Jul 25, 2025

    @melvin-bot

    Triggered auto assignment to @johncschuster (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

  3. melvin-bot commented on Jul 28, 2025

    @melvin-bot

    @martasudol Whoops! This issue is 2 days overdue. Let's get this updated quick!

  4. melvin-bot commented on Aug 1, 2025

    @melvin-bot

    @martasudol 6 days overdue. This is scarier than being forced to listen to Vogon poetry!

  5. mountiny commented on Aug 2, 2025

    @mountiny
    ContributorAuthor

    Still on hold, should be ready next week 🙌

  6. changed the title [-][HOLD https://github.com/Expensify/App/issues/63672] Reduce useOnyx calls on list-item level in TransactionItemRowRBRWithOnyx.[/-] [+]Reduce useOnyx calls on list-item level in TransactionItemRowRBRWithOnyx.[/+] on Aug 5, 2025
  7. mountiny commented on Aug 5, 2025

    @mountiny
    ContributorAuthor

    @martasudol not on hold anymore!

  8. melvin-bot commented on Aug 5, 2025

    @melvin-bot

    @martasudol 10 days overdue. Is anyone even seeing these? Hello?

  9. 53 remaining items

  10. melvin-bot commented on Sep 12, 2025

    @melvin-bot

    @dukenv0307 @johncschuster The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button]

  11. moved this from CRITICAL to Done in [#whatsnext] #qualityon Sep 15, 2025
  12. added
    BugSomething is broken. Auto assigns a BugZero manager.
    and removed
    BugSomething is broken. Auto assigns a BugZero manager.
    on Sep 17, 2025
  13. melvin-bot commented on Sep 17, 2025

    @melvin-bot

    Triggered auto assignment to @joekaufmanexpensify (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

  14. johncschuster commented on Sep 17, 2025

    @johncschuster
    Contributor

    @joekaufmanexpensify I've paused my BZ assignments so I can focus my efforts on our churn project. Can you take this the rest of the way?

  15. joekaufmanexpensify commented on Sep 17, 2025

    @joekaufmanexpensify
    Contributor

    Discussing payment because of multiple deploy blockers

  16. joekaufmanexpensify commented on Sep 17, 2025

    @joekaufmanexpensify
    Contributor

    We discussed in slack and settled on $125 for @dukenv0307 given the regression(s) here.

  17. joekaufmanexpensify commented on Sep 17, 2025

    @joekaufmanexpensify
    Contributor

    Payment Summary

  18. joekaufmanexpensify commented on Sep 17, 2025

    @joekaufmanexpensify
    Contributor

    @dukenv0307 please request payment at your earliest convenience. Closing as this is otherwise all set!

  19. quinthar commented on Oct 12, 2025

    @quinthar
    Contributor

    Approved $125 to @dukenv0307

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions