summaryrefslogtreecommitdiff
path: root/searx/data/core.py
blob: b057a8f55df175618bec3b6fe31733c2ba4babd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# SPDX-License-Identifier: AGPL-3.0-or-later
# pylint: disable=missing-module-docstring


import pathlib

from searx import logger
from searx.cache import ExpireCacheCfg, ExpireCacheSQLite

log = logger.getChild("data")

data_dir: pathlib.Path = pathlib.Path(__file__).parent

_DATA_CACHE: ExpireCacheSQLite | None = None


def get_cache():

    global _DATA_CACHE  # pylint: disable=global-statement

    if _DATA_CACHE is None:
        _DATA_CACHE = ExpireCacheSQLite.build_cache(
            ExpireCacheCfg(
                name="DATA_CACHE",
                # MAX_VALUE_LEN=1024 * 200,  # max. 200kB length for a *serialized* value.
                # MAXHOLD_TIME=60 * 60 * 24 * 7 * 4,  # 4 weeks
            )
        )
    return _DATA_CACHE