LRO polling settings have no effect in V2 of gapic.yaml
aohren opened this issue · 1 comments
aohren commented
I'm attempting to override the default LRO polling settings for a specific method of a specific service. The following config gives no error and lib generation succeeds, but the long_running
section ultimately has no effect:
type: com.google.api.codegen.ConfigProto
config_schema_version: 2.0.0
interfaces:
- name: google.ads.googleads.v3.services.OfflineUserDataJobService
methods:
- name: RunOfflineUserDataJob
long_running:
initial_poll_delay_millis: 300000
max_poll_delay_millis: 3600000
poll_delay_multiplier: 1.25
total_poll_timeout_millis: 43200000
language_settings:
csharp:
package_name: Google.Ads.GoogleAds.V3.Services
go:
package_name: google.golang.org/google/ads/googleads/v3/services
java:
package_name: com.google.ads.googleads.v3.services
nodejs:
package_name: v3.services
php:
package_name: Google\Ads\Googleads\V3\Services
python:
package_name: google.ads.googleads_v3.gapic.services
ruby:
package_name: Google::Ads::Googleads::V3::Services
In generated Java code, for example, the corresponding OfflineUserDataJobServiceStubSettings.java
file does not contain RetrySettings
according to above.
Is this supposed to work, or is there a different way of setting LRO settings in v2 gapic yaml?
aohren commented
It turns out this was due to a missing google.longrunning.operation_info
annotation on RunOfflineUserDataJob
in the service's protobuf definition. Adding that in caused the above settings to take effect properly.