Common Job Resource Classes

Base classes and helpers for job classes.

class google.cloud.bigquery.job.base.ReservationUsage(name, slot_ms)

Job resource usage for a reservation.

Create new instance of ReservationUsage(name, slot_ms)

count(value, /)

Return number of occurrences of value.

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

name()

Reservation name or “unreserved” for on-demand resources usage.

slot_ms()

Total slot milliseconds used by the reservation for a particular job.

class google.cloud.bigquery.job.base.ScriptStackFrame(resource)

Stack frame showing the line/column/procedure name where the current evaluation happened.

  • Parameters

    resource (Map[str, **Any]) – JSON representation of object.

property end_column()

One-based end column.

property end_line()

One-based end line.

property procedure_id()

Name of the active procedure.

Omitted if in a top-level script.

  • Type

    Optional[str]

property start_column()

One-based start column.

property start_line()

One-based start line.

property text()

Text of the current statement/expression.

class google.cloud.bigquery.job.base.ScriptStatistics(resource)

Statistics for a child job of a script.

  • Parameters

    resource (Map[str, **Any]) – JSON representation of object.

property evaluation_kind(: Optional[str )

Indicates the type of child job.

Possible values include STATEMENT and EXPRESSION.

property stack_frames(: Sequence[google.cloud.bigquery.job.base.ScriptStackFrame )

Stack trace where the current evaluation happened.

Shows line/column/procedure name of each frame on the stack at the point where the current evaluation happened.

The leaf frame is first, the primary script is last.

class google.cloud.bigquery.job.base.SessionInfo(resource)

[Preview] Information of the session if this job is part of one.

Versionadded: New in version 2.29.0.

  • Parameters

    resource (Map[str, **Any]) – JSON representation of object.

property session_id(: Optional[str )

The ID of the session.

class google.cloud.bigquery.job.base.TransactionInfo(transaction_id: str)

[Alpha] Information of a multi-statement transaction.

https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#TransactionInfo

Versionadded: New in version 2.24.0.

Create new instance of TransactionInfo(transaction_id,)

count(value, /)

Return number of occurrences of value.

index(value, start=0, stop=9223372036854775807, /)

Return first index of value.

Raises ValueError if the value is not present.

transaction_id(: [str](https://python.readthedocs.io/en/latest/library/stdtypes.html#str )

Output only. ID of the transaction.

class google.cloud.bigquery.job.base.UnknownJob(job_id, client)

A job whose type cannot be determined.

add_done_callback(fn)

Add a callback to be executed when the operation is complete.

If the operation is not already complete, this will start a helper thread to poll for the status of the operation in the background.

  • Parameters

    fn (Callable[Future]) – The callback to execute when the operation is complete.

cancel(client=None, retry: typing.Optional[google.api_core.retry.retry_unary.Retry] = <google.api_core.retry.retry_unary.Retry object>, timeout: typing.Optional[float] = None)

API call: cancel job via a POST request

See https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs/cancel

  • Parameters

    • client (Optional[google.cloud.bigquery.client.Client]) – the client to use. If not passed, falls back to the client stored on the current dataset.

    • retry (Optional[google.api_core.retry.Retry]) – How to retry the RPC.

    • timeout (Optional[float]) – The number of seconds to wait for the underlying HTTP transport before using retry

  • Returns

    Boolean indicating that the cancel request was sent.

  • Return type

    bool

cancelled()

Check if the job has been cancelled.

This always returns False. It’s not possible to check if a job was cancelled in the API. This method is here to satisfy the interface for google.api_core.future.Future.

  • Returns

    False

  • Return type

    bool

property configuration(: google.cloud.bigquery.job.base._JobConfi )

Job-type specific configurtion.

property created()

Datetime at which the job was created.

  • Returns

    the creation time (None until set from the server).

  • Return type

    Optional[datetime.datetime]

done(retry: google.api_core.retry.retry_unary.Retry = <google.api_core.retry.retry_unary.Retry object>, timeout: typing.Optional[float] = None, reload: bool = True)

Checks if the job is complete.

  • Parameters

    • retry (Optional[google.api_core.retry.Retry]) – How to retry the RPC. If the job state is DONE, retrying is aborted early, as the job will not change anymore.

    • timeout (Optional[float]) – The number of seconds to wait for the underlying HTTP transport before using retry.

    • reload (Optional[bool]) – If True, make an API call to refresh the job state of unfinished jobs before checking. Default True.

  • Returns

    True if the job is complete, False otherwise.

  • Return type

    bool

property ended()

Datetime at which the job finished.

  • Returns

    the end time (None until set from the server).

  • Return type

    Optional[datetime.datetime]

property error_result()

Error information about the job as a whole.

  • Returns

    the error information (None until set from the server).

  • Return type

    Optional[Mapping]

property errors()

Information about individual errors generated by the job.

  • Returns

    the error information (None until set from the server).

  • Return type

    Optional[List[Mapping]]

property etag()

ETag for the job resource.

  • Returns

    the ETag (None until set from the server).

  • Return type

    Optional[str]

exception(timeout=

Get the exception from the operation, blocking if necessary.

See the documentation for the result() method for details on how this method operates, as both result and this method rely on the exact same polling logic. The only difference is that this method does not accept retry and polling arguments but relies on the default ones instead.

  • Parameters

    • timeout (int) – How long to wait for the operation to complete.

    • None (If) –

    • indefinitely. (wait) –

  • Returns

    The operation’s

      error.
    
  • Return type

    Optional[google.api_core.GoogleAPICallError]

exists(client=None, retry: google.api_core.retry.retry_unary.Retry = <google.api_core.retry.retry_unary.Retry object>, timeout: typing.Optional[float] = None)

API call: test for the existence of the job via a GET request

See https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs/get

  • Parameters

    • client (Optional[google.cloud.bigquery.client.Client]) – the client to use. If not passed, falls back to the client stored on the current dataset.

    • retry (Optional[google.api_core.retry.Retry]) – How to retry the RPC.

    • timeout (Optional[float]) – The number of seconds to wait for the underlying HTTP transport before using retry.

  • Returns

    Boolean indicating existence of the job.

  • Return type

    bool

classmethod from_api_repr(resource: dict, client)

Construct an UnknownJob from the JSON representation.

  • Parameters

  • Returns

    Job corresponding to the resource.

  • Return type

    UnknownJob

property job_id()

ID of the job.

property job_type()

Type of job.

  • Returns

    one of ‘load’, ‘copy’, ‘extract’, ‘query’.

  • Return type

    str

property labels()

Labels for the job.

property location()

Location where the job runs.

property num_child_jobs()

The number of child jobs executed.

See: https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#JobStatistics.FIELDS.num_child_jobs

  • Returns

    int

property parent_job_id()

Return the ID of the parent job.

See: https://cloud.google.com/bigquery/docs/reference/rest/v2/Job#JobStatistics.FIELDS.parent_job_id

  • Returns

    parent job id.

  • Return type

    Optional[str]

property path()

URL path for the job’s APIs.

  • Returns

    the path based on project and job ID.

  • Return type

    str

property project()

Project bound to the job.

  • Returns

    the project (derived from the client).

  • Return type

    str

reload(client=None, retry: google.api_core.retry.retry_unary.Retry = <google.api_core.retry.retry_unary.Retry object>, timeout: typing.Optional[float] = None)

API call: refresh job properties via a GET request.

See https://cloud.google.com/bigquery/docs/reference/rest/v2/jobs/get

  • Parameters

    • client (Optional[google.cloud.bigquery.client.Client]) – the client to use. If not passed, falls back to the client stored on the current dataset.

    • retry (Optional[google.api_core.retry.Retry]) – How to retry the RPC.

    • timeout (Optional[float]) – The number of seconds to wait for the underlying HTTP transport before using retry.

property reservation_usage()

Job resource usage breakdown by reservation.

result(retry: typing.Optional[google.api_core.retry.retry_unary.Retry] = <google.api_core.retry.retry_unary.Retry object>, timeout: typing.Optional[float] = None)

Start the job and wait for it to complete and get the result.

  • Parameters

    • retry (Optional[google.api_core.retry.Retry]) – How to retry the RPC. If the job state is DONE, retrying is aborted early, as the job will not change anymore.

    • timeout (Optional[float]) – The number of seconds to wait for the underlying HTTP transport before using retry. If multiple requests are made under the hood, timeout applies to each individual request.

  • Returns

    This instance.

  • Return type

    _AsyncJob

  • Raises

running()

True if the operation is currently running.

property script_statistics(: Optional[google.cloud.bigquery.job.base.ScriptStatistics )

Statistics for a child job of a script.

URL for the job resource.

  • Returns

    the URL (None until set from the server).

  • Return type

    Optional[str]

property session_info(: Optional[google.cloud.bigquery.job.base.SessionInfo )

[Preview] Information of the session if this job is part of one.

Versionadded: New in version 2.29.0.

set_exception(exception)

Set the Future’s exception.

set_result(result)

Set the Future’s result.

property started()

Datetime at which the job was started.

  • Returns

    the start time (None until set from the server).

  • Return type

    Optional[datetime.datetime]

property state()

Status of the job.

  • Returns

    the state (None until set from the server).

  • Return type

    Optional[str]

to_api_repr()

Generate a resource for the job.

property transaction_info(: Optional[google.cloud.bigquery.job.base.TransactionInfo )

Information of the multi-statement transaction if this job is part of one.

Since a scripting query job can execute multiple transactions, this property is only expected on child jobs. Use the google.cloud.bigquery.client.Client.list_jobs() method with the parent_job parameter to iterate over child jobs.

Versionadded: New in version 2.24.0.

property user_email()

E-mail address of user who submitted the job.

  • Returns

    the URL (None until set from the server).

  • Return type

    Optional[str]