Page MenuHomePhabricator

Profile SimpleEditType to identify inefficiencies in mwedittype
Open, Needs TriagePublic

Description

While most processing time might come from kafka-flink configuration, it might be worth a look to find places in mwedittypes that might be bottlenecks, especially for really large edits. Right now we are using SimpleEditTypes, hence this is less of a concern. But if StrcuturedEditType is used in the future, such profiling will most certainly be required. Nevertheless, since SimpleEditTypes will be running in production, it is best to identify issues beforehand.

Note: We are still debugging kafka-flink configuration that are the main reasons for slow streaming pipelines. See T421216 and T421026. If we find, even after the tunings are done, the edit-types pipeline is slower than we expect, this task becomes more relevant. Specifically for SimpleEditTypes.

Done:

  • Profile SimpleEditType: execution time and memory. Identify bottlenecks, inefficiencies, and memory leaks
  • Document findings
  • Identify priority and create tasks for fixes if issues found

Event Timeline

Ahoelzl subscribed.

We should clarify if StructuredEditType needs to be supported.

To assess the need to profile mwedittypes library, we need some details on who is using or wants to use StructuredEditTypes. @Isaac, @fkaelin: Would you have insight into these requirements?
cc: @Ottomata

If there is good need of StructuredEditTypes, profiling mwedittypes (Simple and Structured) task be taken up now with some priority.

Note: If we end up doing a larger discussion and assessment of StructuredEditTypes and its profiling, will create another ticket for those. This ticket is specifically or SimpleEditTypes as it relates to the current edit-types streaming pipeline we have deployed (T410940).

At this point, I think the key things re: Structured to keep in mind:

  • At this point, we don't have a Product OKR requirement that depends on StructuredEditTypes but I could easily expect one in the future -- e.g., I'm currently using it in a research hypothesis at T414816: [WE1.7.3] Exploration of automated verifiability checks to detect new citations within edits. Fabian needed it for another product exploration in T406827 (NDA so might not be able to view).
  • It has some shared utilities within Simple so we just need to keep that in mind when making changes.
  • I would agree with Aisha of keeping the focus on Simple for now. StructuredEditTypes are more complicated and prone to breaking if you make the wrong change. I would just ask that we document the approach well as hopefully whatever process we use for Simple can be extended to Structured with relatively little effort if we decide to do profiling there.