Skip to content

Commit 4484cfd

Browse files
committed
Initial ExecuteStreamingSql request in snapshot should have the header
1 parent ea0823f commit 4484cfd

File tree

3 files changed

+17
-15
lines changed

3 files changed

+17
-15
lines changed

google/cloud/spanner_v1/_helpers.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -757,7 +757,6 @@ def patched_getattribute(obj, key, *args, **kwargs):
757757
return orig_getattribute(obj, key, *args, **kwargs)
758758

759759
attr = orig_getattribute(obj, key, *args, **kwargs)
760-
print("args", args, "attr.dir", dir(attr))
761760

762761
# 0. If we already patched it, we can return immediately.
763762
if getattr(attr, "_patched", None) is not None:
@@ -772,22 +771,18 @@ def patched_getattribute(obj, key, *args, **kwargs):
772771
if mangled_or_private:
773772
return attr
774773

775-
print("\033[35mattr", attr, "hex_id", hex(id(attr)), "\033[00m")
776-
777774
# 3. Wrap the callable attribute and then capture its metadata keyed argument.
778775
def wrapped_attr(*args, **kwargs):
779776
metadata = kwargs.get("metadata", [])
780777
if not metadata:
781778
# Increment the reinvocation count.
782-
print("not metatadata", attr.__name__)
783779
wrapped_attr._attempt += 1
784780
return attr(*args, **kwargs)
785781

786782
# 4. Find all the headers that match the target header key.
787783
all_metadata = []
788784
for key, value in metadata:
789785
if key is REQ_ID_HEADER_KEY:
790-
print("key", key, "value", value, "attempt", wrapped_attr._attempt)
791786
# 5. Increment the original_attempt with that of our re-invocation count.
792787
splits = value.split(".")
793788
hdr_attempt_plus_reinvocation = (
@@ -802,7 +797,6 @@ def wrapped_attr(*args, **kwargs):
802797
wrapped_attr._attempt += 1
803798

804799
kwargs["metadata"] = all_metadata
805-
print("\033[34mwrap_callable", hex(id(attr)), attr.__name__, "\033[00m")
806800
return attr(*args, **kwargs)
807801

808802
wrapped_attr._attempt = 0

google/cloud/spanner_v1/database.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -792,15 +792,19 @@ def execute_pdml():
792792
query_options=query_options,
793793
request_options=request_options,
794794
)
795-
method = functools.partial(
796-
api.execute_streaming_sql,
797-
metadata=self.metadata_with_request_id(
798-
partial_nth_request, partial_attempt.increment(), metadata
799-
),
800-
)
795+
796+
def wrapped_method(*args, **kwargs):
797+
print("\033[34mwrapped_method\033[00m")
798+
method = functools.partial(
799+
api.execute_streaming_sql,
800+
metadata=self.metadata_with_request_id(
801+
partial_nth_request, partial_attempt.increment(), metadata
802+
),
803+
)
804+
return method(*args, **kwargs)
801805

802806
iterator = _restart_on_unavailable(
803-
method=method,
807+
method=wrapped_method,
804808
trace_name="CloudSpanner.ExecuteStreamingSql",
805809
request=request,
806810
metadata=metadata,

google/cloud/spanner_v1/snapshot.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -586,6 +586,10 @@ def wrapped_restart(*args, **kwargs):
586586
)
587587
return restart(*args, **kwargs)
588588

589+
# The initial request should contain the request-id.
590+
augmented_metadata=database.metadata_with_request_id(
591+
nth_request, attempt.increment(), metadata
592+
)
589593
trace_attributes = {"db.statement": sql}
590594
observability_options = getattr(database, "observability_options", None)
591595

@@ -595,7 +599,7 @@ def wrapped_restart(*args, **kwargs):
595599
return self._get_streamed_result_set(
596600
wrapped_restart,
597601
request,
598-
metadata,
602+
augmented_metadata,
599603
trace_attributes,
600604
column_info,
601605
observability_options,
@@ -605,7 +609,7 @@ def wrapped_restart(*args, **kwargs):
605609
return self._get_streamed_result_set(
606610
wrapped_restart,
607611
request,
608-
metadata,
612+
augmented_metadata,
609613
trace_attributes,
610614
column_info,
611615
observability_options,

0 commit comments

Comments
 (0)