Skip to content

Commit 1f343a6

Browse files
authored
tests: bump instance operation timeout to 240 seconds (#525)
* tests: bump instance operation timeout to 120 seconds Toward #524. * tests: bump instance operation timeout to 240 seconds Likewise for samples instance creation.
1 parent 492ad09 commit 1f343a6

File tree

8 files changed

+40
-31
lines changed

8 files changed

+40
-31
lines changed

samples/samples/conftest.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
import pytest
2525
from test_utils import retry
2626

27+
INSTANCE_CREATION_TIMEOUT = 240 # seconds
28+
2729
retry_429 = retry.RetryErrors(exceptions.ResourceExhausted, delay=15)
2830

2931

@@ -110,7 +112,7 @@ def sample_instance(
110112
},
111113
)
112114
op = retry_429(sample_instance.create)()
113-
op.result(120) # block until completion
115+
op.result(INSTANCE_CREATION_TIMEOUT) # block until completion
114116

115117
# Eventual consistency check
116118
retry_found = retry.RetryResult(bool)
@@ -145,7 +147,7 @@ def multi_region_instance(
145147
},
146148
)
147149
op = retry_429(multi_region_instance.create)()
148-
op.result(120) # block until completion
150+
op.result(INSTANCE_CREATION_TIMEOUT) # block until completion
149151

150152
# Eventual consistency check
151153
retry_found = retry.RetryResult(bool)

tests/system/_helpers.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,11 @@
3333
SKIP_BACKUP_TESTS_ENVVAR = "SKIP_BACKUP_TESTS"
3434
SKIP_BACKUP_TESTS = os.getenv(SKIP_BACKUP_TESTS_ENVVAR) is not None
3535

36-
SPANNER_OPERATION_TIMEOUT_IN_SECONDS = int(
37-
os.getenv("SPANNER_OPERATION_TIMEOUT_IN_SECONDS", 60)
36+
INSTANCE_OPERATION_TIMEOUT_IN_SECONDS = int(
37+
os.getenv("SPANNER_INSTANCE_OPERATION_TIMEOUT_IN_SECONDS", 240)
38+
)
39+
DATABASE_OPERATION_TIMEOUT_IN_SECONDS = int(
40+
os.getenv("SPANNER_DATABASE_OPERATION_TIMEOUT_IN_SECONDS", 60)
3841
)
3942

4043
USE_EMULATOR_ENVVAR = "SPANNER_EMULATOR_HOST"

tests/system/conftest.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,13 @@ def spanner_client():
5858

5959

6060
@pytest.fixture(scope="session")
61-
def operation_timeout():
62-
return _helpers.SPANNER_OPERATION_TIMEOUT_IN_SECONDS
61+
def instance_operation_timeout():
62+
return _helpers.INSTANCE_OPERATION_TIMEOUT_IN_SECONDS
63+
64+
65+
@pytest.fixture(scope="session")
66+
def database_operation_timeout():
67+
return _helpers.DATABASE_OPERATION_TIMEOUT_IN_SECONDS
6368

6469

6570
@pytest.fixture(scope="session")
@@ -101,7 +106,7 @@ def existing_instances(spanner_client):
101106
@pytest.fixture(scope="session")
102107
def shared_instance(
103108
spanner_client,
104-
operation_timeout,
109+
instance_operation_timeout,
105110
shared_instance_id,
106111
instance_config,
107112
existing_instances, # evalutate before creating one
@@ -116,7 +121,7 @@ def shared_instance(
116121
shared_instance_id, instance_config.name, labels=labels
117122
)
118123
created_op = _helpers.retry_429_503(instance.create)()
119-
created_op.result(operation_timeout) # block until completion
124+
created_op.result(instance_operation_timeout) # block until completion
120125

121126
else: # reuse existing instance
122127
instance = spanner_client.instance(shared_instance_id)
@@ -129,14 +134,14 @@ def shared_instance(
129134

130135

131136
@pytest.fixture(scope="session")
132-
def shared_database(shared_instance, operation_timeout):
137+
def shared_database(shared_instance, database_operation_timeout):
133138
database_name = _helpers.unique_id("test_database")
134139
pool = spanner_v1.BurstyPool(labels={"testcase": "database_api"})
135140
database = shared_instance.database(
136141
database_name, ddl_statements=_helpers.DDL_STATEMENTS, pool=pool
137142
)
138143
operation = database.create()
139-
operation.result(operation_timeout) # raises on failure / timeout.
144+
operation.result(database_operation_timeout) # raises on failure / timeout.
140145

141146
yield database
142147

tests/system/test_backup_api.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434

3535
@pytest.fixture(scope="session")
36-
def same_config_instance(spanner_client, shared_instance, operation_timeout):
36+
def same_config_instance(spanner_client, shared_instance, instance_operation_timeout):
3737
current_config = shared_instance.configuration_name
3838
same_config_instance_id = _helpers.unique_id("same-config")
3939
create_time = str(int(time.time()))
@@ -42,7 +42,7 @@ def same_config_instance(spanner_client, shared_instance, operation_timeout):
4242
same_config_instance_id, current_config, labels=labels
4343
)
4444
op = same_config_instance.create()
45-
op.result(operation_timeout)
45+
op.result(instance_operation_timeout)
4646

4747
yield same_config_instance
4848

@@ -60,7 +60,7 @@ def diff_config(shared_instance, instance_configs):
6060

6161
@pytest.fixture(scope="session")
6262
def diff_config_instance(
63-
spanner_client, shared_instance, operation_timeout, diff_config,
63+
spanner_client, shared_instance, instance_operation_timeout, diff_config,
6464
):
6565
if diff_config is None:
6666
return None
@@ -72,7 +72,7 @@ def diff_config_instance(
7272
diff_config_instance_id, diff_config, labels=labels
7373
)
7474
op = diff_config_instance.create()
75-
op.result(operation_timeout)
75+
op.result(instance_operation_timeout)
7676

7777
yield diff_config_instance
7878

@@ -85,14 +85,14 @@ def database_version_time():
8585

8686

8787
@pytest.fixture(scope="session")
88-
def second_database(shared_instance, operation_timeout):
88+
def second_database(shared_instance, database_operation_timeout):
8989
database_name = _helpers.unique_id("test_database2")
9090
pool = spanner_v1.BurstyPool(labels={"testcase": "database_api"})
9191
database = shared_instance.database(
9292
database_name, ddl_statements=_helpers.DDL_STATEMENTS, pool=pool
9393
)
9494
operation = database.create()
95-
operation.result(operation_timeout) # raises on failure / timeout.
95+
operation.result(database_operation_timeout) # raises on failure / timeout.
9696

9797
yield database
9898

@@ -319,7 +319,6 @@ def test_multi_create_cancel_update_error_restore_errors(
319319
diff_config_instance,
320320
backups_to_delete,
321321
databases_to_delete,
322-
operation_timeout,
323322
):
324323
backup_id_1 = _helpers.unique_id("backup_id1", separator="_")
325324
backup_id_2 = _helpers.unique_id("backup_id2", separator="_")

tests/system/test_database_api.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828

2929
@pytest.fixture(scope="module")
30-
def multiregion_instance(spanner_client, operation_timeout):
30+
def multiregion_instance(spanner_client, instance_operation_timeout):
3131
multi_region_instance_id = _helpers.unique_id("multi-region")
3232
multi_region_config = "nam3"
3333
config_name = "{}/instanceConfigs/{}".format(
@@ -41,7 +41,7 @@ def multiregion_instance(spanner_client, operation_timeout):
4141
labels=labels,
4242
)
4343
operation = _helpers.retry_429_503(multiregion_instance.create)()
44-
operation.result(operation_timeout)
44+
operation.result(instance_operation_timeout)
4545

4646
yield multiregion_instance
4747

tests/system/test_dbapi.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,14 @@
3535

3636

3737
@pytest.fixture(scope="session")
38-
def raw_database(shared_instance, operation_timeout):
38+
def raw_database(shared_instance, database_operation_timeout):
3939
databse_id = _helpers.unique_id("dbapi-txn")
4040
pool = spanner_v1.BurstyPool(labels={"testcase": "database_api"})
4141
database = shared_instance.database(
4242
databse_id, ddl_statements=DDL_STATEMENTS, pool=pool,
4343
)
4444
op = database.create()
45-
op.result(operation_timeout) # raises on failure / timeout.
45+
op.result(database_operation_timeout) # raises on failure / timeout.
4646

4747
yield database
4848

tests/system/test_instance_api.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def test_create_instance(
6161
spanner_client,
6262
instance_config,
6363
instances_to_delete,
64-
operation_timeout,
64+
instance_operation_timeout,
6565
):
6666
alt_instance_id = _helpers.unique_id("new")
6767
instance = spanner_client.instance(alt_instance_id, instance_config.name)
@@ -70,7 +70,7 @@ def test_create_instance(
7070
instances_to_delete.append(instance)
7171

7272
# We want to make sure the operation completes.
73-
operation.result(operation_timeout) # raises on failure / timeout.
73+
operation.result(instance_operation_timeout) # raises on failure / timeout.
7474

7575
# Create a new instance instance and make sure it is the same.
7676
instance_alt = spanner_client.instance(alt_instance_id, instance_config.name)
@@ -86,7 +86,7 @@ def test_create_instance_with_processing_units(
8686
spanner_client,
8787
instance_config,
8888
instances_to_delete,
89-
operation_timeout,
89+
instance_operation_timeout,
9090
):
9191
alt_instance_id = _helpers.unique_id("wpn")
9292
processing_units = 5000
@@ -100,7 +100,7 @@ def test_create_instance_with_processing_units(
100100
instances_to_delete.append(instance)
101101

102102
# We want to make sure the operation completes.
103-
operation.result(operation_timeout) # raises on failure / timeout.
103+
operation.result(instance_operation_timeout) # raises on failure / timeout.
104104

105105
# Create a new instance instance and make sure it is the same.
106106
instance_alt = spanner_client.instance(alt_instance_id, instance_config.name)
@@ -116,15 +116,15 @@ def test_update_instance(
116116
spanner_client,
117117
shared_instance,
118118
shared_instance_id,
119-
operation_timeout,
119+
instance_operation_timeout,
120120
):
121121
old_display_name = shared_instance.display_name
122122
new_display_name = "Foo Bar Baz"
123123
shared_instance.display_name = new_display_name
124124
operation = shared_instance.update()
125125

126126
# We want to make sure the operation completes.
127-
operation.result(operation_timeout) # raises on failure / timeout.
127+
operation.result(instance_operation_timeout) # raises on failure / timeout.
128128

129129
# Create a new instance instance and reload it.
130130
instance_alt = spanner_client.instance(shared_instance_id, None)

tests/system/test_session_api.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,14 +146,14 @@
146146

147147

148148
@pytest.fixture(scope="session")
149-
def sessions_database(shared_instance, operation_timeout):
149+
def sessions_database(shared_instance, database_operation_timeout):
150150
database_name = _helpers.unique_id("test_sessions", separator="_")
151151
pool = spanner_v1.BurstyPool(labels={"testcase": "session_api"})
152152
sessions_database = shared_instance.database(
153153
database_name, ddl_statements=_helpers.DDL_STATEMENTS, pool=pool,
154154
)
155155
operation = sessions_database.create()
156-
operation.result(operation_timeout) # raises on failure / timeout.
156+
operation.result(database_operation_timeout) # raises on failure / timeout.
157157

158158
_helpers.retry_has_all_dll(sessions_database.reload)()
159159
# Some tests expect there to be a session present in the pool.
@@ -1176,7 +1176,7 @@ def test_multiuse_snapshot_read_isolation_exact_staleness(sessions_database):
11761176
sd._check_row_data(after, all_data_rows)
11771177

11781178

1179-
def test_read_w_index(shared_instance, operation_timeout, databases_to_delete):
1179+
def test_read_w_index(shared_instance, database_operation_timeout, databases_to_delete):
11801180
# Indexed reads cannot return non-indexed columns
11811181
sd = _sample_data
11821182
row_count = 2000
@@ -1192,7 +1192,7 @@ def test_read_w_index(shared_instance, operation_timeout, databases_to_delete):
11921192
)
11931193
operation = temp_db.create()
11941194
databases_to_delete.append(temp_db)
1195-
operation.result(operation_timeout) # raises on failure / timeout.
1195+
operation.result(database_operation_timeout) # raises on failure / timeout.
11961196

11971197
committed = _set_up_table(temp_db, row_count)
11981198

0 commit comments

Comments
 (0)