Skip to content

Commit 54fb0b6

Browse files
committed
Rename get_doc to get_document and other code improvements
1 parent 61bbbca commit 54fb0b6

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/moin/storage/middleware/indexing.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -105,27 +105,27 @@
105105
INDEXER_TIMEOUT = 20.0
106106

107107

108-
def get_doc(fn, revid, retry=False, **kwargs):
108+
def get_document(indexer: IndexingMiddleware, revid: str, retry: bool = False, **kwargs):
109109
"""
110-
Return a valid document or raise a KeyError.
110+
Return a valid indexer document or raise a KeyError.
111111
112112
Under heavy loads, the Whoosh AsyncWriter writer may be delayed in writing
113113
indexes to storage. Try several times before failing.
114114
115-
:param fn: the indexer function
115+
:param indexer: instance of IndexingMiddleware
116116
:param revid: revision to search
117117
:param retry: retry backend search if document not found, required when server load is high
118118
:param kwargs: idx_name, name of index used for searching (optional)
119119
"""
120-
until = time.time() + INDEXER_TIMEOUT
120+
until = time.monotonic() + INDEXER_TIMEOUT
121121
while True:
122-
doc = fn(revid=revid, **kwargs)
122+
doc = indexer._document(revid=revid, **kwargs)
123123
if doc is not None:
124124
break
125125
if not retry:
126126
msg = f"revid: {revid} not found. Please check meta data and indexes"
127127
raise KeyError(msg)
128-
if time.time() > until:
128+
if time.monotonic() > until:
129129
msg = f"revid: {revid} - Server overload may have corrupted the index; rebuild it."
130130
raise KeyError(msg)
131131
time.sleep(2)
@@ -1361,7 +1361,7 @@ def store_revision(
13611361
self.indexer.index_revision(meta, content, backend_name, force_latest=not overwrite)
13621362
gc.collect() # triggers close of index files from is_latest search
13631363
if not overwrite:
1364-
self._current = get_doc(self.indexer._document, revid=revid, retry=True)
1364+
self._current = get_document(self.indexer, revid=revid, retry=True)
13651365
if return_rev:
13661366
return Revision(self, revid, retry=True)
13671367

@@ -1414,7 +1414,7 @@ def __init__(self, item: Item, revid: str, doc=None, name=None, retry=False):
14141414
if is_current:
14151415
doc = item._current
14161416
else:
1417-
doc = get_doc(item.indexer._document, idx_name=ALL_REVS, revid=revid, retry=retry)
1417+
doc = get_document(item.indexer, idx_name=ALL_REVS, revid=revid, retry=retry)
14181418

14191419
if is_current:
14201420
revid = doc.get(REVID)

0 commit comments

Comments
 (0)