- Notifications
You must be signed in to change notification settings - Fork321
Closed
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. FollowingBigQuery 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_idThen, 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 referredhere