mirror of
https://github.com/codex-storage/das-research.git
synced 2025-02-24 00:38:26 +00:00
handle duplicates in receiveRow/Column
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
This commit is contained in:
parent
f91f3da5d2
commit
e70740f530
@ -197,12 +197,17 @@ class Validator:
|
|||||||
if id in self.columnIDs:
|
if id in self.columnIDs:
|
||||||
# register receive so that we are not sending back
|
# register receive so that we are not sending back
|
||||||
self.columnNeighbors[id][src].receiving |= column
|
self.columnNeighbors[id][src].receiving |= column
|
||||||
self.receivedBlock.mergeColumn(id, column)
|
#check for duplicates
|
||||||
|
old = self.receivedBlock.getColumn(id)
|
||||||
for i in range(len(column)):
|
for i in range(len(column)):
|
||||||
if column[i]:
|
if column[i]:
|
||||||
self.logger.debug("Recv: %d->%d: %d,%d", src, self.ID, i, id, extra=self.format)
|
if old[i]:
|
||||||
if self.perNodeQueue or self.perNeighborQueue:
|
self.logger.debug("Recv DUP: %d->%d: %d,%d", src, self.ID, i, id, extra=self.format)
|
||||||
self.receivedQueue.append((i, id))
|
else:
|
||||||
|
self.logger.debug("Recv new: %d->%d: %d,%d", src, self.ID, i, id, extra=self.format)
|
||||||
|
if self.perNodeQueue or self.perNeighborQueue:
|
||||||
|
self.receivedQueue.append((i, id))
|
||||||
|
self.receivedBlock.mergeColumn(id, column)
|
||||||
self.statsRxInSlot += column.count(1)
|
self.statsRxInSlot += column.count(1)
|
||||||
else:
|
else:
|
||||||
pass
|
pass
|
||||||
@ -212,12 +217,17 @@ class Validator:
|
|||||||
if id in self.rowIDs:
|
if id in self.rowIDs:
|
||||||
# register receive so that we are not sending back
|
# register receive so that we are not sending back
|
||||||
self.rowNeighbors[id][src].receiving |= row
|
self.rowNeighbors[id][src].receiving |= row
|
||||||
self.receivedBlock.mergeRow(id, row)
|
#check for duplicates
|
||||||
|
old = self.receivedBlock.getRow(id)
|
||||||
for i in range(len(row)):
|
for i in range(len(row)):
|
||||||
if row[i]:
|
if row[i]:
|
||||||
self.logger.debug("Recv %d->%d: %d,%d", src, self.ID, id, i, extra=self.format)
|
if old[i]:
|
||||||
if self.perNodeQueue or self.perNeighborQueue:
|
self.logger.debug("Recv DUP: %d->%d: %d,%d", src, self.ID, id, i, extra=self.format)
|
||||||
self.receivedQueue.append((id, i))
|
else:
|
||||||
|
self.logger.debug("Recv new: %d->%d: %d,%d", src, self.ID, id, i, extra=self.format)
|
||||||
|
if self.perNodeQueue or self.perNeighborQueue:
|
||||||
|
self.receivedQueue.append((id, i))
|
||||||
|
self.receivedBlock.mergeRow(id, row)
|
||||||
self.statsRxInSlot += row.count(1)
|
self.statsRxInSlot += row.count(1)
|
||||||
else:
|
else:
|
||||||
pass
|
pass
|
||||||
|
Loading…
x
Reference in New Issue
Block a user