abhshkdz / House3D

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

_pickle.UnpicklingError: pickle data was truncated

uiyo opened this issue · comments

I was running the EmbodyQA's train_vqa.py script, while I got this:

[01/1][split:train][gpu:0][house:048fc05e15dff6f7953b3e252c2a04e2]
[split_shapes_by_material@obj.cc:152] Split shapes by material: 412 -> 793
[1.68] Loaded 1 house3d envs
Available inds: 18
[0.00] Loaded 1 api threads
Process Process-1:
multiprocessing.pool.RemoteTraceback: 
"""
Traceback (most recent call last):
  File "/home/wuyang/anaconda3/lib/python3.6/multiprocessing/pool.py", line 119, in worker
    result = (True, func(*args, **kwds))
  File "/home/wuyang/anaconda3/lib/python3.6/multiprocessing/pool.py", line 47, in starmapstar
    return list(itertools.starmap(args[0], args[1]))
  File "/home/wuyang/anaconda3/lib/python3.6/site-packages/House3D-1.0.0-py3.6.egg/House3D/core.py", line 50, in local_create_house
    h = create_house(h, config, ColideRes=ColideRes)
  File "/home/wuyang/anaconda3/lib/python3.6/site-packages/House3D-1.0.0-py3.6.egg/House3D/core.py", line 45, in create_house
    ColideRes=ColideRes)
  File "/home/wuyang/anaconda3/lib/python3.6/site-packages/House3D-1.0.0-py3.6.egg/House3D/house.py", line 210, in __init__
    self.obsMap, self.moveMap = pickle.load(f)
_pickle.UnpicklingError: pickle data was truncated
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/wuyang/anaconda3/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/home/wuyang/anaconda3/lib/python3.6/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "train_vqa.py", line 288, in train
    train_loader.dataset._load_envs(in_order=True)
  File "/home/wuyang/Projects/EmbodiedQA/training/data.py", line 296, in _load_envs
    self.all_houses = pool.starmap(local_create_house, _args)
  File "/home/wuyang/anaconda3/lib/python3.6/multiprocessing/pool.py", line 274, in starmap
    return self._map_async(func, iterable, starmapstar, chunksize).get()
  File "/home/wuyang/anaconda3/lib/python3.6/multiprocessing/pool.py", line 644, in get
    raise self._value
_pickle.UnpicklingError: pickle data was truncated

seems a problem of loading house 048fc05e15dff6f7953b3e252c2a04e2,
any idea to solve? appreciate that.

Not completely sure, but seems to be a botched pkl file error. Does it work fine for other houses? Could you try rm /path/to/suncg/house/048fc05e15dff6f7953b3e252c2a04e2/*pkl and then re-running this?

Now its okay, sorry for bothering. It was a data error during unpacking.

data error during unpacking ?

Data might be damaged since i uploaded the data to my server unpacked. When i reuploaded them after compressing, the code works.