diff --git a/bigframes/session/__init__.py b/bigframes/session/__init__.py index 0f7953d3d4..da6dd4fb20 100644 --- a/bigframes/session/__init__.py +++ b/bigframes/session/__init__.py @@ -1833,6 +1833,8 @@ def _start_query( Starts BigQuery query job and waits for results. """ job_config = self._prepare_query_job_config(job_config) + if not self._strictly_ordered: + job_config.labels = {"bigframes-mode": "unordered"} try: return bigframes.session._io.bigquery.start_query_with_client( self, diff --git a/tests/system/small/test_unordered.py b/tests/system/small/test_unordered.py index 36bf2a2585..f2ed6d2a01 100644 --- a/tests/system/small/test_unordered.py +++ b/tests/system/small/test_unordered.py @@ -20,6 +20,15 @@ from tests.system.utils import assert_pandas_df_equal, skip_legacy_pandas +def test_unordered_mode_job_label(unordered_session): + pd_df = pd.DataFrame({"a": [1, 2, 3], "b": [4, 5, 6]}, dtype=pd.Int64Dtype()) + df = bpd.DataFrame(pd_df, session=unordered_session) + df.to_pandas() + job_labels = df.query_job.labels # type:ignore + assert "bigframes-mode" in job_labels + assert job_labels["bigframes-mode"] == "unordered" + + def test_unordered_mode_cache_aggregate(unordered_session): pd_df = pd.DataFrame({"a": [1, 2, 3], "b": [4, 5, 6]}, dtype=pd.Int64Dtype()) df = bpd.DataFrame(pd_df, session=unordered_session)