Open khufkens opened 4 years ago
I am getting a similar error. I am also uploading a large number of images, but I am not close to the limit. The upload fails and when I generate the yaml, I get the error below. A yaml is generated, but I am not sure, I can trust that it is completed?
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_cli/commands/subject_set.py", line 412, in upload_subjects
link_subjects(LINK_BATCH_SIZE)
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_cli/commands/subject_set.py", line 390, in link_subjects
subject_set.add(list(upload_state['waiting_to_link'].keys()))
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/subject_set.py", line 95, in add
return self.links.subjects.add(subjects)
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/subject_set.py", line 40, in add
return super(SubjectSetLinkCollection, self).add(objs)
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/utils.py", line 56, in do_batch
func(_self, batch, *args, **kwargs)
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 1037, in add
_objs = [obj for obj in self._build_obj_list(objs) if obj not in self]
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 1037, in <listcomp>
_objs = [obj for obj in self._build_obj_list(objs) if obj not in self]
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/subject_set.py", line 25, in __contains__
linked_subject_count = SetMemberSubject.where(
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 672, in where
return cls.paginated_results(*cls.http_get(_id, params=kwargs))
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 618, in http_get
return Panoptes.client().get(
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 314, in get
return self.json_request(
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 259, in json_request
response = self.http_request(
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 191, in http_request
token = self.get_bearer_token()
File "/home/bitcue/anaconda3/envs/zooniverse/lib/python3.9/site-packages/panoptes_client/panoptes.py", line 557, in get_bearer_token
self.bearer_token = token_response['access_token']
You can trust the YAML file. It contains the internal state at the point the error was encountered, so the upload can be resumed in such a way as to guarantee everything is uploaded correctly.
Upon uploading a large amount of data to a subject set the upload would halt on this error. Subsequently an yaml error file was generated but I had to restart the upload to continue.
This consistently happens around the 40K values mark, despite not exceeding subject upload limits.