@@ -206,51 +206,49 @@ def bind(self, database):
206206 )
207207 self ._database_role = self ._database_role or self ._database .database_role
208208
209- with trace_call ("CloudSpanner.BatchCreateSessions" , self ) as span :
210- requested_session_count = self .size - self ._sessions .qsize ()
211- span_event_attributes = {"kind" : type (self ).__name__ }
212- request = BatchCreateSessionsRequest (
213- database = database .name ,
214- session_count = requested_session_count ,
215- session_template = Session (creator_role = self .database_role ),
216- )
217-
218- if requested_session_count > 0 :
219- add_span_event (
220- span ,
221- f"Requesting { requested_session_count } sessions" ,
222- span_event_attributes ,
223- )
209+ requested_session_count = self .size - self ._sessions .qsize ()
210+ request = BatchCreateSessionsRequest (
211+ database = database .name ,
212+ session_count = requested_session_count ,
213+ session_template = Session (creator_role = self .database_role ),
214+ )
224215
225- if self ._sessions .full ():
226- add_span_event (
227- span , "Session pool is already full" , span_event_attributes
228- )
229- return
216+ span = get_current_span ()
217+ span_event_attributes = {"kind" : type (self ).__name__ }
218+ if requested_session_count > 0 :
219+ add_span_event (
220+ span ,
221+ f"Requesting { requested_session_count } sessions" ,
222+ span_event_attributes ,
223+ )
230224
231- returned_session_count = 0
232- while not self ._sessions .full ():
233- request .session_count = requested_session_count - self ._sessions .qsize ()
234- add_span_event (
235- span ,
236- f"Creating { request .session_count } sessions" ,
237- span_event_attributes ,
238- )
239- resp = api .batch_create_sessions (
240- request = request ,
241- metadata = metadata ,
242- )
243- for session_pb in resp .session :
244- session = self ._new_session ()
245- session ._session_id = session_pb .name .split ("/" )[- 1 ]
246- self ._sessions .put (session )
247- returned_session_count += 1
225+ if self ._sessions .full ():
226+ add_span_event (span , "Session pool is already full" , span_event_attributes )
227+ return
248228
229+ returned_session_count = 0
230+ while not self ._sessions .full ():
231+ request .session_count = requested_session_count - self ._sessions .qsize ()
249232 add_span_event (
250233 span ,
251- f"Requested for { requested_session_count } sessions, returned { returned_session_count } " ,
234+ f"Creating { request . session_count } sessions" ,
252235 span_event_attributes ,
253236 )
237+ resp = api .batch_create_sessions (
238+ request = request ,
239+ metadata = metadata ,
240+ )
241+ for session_pb in resp .session :
242+ session = self ._new_session ()
243+ session ._session_id = session_pb .name .split ("/" )[- 1 ]
244+ self ._sessions .put (session )
245+ returned_session_count += 1
246+
247+ add_span_event (
248+ span ,
249+ f"Requested for { requested_session_count } sessions, returned { returned_session_count } " ,
250+ span_event_attributes ,
251+ )
254252
255253 def get (self , timeout = None ):
256254 """Check a session out from the pool.
0 commit comments