Skip to content

Throughput harness: synthetic_referrals repeats last names every 26 items, so item 26 trips OpenEMR's duplicate check #1349

Closed

Description

@abrichr

What happens

benchmark/openemr_throughput/harness.py synthetic_referrals(n) builds the last name as f"{last}{chr(65 + (i % 26))}", with last = LAST[(i // 32) % 8]. So items 0 and 26 are both "QuillfernA", items 1 and 27 are both "QuillfernB", and so on. Item 26 is created right after item 0 in the same run. OpenEMR's duplicate search then shows a possible match, the program correctly stops at "Confirm Create New Patient" (text_present 'No matches were found.' fails), and the worklist stops.

Seen on 19 October: two 64-item runs (--speed standard and --speed fast) both stopped at item 26 with nothing written. Their summaries are in the harness output, not committed. The scoreboard reran with --items 26 (#1303, Amendment 4).

Fix

Make every name in the batch unique, for example by putting i // 26 into the last name, or by using the index in the letter suffix (A, ..., Z, AA, ...). Add a test that synthetic_referrals(256) has no repeated (fname, lname) pair, and none sharing a last name with an earlier item when OpenEMR's duplicate search would match on it.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions