Project

General

Profile

Actions

Bug #4488

closed

[SDKs] arvados.keep.KeepClient.KeepService should know whether it is a proxy

Added by Tim Pierce over 9 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Assigned To:
-
Category:
-
Target version:
-
Story points:
-

Description

As it currently stands, if a KeepClient finds that any one of its back end is a proxy, it KeepClient assumes that all of them are. Although this is temporarily a safe assumption, it sets invisible dependencies that may cause the client to behave in subtly wrong ways in a mixed proxy/server environment.

A better solution would be:
  • Extend KeepService to include service_type
  • When setting up service roots, the KeepClient instantiates full KeepService objects with appropriate timeout and proxy settings
  • KeepService.get and KeepService.put know which timeout settings to use and whether to include replication headers in a request

Related issues

Related to Arvados - Bug #4529: [SDKs] Ensure Python and Go SDKs in a given situation always choose either proxies or disks, never some of each.ClosedActions
Actions #1

Updated by Tom Clegg over 9 years ago

In a given scenario the SDK should either connect only to proxies, or only to disks -- so this shouldn't be an issue. (See #4529)

Actions #2

Updated by Tim Pierce over 9 years ago

I don't see how that works in the case of a federated environment, where a client may find itself talking to disks in a local Arvados install but proxies for a remote install.

At any rate, this change would still make the underlying code cleaner by allowing a KeepService to encapsulate all of the things it needs to know in order to communicate properly with the back-end, and would make it more robust in the face of a poorly set up environment. It may only be a nice-to-have, but I think it's a really nice to have.

Actions #3

Updated by Tom Clegg over 9 years ago

  • Target version deleted (Arvados Future Sprints)
Actions #4

Updated by Tom Clegg about 7 years ago

  • Status changed from New to Closed
Actions

Also available in: Atom PDF