Hi all.
I have a problem here: I start a thread for permanent receiving messages. And when received one, I tried to read a DistTensor in the thread, I got Segmentation fault
error.
The code snippet is:
def recv_thread_helper(self, stop):
while True:
meta = self.comm_handler.recv()
if meta.rank == self.rank:
# if receive metadata from itself, stop
break
else:
srcrank = meta.rank
tensor = meta.feat_idx
self.featmap[srcrank] = tensor
logger.debug("Show: {}".format(
self.g.ndata['features'][self.node_idx][0][tensor]))
if stop():
break
And the error message is:
Fatal Python error: Segmentation fault
Current thread 0x00007ff63d7ea700 (most recent call first):
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/site-packages/dgl/distributed/rpc.py", line 986 in fast_pull
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/site-packages/dgl/distributed/kvstore.py", line 1238 in pull
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/site-packages/dgl/distributed/dist_tensor.py", line 170 in __getitem__
File "/data/glusterfs/home/xinchen/dgs_test/agent/agent.py", line 95 in recv_thread_helper
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/threading.py", line 870 in run
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/threading.py", line 926 in _bootstrap_inner
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/threading.py", line 890 in _bootstrap
Thread 0x00007ff63dfeb700 (most recent call first):
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/selectors.py", line 415 in select
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/socketserver.py", line 232 in serve_forever
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/threading.py", line 870 in run
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/threading.py", line 926 in _bootstrap_inner
File "/home/xinchen/anaconda3/envs/py37/lib/python3.7/threading.py", line 890 in _bootstrap
Can anyone give me some advice please?