X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/2d6c425e78bc5712c63b4ebecb05077b0e30da1f..ffd49a86ec939a674e141a4cab8dcb3b6baaf2e6:/sdk/python/arvados/collection.py diff --git a/sdk/python/arvados/collection.py b/sdk/python/arvados/collection.py index a44d42b6ac..ebca15c54b 100644 --- a/sdk/python/arvados/collection.py +++ b/sdk/python/arvados/collection.py @@ -827,7 +827,7 @@ class RichCollectionBase(CollectionBase): self.set_committed(False) self.notify(DEL, self, pathcomponents[0], deleteditem) else: - item.remove(pathcomponents[1]) + item.remove(pathcomponents[1], recursive=recursive) def _clonefrom(self, source): for k,v in listitems(source): @@ -1308,6 +1308,11 @@ class Collection(RichCollectionBase): super(Collection, self).__init__(parent) self._api_client = api_client self._keep_client = keep_client + + # Use the keep client from ThreadSafeApiCache + if self._keep_client is None and isinstance(self._api_client, ThreadSafeApiCache): + self._keep_client = self._api_client.keep + self._block_manager = block_manager self.replication_desired = replication_desired self._storage_classes_desired = storage_classes_desired @@ -1406,7 +1411,7 @@ class Collection(RichCollectionBase): @synchronized def _my_api(self): if self._api_client is None: - self._api_client = ThreadSafeApiCache(self._config) + self._api_client = ThreadSafeApiCache(self._config, version='v1') if self._keep_client is None: self._keep_client = self._api_client.keep return self._api_client