-
Notifications
You must be signed in to change notification settings - Fork 321
Closed
Labels
api: bigqueryIssues related to the googleapis/python-bigquery API.Issues related to the googleapis/python-bigquery API.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.‘Nice-to-have’ improvement, new feature or different behavior or design.
Description
Is your feature request related to a problem? Please describe.
We would like to have one BQ client to start a session and run queries in the session. Following BigQuery documents, we can start a session and get the session id through:
bqclient = bigquery.Client()
job_config = bigquery.QueryJobConfig(create_session=True)
query_job = self.bqclient.query("SELECT 1", job_config=job_config)
session_id = query_job.session_info.session_id
Then, we can set the _default_query_job_config with the session_id. Here, we want to reuse the bqclient object to avoid additional connection time(e.g. authentication etc).
bqclient._default_query_job_config = bigquery.QueryJobConfig(
connection_properties=[
bigquery.ConnectionProperty("session_id", session_id)
]
)
However, it is not in the best practice to call the private properties of BQ client.
Describe the solution you'd like
Can we expose the default_query_job_config property public and its setter in BQ client.
Additional context
Internal bug can be referred here
Metadata
Metadata
Assignees
Labels
api: bigqueryIssues related to the googleapis/python-bigquery API.Issues related to the googleapis/python-bigquery API.type: feature request‘Nice-to-have’ improvement, new feature or different behavior or design.‘Nice-to-have’ improvement, new feature or different behavior or design.