• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

georgia-tech-db / eva / #758

04 Sep 2023 08:37PM UTC coverage: 0.0% (-78.3%) from 78.333%
#758

push

circle-ci

hershd23
Increased underline length in at line 75 in text_summarization.rst
	modified:   docs/source/benchmarks/text_summarization.rst

0 of 11303 relevant lines covered (0.0%)

0.0 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/evadb/utils/kv_cache.py
1
# coding=utf-8
2
# Copyright 2018-2023 EvaDB
3
#
4
# Licensed under the Apache License, Version 2.0 (the "License");
5
# you may not use this file except in compliance with the License.
6
# You may obtain a copy of the License at
7
#
8
#     http://www.apache.org/licenses/LICENSE-2.0
9
#
10
# Unless required by applicable law or agreed to in writing, software
11
# distributed under the License is distributed on an "AS IS" BASIS,
12
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
# See the License for the specific language governing permissions and
14
# limitations under the License.
15
import pickle
×
16
from typing import Any
×
17

18
from diskcache import FanoutCache
×
19

20

21
class DiskKVCache:
×
22
    """Disk key value cache
23

24
    Args:
25
        `path` (str): the path on disk where the cache will be stored
26
        `max_cache_size` (int, optional): an integer representing the maximum size of
27
            the cache. The system will make its best effort to enforce this limit, but it may slightly exceed it. The default value is 2**30.
28
        `shards` (int, optional): an integer representing the number of shards to use.
29
            This can improve concurrent writes. The default value is 3. size limit of
30
            individual cache shards is the `max_cache_size` divided by the number of
31
            shards.
32
    """
33

34
    def __init__(self, path: str, max_cache_size: int = 2**30, shards: int = 3):
×
35
        # For details, see: http://www.grantjenks.com/docs/diskcache/tutorial.html#settings
36
        default_settings = {
×
37
            "size_limit": max_cache_size,
38
            "eviction_policy": "least-recently-stored",
39
            "disk_pickle_protocol": pickle.HIGHEST_PROTOCOL,
40
        }
41
        self._path = path
×
42
        self._cache = FanoutCache(path, shards=shards, **default_settings)
×
43

44
    def get(self, key: Any):
×
45
        value = self._cache.get(key, default=None)
×
46
        return value
×
47

48
    def set(self, key: Any, value: Any):
×
49
        self._cache.set(key, value)
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc