From 203b05d45890c9cd4cc8c1dbf21d1c9d9f51da1d Mon Sep 17 00:00:00 2001 From: yanghaitao Date: Wed, 29 Apr 2020 10:27:51 +0800 Subject: [PATCH] num_shards and sampler is not supported if source does not have __getitem__ --- mindspore/dataset/engine/validators.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mindspore/dataset/engine/validators.py b/mindspore/dataset/engine/validators.py index bdeb97c812..4f1b394634 100644 --- a/mindspore/dataset/engine/validators.py +++ b/mindspore/dataset/engine/validators.py @@ -587,6 +587,11 @@ def check_generatordataset(method): except TypeError: raise TypeError("sampler should be either iterable or from mindspore.dataset.samplers") + if sampler is not None and not hasattr(source, "__getitem__"): + raise ValueError("sampler is not supported if source does not have attribute '__getitem__'") + if num_shards is not None and not hasattr(source, "__getitem__"): + raise ValueError("num_shards is not supported if source does not have attribute '__getitem__'") + return method(*args, **kwargs) return new_method