filter deleted ops only if gc is disabled
This commit is contained in:
		
							parent
							
								
									382d06f6d4
								
							
						
					
					
						commit
						de5f4abe32
					
				@ -56,18 +56,29 @@ export async function compareUsers (t, users) {
 | 
				
			|||||||
      u.connector.whenSynced(resolve)
 | 
					      u.connector.whenSynced(resolve)
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
  ))
 | 
					  ))
 | 
				
			||||||
 | 
					  let filterDeletedOps = users.every(u => u.db.gc === false)
 | 
				
			||||||
  var data = await Promise.all(users.map(async (u) => {
 | 
					  var data = await Promise.all(users.map(async (u) => {
 | 
				
			||||||
    var data = {}
 | 
					    var data = {}
 | 
				
			||||||
    u.db.requestTransaction(function * () {
 | 
					    u.db.requestTransaction(function * () {
 | 
				
			||||||
      var os = yield * this.getOperationsUntransformed()
 | 
					      var os = yield * this.getOperationsUntransformed()
 | 
				
			||||||
      data.os = {}
 | 
					      data.os = {}
 | 
				
			||||||
      os.untransformed.forEach((op) => {
 | 
					      for (let i = 0; i < os.untransformed.length; i++) {
 | 
				
			||||||
 | 
					        let op = os.untransformed[i]
 | 
				
			||||||
        op = Y.Struct[op.struct].encode(op)
 | 
					        op = Y.Struct[op.struct].encode(op)
 | 
				
			||||||
        delete op.origin
 | 
					        delete op.origin
 | 
				
			||||||
        data.os[JSON.stringify(op.id)] = op
 | 
					        /*
 | 
				
			||||||
        return op
 | 
					          If gc = false, it is necessary to filter deleted ops
 | 
				
			||||||
      })
 | 
					          as they might have been split up differently..
 | 
				
			||||||
 | 
					         */
 | 
				
			||||||
 | 
					        if (filterDeletedOps) {
 | 
				
			||||||
 | 
					          let opIsDeleted = yield * this.isDeleted(op.id)
 | 
				
			||||||
 | 
					          if (!opIsDeleted) {
 | 
				
			||||||
 | 
					            data.os[JSON.stringify(op.id)] = op
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        } else {
 | 
				
			||||||
 | 
					          data.os[JSON.stringify(op.id)] = op
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
      data.ds = yield * this.getDeleteSet()
 | 
					      data.ds = yield * this.getDeleteSet()
 | 
				
			||||||
      data.ss = yield * this.getStateSet()
 | 
					      data.ss = yield * this.getStateSet()
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user