File tree Expand file tree Collapse file tree 2 files changed +18
-2
lines changed Expand file tree Collapse file tree 2 files changed +18
-2
lines changed Original file line number Diff line number Diff line change 12
12
| ` GITBASE_INDEX_DIR ` | directory to save indexes, default ` /var/lib/gitbase/index ` |
13
13
| ` GITBASE_TRACE ` | enable jaeger tracing, default disabled |
14
14
| ` GITBASE_READONLY ` | allow read queries only, disabling creating and deleting indexes, default disabled |
15
+ | ` GITBASE_LANGUAGE_CACHE_SIZE ` | size of the cache for the ` language ` UDF. The size is the maximum number of elements kept in the cache, 10000 by default |
15
16
16
17
### Jaeger tracing variables
17
18
Original file line number Diff line number Diff line change @@ -4,19 +4,34 @@ import (
4
4
"encoding/binary"
5
5
"fmt"
6
6
"hash/crc32"
7
+ "os"
8
+ "strconv"
7
9
8
10
lru "github.com/hashicorp/golang-lru"
9
11
enry "gopkg.in/src-d/enry.v1"
10
12
"gopkg.in/src-d/go-mysql-server.v0/sql"
11
13
)
12
14
13
- const defaultLanguageCacheSize = 10000
15
+ const (
16
+ languageCacheSizeKey = "GITBASE_LANGUAGE_CACHE_SIZE"
17
+ defaultLanguageCacheSize = 10000
18
+ )
19
+
20
+ func languageCacheSize () int {
21
+ v := os .Getenv (languageCacheSizeKey )
22
+ size , err := strconv .Atoi (v )
23
+ if err != nil || size <= 0 {
24
+ size = defaultLanguageCacheSize
25
+ }
26
+
27
+ return size
28
+ }
14
29
15
30
var languageCache * lru.TwoQueueCache
16
31
17
32
func init () {
18
33
var err error
19
- languageCache , err = lru .New2Q (defaultLanguageCacheSize )
34
+ languageCache , err = lru .New2Q (languageCacheSize () )
20
35
if err != nil {
21
36
panic (fmt .Errorf ("cannot initialize language cache: %s" , err ))
22
37
}
You can’t perform that action at this time.
0 commit comments