fix count-based commit; use set for collection of found objects
This commit is contained in:
parent
08d8993e5a
commit
0ec131e1a8
1 changed files with 5 additions and 5 deletions
|
@ -86,7 +86,7 @@ class ExternalCollectionAdapter(AdapterBase):
|
||||||
print '###', vaddr, vobj, vid
|
print '###', vaddr, vobj, vid
|
||||||
versions.add(vaddr)
|
versions.add(vaddr)
|
||||||
new = []
|
new = []
|
||||||
oldFound = []
|
oldFound = set([])
|
||||||
provider = component.getUtility(IExternalCollectionProvider,
|
provider = component.getUtility(IExternalCollectionProvider,
|
||||||
name=self.providerName or '')
|
name=self.providerName or '')
|
||||||
#print '*** old', old, versions, self.lastUpdated
|
#print '*** old', old, versions, self.lastUpdated
|
||||||
|
@ -98,7 +98,7 @@ class ExternalCollectionAdapter(AdapterBase):
|
||||||
if addr in old:
|
if addr in old:
|
||||||
# may be it would be better to return a file's hash
|
# may be it would be better to return a file's hash
|
||||||
# for checking for changes...
|
# for checking for changes...
|
||||||
oldFound.append(addr)
|
oldFound.add(addr)
|
||||||
if self.lastUpdated is None or (mdate and mdate > self.lastUpdated):
|
if self.lastUpdated is None or (mdate and mdate > self.lastUpdated):
|
||||||
changeCount +=1
|
changeCount +=1
|
||||||
obj = old[addr]
|
obj = old[addr]
|
||||||
|
@ -115,9 +115,9 @@ class ExternalCollectionAdapter(AdapterBase):
|
||||||
self.updateMessage = message
|
self.updateMessage = message
|
||||||
# force reindexing
|
# force reindexing
|
||||||
notify(ObjectModifiedEvent(obj))
|
notify(ObjectModifiedEvent(obj))
|
||||||
if changeCount % 100 == 0:
|
if changeCount % 100 == 0:
|
||||||
self.logger.info('Updated: %i.' % changeCount)
|
self.logger.info('Updated: %i.' % changeCount)
|
||||||
transaction.commit()
|
transaction.commit()
|
||||||
else:
|
else:
|
||||||
new.append(addr)
|
new.append(addr)
|
||||||
self.logger.info('%i objects updated.' % changeCount)
|
self.logger.info('%i objects updated.' % changeCount)
|
||||||
|
|
Loading…
Add table
Reference in a new issue