Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Reporting] Selectively partition async calls in generating CSV #120426

Closed
tsullivan opened this issue Dec 3, 2021 · 3 comments
Closed

[Reporting] Selectively partition async calls in generating CSV #120426

tsullivan opened this issue Dec 3, 2021 · 3 comments
Labels
bug Fixes for quality problems that affect the customer experience (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead Feature:Reporting:CSV Reporting issues pertaining to CSV file export impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. loe:medium Medium Level of Effort needs-team Issues missing a team label

Comments

@tsullivan
Copy link
Member

#120309 changed CSV to asynchronously generate each row of content, rather than synchronously. This solved problems with CSV generation adding a single huge task to the Event Queue.

Problem: now that generating each row of CSV content is asynchronous, there is a log of context switching as there are as many async partitions as there are rows in the output CSV.

Solution: we can remediate the high amount of context switching by adding in async calls every N iterations of looping over each row.

We need to set up some performance tests to find what an ideal N value is.

@tsullivan tsullivan added the bug Fixes for quality problems that affect the customer experience label Dec 3, 2021
@botelastic botelastic bot added the needs-team Issues missing a team label label Dec 3, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-reporting-services (Team:Reporting Services)

@botelastic botelastic bot removed the needs-team Issues missing a team label label Dec 3, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-app-services (Team:AppServicesUx)

@exalate-issue-sync exalate-issue-sync bot added impact:needs-assessment Product and/or Engineering needs to evaluate the impact of the change. loe:small Small Level of Effort impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. loe:medium Medium Level of Effort and removed impact:needs-assessment Product and/or Engineering needs to evaluate the impact of the change. loe:small Small Level of Effort labels Dec 3, 2021
@tsullivan
Copy link
Member Author

Closing this for now, since the impact seems low, and the cost of measuring the improvement seems high. We can always re-open this later if it starts to make better sense to do this.

@sophiec20 sophiec20 added the (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead label Aug 21, 2024
@botelastic botelastic bot added the needs-team Issues missing a team label label Aug 21, 2024
@sophiec20 sophiec20 added Feature:Reporting:CSV Reporting issues pertaining to CSV file export and removed (Deprecated) Team:Reporting Services labels Aug 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Fixes for quality problems that affect the customer experience (Deprecated) Feature:Reporting Use Reporting:Screenshot, Reporting:CSV, or Reporting:Framework instead Feature:Reporting:CSV Reporting issues pertaining to CSV file export impact:medium Addressing this issue will have a medium level of impact on the quality/strength of our product. loe:medium Medium Level of Effort needs-team Issues missing a team label
Projects
None yet
Development

No branches or pull requests

3 participants