@@ -119,6 +119,7 @@ def create(
119
119
labels : Optional [Dict [str , str ]] = None ,
120
120
encryption_spec_key_name : Optional [str ] = None ,
121
121
sync : bool = True ,
122
+ create_request_timeout : Optional [float ] = None ,
122
123
) -> "_Dataset" :
123
124
"""Creates a new dataset and optionally imports data into dataset when
124
125
source and import_schema_uri are passed.
@@ -203,6 +204,8 @@ def create(
203
204
Whether to execute this method synchronously. If False, this method
204
205
will be executed in concurrent Future and any downstream object will
205
206
be immediately returned and synced when the Future has completed.
207
+ create_request_timeout (float):
208
+ Optional. The timeout for the create request in seconds.
206
209
207
210
Returns:
208
211
dataset (Dataset):
@@ -240,6 +243,7 @@ def create(
240
243
encryption_spec_key_name = encryption_spec_key_name
241
244
),
242
245
sync = sync ,
246
+ create_request_timeout = create_request_timeout ,
243
247
)
244
248
245
249
@classmethod
@@ -258,6 +262,8 @@ def _create_and_import(
258
262
labels : Optional [Dict [str , str ]] = None ,
259
263
encryption_spec : Optional [gca_encryption_spec .EncryptionSpec ] = None ,
260
264
sync : bool = True ,
265
+ create_request_timeout : Optional [float ] = None ,
266
+ import_request_timeout : Optional [float ] = None ,
261
267
) -> "_Dataset" :
262
268
"""Creates a new dataset and optionally imports data into dataset when
263
269
source and import_schema_uri are passed.
@@ -313,6 +319,10 @@ def _create_and_import(
313
319
Whether to execute this method synchronously. If False, this method
314
320
will be executed in concurrent Future and any downstream object will
315
321
be immediately returned and synced when the Future has completed.
322
+ create_request_timeout (float):
323
+ Optional. The timeout for the create request in seconds.
324
+ import_request_timeout (float):
325
+ Optional. The timeout for the import request in seconds.
316
326
317
327
Returns:
318
328
dataset (Dataset):
@@ -328,6 +338,7 @@ def _create_and_import(
328
338
request_metadata = request_metadata ,
329
339
labels = labels ,
330
340
encryption_spec = encryption_spec ,
341
+ create_request_timeout = create_request_timeout ,
331
342
)
332
343
333
344
_LOGGER .log_create_with_lro (cls , create_dataset_lro )
@@ -345,18 +356,26 @@ def _create_and_import(
345
356
346
357
# Import if import datasource is DatasourceImportable
347
358
if isinstance (datasource , _datasources .DatasourceImportable ):
348
- dataset_obj ._import_and_wait (datasource )
359
+ dataset_obj ._import_and_wait (
360
+ datasource , import_request_timeout = import_request_timeout
361
+ )
349
362
350
363
return dataset_obj
351
364
352
- def _import_and_wait (self , datasource ):
365
+ def _import_and_wait (
366
+ self ,
367
+ datasource ,
368
+ import_request_timeout : Optional [float ] = None ,
369
+ ):
353
370
_LOGGER .log_action_start_against_resource (
354
371
"Importing" ,
355
372
"data" ,
356
373
self ,
357
374
)
358
375
359
- import_lro = self ._import (datasource = datasource )
376
+ import_lro = self ._import (
377
+ datasource = datasource , import_request_timeout = import_request_timeout
378
+ )
360
379
361
380
_LOGGER .log_action_started_against_resource_with_lro (
362
381
"Import" , "data" , self .__class__ , import_lro
@@ -377,6 +396,7 @@ def _create(
377
396
request_metadata : Sequence [Tuple [str , str ]] = (),
378
397
labels : Optional [Dict [str , str ]] = None ,
379
398
encryption_spec : Optional [gca_encryption_spec .EncryptionSpec ] = None ,
399
+ create_request_timeout : Optional [float ] = None ,
380
400
) -> operation .Operation :
381
401
"""Creates a new managed dataset by directly calling API client.
382
402
@@ -419,6 +439,8 @@ def _create(
419
439
resource is created.
420
440
421
441
If set, this Dataset and all sub-resources of this Dataset will be secured by this key.
442
+ create_request_timeout (float):
443
+ Optional. The timeout for the create request in seconds.
422
444
Returns:
423
445
operation (Operation):
424
446
An object representing a long-running operation.
@@ -433,25 +455,33 @@ def _create(
433
455
)
434
456
435
457
return api_client .create_dataset (
436
- parent = parent , dataset = gapic_dataset , metadata = request_metadata
458
+ parent = parent ,
459
+ dataset = gapic_dataset ,
460
+ metadata = request_metadata ,
461
+ timeout = create_request_timeout ,
437
462
)
438
463
439
464
def _import (
440
465
self ,
441
466
datasource : _datasources .DatasourceImportable ,
467
+ import_request_timeout : Optional [float ] = None ,
442
468
) -> operation .Operation :
443
469
"""Imports data into managed dataset by directly calling API client.
444
470
445
471
Args:
446
472
datasource (_datasources.DatasourceImportable):
447
473
Required. Datasource for importing data to an existing dataset for Vertex AI.
474
+ import_request_timeout (float):
475
+ Optional. The timeout for the import request in seconds.
448
476
449
477
Returns:
450
478
operation (Operation):
451
479
An object representing a long-running operation.
452
480
"""
453
481
return self .api_client .import_data (
454
- name = self .resource_name , import_configs = [datasource .import_data_config ]
482
+ name = self .resource_name ,
483
+ import_configs = [datasource .import_data_config ],
484
+ timeout = import_request_timeout ,
455
485
)
456
486
457
487
@base .optional_sync (return_input_arg = "self" )
@@ -461,6 +491,7 @@ def import_data(
461
491
import_schema_uri : str ,
462
492
data_item_labels : Optional [Dict ] = None ,
463
493
sync : bool = True ,
494
+ import_request_timeout : Optional [float ] = None ,
464
495
) -> "_Dataset" :
465
496
"""Upload data to existing managed dataset.
466
497
@@ -498,6 +529,8 @@ def import_data(
498
529
Whether to execute this method synchronously. If False, this method
499
530
will be executed in concurrent Future and any downstream object will
500
531
be immediately returned and synced when the Future has completed.
532
+ import_request_timeout (float):
533
+ Optional. The timeout for the import request in seconds.
501
534
502
535
Returns:
503
536
dataset (Dataset):
@@ -510,7 +543,9 @@ def import_data(
510
543
data_item_labels = data_item_labels ,
511
544
)
512
545
513
- self ._import_and_wait (datasource = datasource )
546
+ self ._import_and_wait (
547
+ datasource = datasource , import_request_timeout = import_request_timeout
548
+ )
514
549
return self
515
550
516
551
# TODO(b/174751568) add optional sync support
0 commit comments