Skip to content

Commit

Permalink
Propagate query_timeout_seconds option for direct-access jobs. (#171)
Browse files Browse the repository at this point in the history
  • Loading branch information
airwoodix authored Jun 21, 2024
1 parent 1c0fc7d commit 7ccb55f
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 3 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

* Support direct-access mode on AQT devices (#164)
* Support up to 2000 shots per circuit on cloud resources (#165)
* Fix result timeout propagation in direct-access mode (#171)

## qiskit-aqt-provider v1.5.0

Expand Down
4 changes: 3 additions & 1 deletion qiskit_aqt_provider/aqt_job.py
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,9 @@ def result(self) -> Result:
for circuit_index, circuit in enumerate(self.circuits):
api_circuit = self.api_submit_payload.payload.circuits[circuit_index]
job_id = self._backend.submit(api_circuit)
api_result = self._backend.result(job_id)
api_result = self._backend.result(
job_id, timeout=self.options.query_timeout_seconds
)

if isinstance(api_result.payload, JobResultError):
break
Expand Down
5 changes: 3 additions & 2 deletions qiskit_aqt_provider/aqt_resource.py
Original file line number Diff line number Diff line change
Expand Up @@ -337,18 +337,19 @@ def submit(self, circuit: api_models.QuantumCircuit) -> UUID:
resp.raise_for_status()
return UUID(resp.json())

def result(self, job_id: UUID) -> api_models_direct.JobResult:
def result(self, job_id: UUID, *, timeout: Optional[float]) -> api_models_direct.JobResult:
"""Query the result of a specific job.
Block until a result (success or error) is available.
Args:
job_id: unique identifier of the target job.
timeout: query timeout, in seconds. Disabled if `None`.
Returns:
Job result, as API payload.
"""
resp = self._http_client.get(f"/circuit/result/{job_id}")
resp = self._http_client.get(f"/circuit/result/{job_id}", timeout=timeout)
resp.raise_for_status()
return api_models_direct.JobResult.model_validate(resp.json())

Expand Down

0 comments on commit 7ccb55f

Please sign in to comment.