From 2f76ef0de9bf9004db2a2560e5153fb394d33e19 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Sat, 21 Oct 2023 08:44:06 +0000 Subject: [PATCH] Fix calling backend.name() for backendV2 (#11065) (#11076) * add check for backend version to get backend name * move backend_interface_version * check backend is None before get version * Update qiskit/utils/backend_utils.py Co-authored-by: Matthew Treinish * Update releasenotes/notes/fix_backend_name-e84661707058b529.yaml Co-authored-by: Matthew Treinish --------- Co-authored-by: Matthew Treinish (cherry picked from commit d781dcc09b0c19098de35da56c15b2602e2e0385) Co-authored-by: Jun Doi --- qiskit/utils/backend_utils.py | 15 ++++++++++----- .../notes/fix_backend_name-e84661707058b529.yaml | 7 +++++++ 2 files changed, 17 insertions(+), 5 deletions(-) create mode 100644 releasenotes/notes/fix_backend_name-e84661707058b529.yaml diff --git a/qiskit/utils/backend_utils.py b/qiskit/utils/backend_utils.py index 7f71a7c91897..df89d7f194da 100644 --- a/qiskit/utils/backend_utils.py +++ b/qiskit/utils/backend_utils.py @@ -181,16 +181,21 @@ def is_statevector_backend(backend): Returns: bool: True is statevector """ + if backend is None: + return False + backend_interface_version = _get_backend_interface_version(backend) if has_aer(): from qiskit.providers.aer.backends import AerSimulator, StatevectorSimulator if isinstance(backend, StatevectorSimulator): return True - if isinstance(backend, AerSimulator) and "aer_simulator_statevector" in backend.name(): - return True - if backend is None: - return False - backend_interface_version = _get_backend_interface_version(backend) + if isinstance(backend, AerSimulator): + if backend_interface_version <= 1: + name = backend.name() + else: + name = backend.name + if "aer_simulator_statevector" in name: + return True if backend_interface_version <= 1: return backend.name().startswith("statevector") else: diff --git a/releasenotes/notes/fix_backend_name-e84661707058b529.yaml b/releasenotes/notes/fix_backend_name-e84661707058b529.yaml new file mode 100644 index 000000000000..ed0cbe9a2658 --- /dev/null +++ b/releasenotes/notes/fix_backend_name-e84661707058b529.yaml @@ -0,0 +1,7 @@ +--- +fixes: + - | + Fixed an issue in the :class:`.QuantumInstance` class where it was assuming + all ``AerSimulator`` backends were always :class:`.BackendV1`. This would cause + combatibility issues with the 0.13.0 release of ``qiskit-aer`` which is starting to + use :class:`.BackendV2` for `AerSimulator`` backends.