Uploaded image for project: 'Picard'
  1. Picard
  2. PICARD-581

Picard XML processing should use lxml module rather than QXmlStreamReader

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Low
    • Resolution: Fixed
    • Affects Version/s: 1.2
    • Fix Version/s: 2.0
    • Component/s: Other
    • Labels:
      None

      Description

      Analysis of Picard code performance requested by Michael Wiencek indicated that a significant level of CPU time is spent processing webservice xml using bespoke loop and QXmlStreamReader to produce a list / dict hierarchy that is then navigated.

      An improvement would be to use the python standard xml.etree.cElementTree module, however this would not produce the same object as the existing code, and therefore all code that navigates the existing hierarchy would need to change to use the etree interface.

      This would be a significant change, not to be undertaken lightly, but would improve performance and make xml processing more standard.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              sophist Sophist
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: