1 | <!DOCTYPE html> <html> <head> <title>EnvironmentConfig.coffee</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <link rel="stylesheet" media="all" href="docco.css" /> </head> <body> <div id="container"> <div id="background"></div> <div id="jump_to"> Jump To … <div id="jump_wrapper"> <div id="jump_page"> <a class="source" href="ByteIterable.html"> ByteIterable.coffee </a> <a class="source" href="ByteIterator.html"> ByteIterator.coffee </a> <a class="source" href="ArrayByteIterable.html"> ArrayByteIterable.coffee </a> <a class="source" href="ByteIterableBase.html"> ByteIterableBase.coffee </a> <a class="source" href="ByteIterableUtil.html"> ByteIterableUtil.coffee </a> <a class="source" href="LightOutputStream.html"> LightOutputStream.coffee </a> <a class="source" href="StoreConfiguration.html"> StoreConfiguration.coffee </a> <a class="source" href="Reader.html"> Reader.coffee </a> <a class="source" href="Writer.html"> Writer.coffee </a> <a class="source" href="List.html"> List.coffee </a> <a class="source" href="ListNode.html"> ListNode.coffee </a> <a class="source" href="Cursor.html"> Cursor.coffee </a> <a class="source" href="DatabaseRoot.html"> DatabaseRoot.coffee </a> <a class="source" href="Environment.html"> Environment.coffee </a> <a class="source" href="EnvironmentConfig.html"> EnvironmentConfig.coffee </a> <a class="source" href="Store.html"> Store.coffee </a> <a class="source" href="Transaction.html"> Transaction.coffee </a> <a class="source" href="Addr64.html"> Addr64.coffee </a> <a class="source" href="DataIterator.html"> DataIterator.coffee </a> <a class="source" href="Log.html"> Log.coffee </a> <a class="source" href="LogCache.html"> LogCache.coffee </a> <a class="source" href="LogConfig.html"> LogConfig.coffee </a> <a class="source" href="LogUtil.html"> LogUtil.coffee </a> <a class="source" href="Loggable.html"> Loggable.coffee </a> <a class="source" href="LoggableFactory.html"> LoggableFactory.coffee </a> <a class="source" href="LoggableIterator.html"> LoggableIterator.coffee </a> <a class="source" href="LoggableToWrite.html"> LoggableToWrite.coffee </a> <a class="source" href="NullLoggable.html"> NullLoggable.coffee </a> <a class="source" href="RandomAccessByteIterable.html"> RandomAccessByteIterable.coffee </a> <a class="source" href="RandomAccessLoggable.html"> RandomAccessLoggable.coffee </a> <a class="source" href="RandomAccessLoggableIterator.html"> RandomAccessLoggableIterator.coffee </a> <a class="source" href="StackList.html"> StackList.coffee </a> <a class="source" href="CompoundByteIterable.html"> CompoundByteIterable.coffee </a> <a class="source" href="CompoundByteIteratorBase.html"> CompoundByteIteratorBase.coffee </a> <a class="source" href="CompressedUnsignedLongByteIterable.html"> CompressedUnsignedLongByteIterable.coffee </a> <a class="source" href="FixedLengthByteIterable.html"> FixedLengthByteIterable.coffee </a> </div> </div> </div> <table cellpadding="0" cellspacing="0"> <thead> <tr> <th class="docs"> <h1> EnvironmentConfig.coffee </h1> </th> <th class="code"> </th> </tr> </thead> <tbody> <tr id="section-1"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-1">¶</a> </div> </td> <td class="code"> <div class="highlight"><pre><span class="k">class</span> <span class="nx">EnvironmentConfig</span>
|
2 | <span class="vi">@MEMORY_USAGE = </span><span class="s2">"exodus.memoryUsage"</span>
|
3 | <span class="vi">@MEMORY_USAGE_PERCENTAGE = </span><span class="s2">"exodus.memoryUsagePercentage"</span>
|
4 | <span class="vi">@LOG_DURABLE_WRITE = </span><span class="s2">"exodus.log.durableWrite"</span>
|
5 | <span class="vi">@LOG_FILE_SIZE = </span><span class="s2">"exodus.log.fileSize"</span> <span class="c1"># in Kb</span>
|
6 | <span class="vi">@LOG_LOCK_TIMEOUT = </span><span class="s2">"exodus.log.lockTimeout"</span> <span class="c1"># in milliseconds</span>
|
7 | <span class="vi">@LOG_CACHE_PAGE_SIZE = </span><span class="s2">"exodus.log.cache.pageSize"</span> <span class="c1"># in bytes</span>
|
8 | <span class="vi">@LOG_CACHE_OPEN_FILES = </span><span class="s2">"exodus.log.cache.openFilesCount"</span>
|
9 | <span class="vi">@LOG_CACHE_SHARED = </span><span class="s2">"exodus.log.cache.shared"</span>
|
10 | <span class="vi">@LOG_CACHE_NON_BLOCKING = </span><span class="s2">"exodus.log.cache.nonBlocking"</span>
|
11 | <span class="vi">@LOG_CACHE_WRITE_BUFFER_SIZE = </span><span class="s2">"exodus.log.cache.writeBufferSize"</span>
|
12 | <span class="vi">@ENV_META_TREE_CACHED = </span><span class="s2">"exodus.env.metaTree.cached"</span>
|
13 | <span class="vi">@ENV_CLOSE_FORCEDLY = </span><span class="s2">"exodus.env.close.forcedly"</span>
|
14 | <span class="vi">@TREE_MAX_PAGE_SIZE = </span><span class="s2">"exodus.tree.maxPageSize"</span>
|
15 | <span class="vi">@GC_ENABLED = </span><span class="s2">"exodus.gc.enabled"</span>
|
16 | <span class="vi">@GC_MIN_UTILIZATION = </span><span class="s2">"exodus.gc.minUtilization"</span>
|
17 | <span class="vi">@GC_RENAME_FILES = </span><span class="s2">"exodus.gc.renameFiles"</span>
|
18 | <span class="vi">@GC_USE_EXPIRATION_CHECKER = </span><span class="s2">"exodus.gc.useExpirationChecker"</span></pre></div> </td> </tr> <tr id="section-2"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-2">¶</a> </div> <p>Minimum age of a file to consider it for cleaning.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="vi">@GC_MIN_FILE_AGE = </span><span class="s2">"exodus.gc.fileMinAge"</span></pre></div> </td> </tr> <tr id="section-3"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-3">¶</a> </div> <p>Cleaner checks log utilization and runs if necessary after
|
19 | this many new files are created in the log.</p> </td> <td class="code"> <div class="highlight"><pre> <span class="vi">@GC_CLEANER_FILES_INTERVAL = </span><span class="s2">"exodus.gc.cleaner.filesInterval"</span><span class="p">;</span>
|
20 | <span class="vi">@GC_UTILIZATION_FROM_SCRATCH = </span><span class="s2">"exodus.gc.utilization.fromScratch"</span><span class="p">;</span></pre></div> </td> </tr> <tr id="section-4"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-4">¶</a> </div> <p>@private</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nv">settings: </span><span class="kc">undefined</span></pre></div> </td> </tr> <tr id="section-5"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-5">¶</a> </div> <p>@private</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nv">balanceStrategy: </span><span class="kc">undefined</span>
|
21 |
|
22 | <span class="nv">getSetting: </span><span class="nf">(key) -></span>
|
23 | <span class="k">return</span> <span class="nx">@settings</span><span class="p">[</span><span class="nx">key</span><span class="p">]</span>
|
24 |
|
25 | <span class="nv">setSetting: </span><span class="nf">(key, value) -></span>
|
26 | <span class="nx">@settings</span><span class="p">[</span><span class="nx">key</span><span class="p">]</span> <span class="o">=</span> <span class="nx">value</span>
|
27 |
|
28 | <span class="nv">getMemoryUsage: </span><span class="nf">() -></span>
|
29 | <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">MEMORY_USAGE</span><span class="p">)</span>
|
30 |
|
31 | <span class="nv">setMemoryUsage: </span><span class="nf">(maxMemory) -></span>
|
32 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">MEMORY_USAGE</span><span class="p">,</span> <span class="nx">maxMemory</span><span class="p">)</span>
|
33 |
|
34 | <span class="nv">getMemoryUsagePercentage: </span><span class="nf">() -></span>
|
35 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">MEMORY_USAGE_PERCENTAGE</span><span class="p">)</span>
|
36 |
|
37 | <span class="nv">setMemoryUsagePercentage: </span><span class="nf">(memoryUsagePercentage) -></span>
|
38 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">MEMORY_USAGE_PERCENTAGE</span><span class="p">,</span> <span class="nx">memoryUsagePercentage</span><span class="p">)</span>
|
39 |
|
40 | <span class="nv">getLogDurableWrite: </span><span class="nf">() -></span>
|
41 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_DURABLE_WRITE</span><span class="p">)</span>
|
42 |
|
43 | <span class="nv">setLogDurableWrite: </span><span class="nf">(durableWrite)-></span>
|
44 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_DURABLE_WRITE</span><span class="p">,</span> <span class="nx">durableWrite</span><span class="p">)</span>
|
45 |
|
46 | <span class="nv">getLogFileSize: </span><span class="nf">() -></span>
|
47 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_FILE_SIZE</span><span class="p">)</span>
|
48 |
|
49 | <span class="nv">setLogFileSize: </span><span class="nf">(kilobytes) -></span>
|
50 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_FILE_SIZE</span><span class="p">,</span> <span class="nx">kilobytes</span><span class="p">)</span>
|
51 |
|
52 | <span class="nv">getLogLockTimeout: </span><span class="nf">() -></span>
|
53 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_LOCK_TIMEOUT</span><span class="p">)</span>
|
54 |
|
55 | <span class="nv">setLogLockTimeout: </span><span class="nf">(millis) -></span>
|
56 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_LOCK_TIMEOUT</span><span class="p">,</span> <span class="nx">millis</span><span class="p">)</span>
|
57 |
|
58 | <span class="nv">getLogCachePageSize: </span><span class="nf">() -></span>
|
59 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_PAGE_SIZE</span><span class="p">)</span>
|
60 |
|
61 | <span class="nv">setLogCachePageSize: </span><span class="nf">(bytes) -></span>
|
62 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_PAGE_SIZE</span><span class="p">,</span> <span class="nx">bytes</span><span class="p">)</span>
|
63 |
|
64 | <span class="nv">getLogCacheOpenFilesCount: </span><span class="nf">() -></span>
|
65 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_OPEN_FILES</span><span class="p">)</span>
|
66 |
|
67 | <span class="nv">setLogCacheOpenFilesCount: </span><span class="nf">(files) -></span>
|
68 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_OPEN_FILES</span><span class="p">,</span> <span class="nx">files</span><span class="p">)</span>
|
69 |
|
70 | <span class="nv">isLogCacheShared: </span><span class="nf">() -></span>
|
71 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_SHARED</span><span class="p">)</span>
|
72 |
|
73 | <span class="nv">setLogCacheShared: </span><span class="nf">(shared) -></span>
|
74 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_SHARED</span><span class="p">,</span> <span class="nx">shared</span><span class="p">)</span>
|
75 |
|
76 | <span class="nv">isLogCacheNonBlocking: </span><span class="nf">() -></span>
|
77 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_NON_BLOCKING</span><span class="p">)</span>
|
78 |
|
79 | <span class="nv">setLogCacheNonBlocking: </span><span class="nf">(shared) -></span>
|
80 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_NON_BLOCKING</span><span class="p">,</span> <span class="nx">shared</span><span class="p">)</span>
|
81 |
|
82 | <span class="nv">getLogCacheWriteBufferSize: </span><span class="nf">() -></span>
|
83 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_WRITE_BUFFER_SIZE</span><span class="p">)</span>
|
84 |
|
85 | <span class="nv">setLogCacheWriteBufferSize: </span><span class="nf">(pagesCount) -></span>
|
86 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">LOG_CACHE_WRITE_BUFFER_SIZE</span><span class="p">,</span> <span class="nx">pagesCount</span><span class="p">)</span>
|
87 |
|
88 | <span class="nv">getEnvMetaTreeCached: </span><span class="nf">() -></span>
|
89 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">ENV_META_TREE_CACHED</span><span class="p">)</span>
|
90 |
|
91 | <span class="nv">setEnvMetaTreeCached: </span><span class="nf">(cached) -></span>
|
92 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">ENV_META_TREE_CACHED</span><span class="p">,</span> <span class="nx">cached</span><span class="p">)</span>
|
93 |
|
94 | <span class="nv">getEnvCloseForcedly: </span><span class="nf">() -></span>
|
95 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">ENV_CLOSE_FORCEDLY</span><span class="p">)</span>
|
96 |
|
97 | <span class="nv">setEnvCloseForcedly: </span><span class="nf">(closeForcedly) -></span>
|
98 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">ENV_CLOSE_FORCEDLY</span><span class="p">,</span> <span class="nx">closeForcedly</span><span class="p">)</span>
|
99 |
|
100 | <span class="nv">getTreeMaxPageSize: </span><span class="nf">() -></span>
|
101 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">TREE_MAX_PAGE_SIZE</span><span class="p">)</span>
|
102 |
|
103 | <span class="nv">setTreeMaxPageSize: </span><span class="nf">(pageSize) -></span></pre></div> </td> </tr> <tr id="section-6"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-6">¶</a> </div> <p>if (pageSize < 4 || pageSize > 1024)
|
104 | TODO throw new InvalidSettingException("Invalid tree page size: " + pageSize);</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">TREE_MAX_PAGE_SIZE</span><span class="p">,</span> <span class="nx">pageSize</span><span class="p">)</span>
|
105 | <span class="nv">balanceStrategy = </span><span class="kc">null</span><span class="p">;</span>
|
106 |
|
107 | <span class="nv">isGcEnabled: </span><span class="nf">() -></span>
|
108 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_ENABLED</span><span class="p">)</span>
|
109 |
|
110 | <span class="nv">setGcEnabled: </span><span class="nf">(enabled) -></span>
|
111 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_ENABLED</span><span class="p">,</span> <span class="nx">enabled</span><span class="p">)</span>
|
112 |
|
113 | <span class="nv">getGcMinUtilization: </span><span class="nf">() -></span>
|
114 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_MIN_UTILIZATION</span><span class="p">)</span>
|
115 |
|
116 | <span class="nv">setGcMinUtilization: </span><span class="nf">(percent) -></span></pre></div> </td> </tr> <tr id="section-7"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-7">¶</a> </div> <p>if (percent < 1 || percent > 90) {
|
117 | TODO throw new InvalidSettingException("Invalid minimum log files utilization: " + percent);</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_MIN_UTILIZATION</span><span class="p">,</span> <span class="nx">percent</span><span class="p">)</span>
|
118 |
|
119 | <span class="nv">getGcRenameFiles: </span><span class="nf">() -></span>
|
120 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_RENAME_FILES</span><span class="p">)</span>
|
121 |
|
122 | <span class="nv">setGcRenameFiles: </span><span class="nf">(rename) -></span>
|
123 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_RENAME_FILES</span><span class="p">,</span> <span class="nx">rename</span><span class="p">)</span>
|
124 |
|
125 | <span class="nv">getGcUseExpirationChecker: </span><span class="nf">() -></span>
|
126 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_USE_EXPIRATION_CHECKER</span><span class="p">)</span>
|
127 |
|
128 | <span class="nv">setGcUseExpirationChecker: </span><span class="nf">(use) -></span>
|
129 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_USE_EXPIRATION_CHECKER</span><span class="p">,</span> <span class="nx">use</span><span class="p">)</span>
|
130 |
|
131 | <span class="nv">getGcFileMinAge: </span><span class="nf">() -></span>
|
132 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">GC_MIN_FILE_AGE</span><span class="p">)</span>
|
133 |
|
134 | <span class="nv">setGcFileMinAge: </span><span class="nf">(minAge) -></span></pre></div> </td> </tr> <tr id="section-8"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-8">¶</a> </div> <p>if (minAge < 1) {
|
135 | TODO throw new InvalidSettingException("Invalid file minimum age: " + minAge);</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_MIN_FILE_AGE</span><span class="p">,</span> <span class="nx">minAge</span><span class="p">)</span>
|
136 |
|
137 | <span class="nv">getGcCleanerFilesInterval: </span><span class="nf">() -></span>
|
138 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_CLEANER_FILES_INTERVAL</span><span class="p">)</span>
|
139 |
|
140 | <span class="nv">setGcCleanerFilesInterval: </span><span class="nf">(files) -></span></pre></div> </td> </tr> <tr id="section-9"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-9">¶</a> </div> <p>if (files < 1) {
|
141 | TODO throw new InvalidSettingException("Invalid number of files: " + files);</p> </td> <td class="code"> <div class="highlight"><pre> <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_CLEANER_FILES_INTERVAL</span><span class="p">,</span> <span class="nx">files</span><span class="p">)</span>
|
142 |
|
143 | <span class="nv">getGcUtilizationFromScratch: </span><span class="nf">() -></span>
|
144 | <span class="k">return</span> <span class="nx">@getSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_UTILIZATION_FROM_SCRATCH</span><span class="p">)</span>
|
145 |
|
146 | <span class="nv">setGcUtilizationFromScratch: </span><span class="nf">(fromScratch) -></span>
|
147 | <span class="nx">@setSetting</span><span class="p">(</span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">GC_UTILIZATION_FROM_SCRATCH</span><span class="p">,</span> <span class="nx">fromScratch</span><span class="p">)</span>
|
148 |
|
149 | <span class="nv">getBalanceStrategy: </span><span class="nf">() -></span></pre></div> </td> </tr> <tr id="section-10"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-10">¶</a> </div> <p>no actual need to avoid race condition here
|
150 | TODO if (balanceStrategy == null) {
|
151 | balanceStrategy = new BalanceStrategy(getTreeMaxPageSize());</p> </td> <td class="code"> <div class="highlight"><pre> <span class="k">return</span> <span class="nx">@balanceStrategy</span><span class="p">;</span></pre></div> </td> </tr> <tr id="section-11"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-11">¶</a> </div> <p>private static boolean getBoolean(@NotNull final String propName, final boolean defaultValue) {
|
152 | final String value = System.getProperty(propName);
|
153 | return value == null ? defaultValue : "true".equalsIgnoreCase(value);</p> </td> <td class="code"> <div class="highlight"><pre> <span class="vi">@create: </span><span class="nf">(o) -></span>
|
154 | <span class="k">if</span> <span class="o">!</span><span class="nx">o</span><span class="o">?</span> <span class="k">then</span> <span class="nv">o = </span><span class="k">new</span> <span class="nx">EnvironmentConfig</span><span class="p">()</span>
|
155 | <span class="nv">o.settings = </span><span class="k">new</span> <span class="nb">Object</span><span class="p">()</span>
|
156 | <span class="nx">o</span><span class="p">.</span><span class="nx">setMemoryUsagePercentage</span><span class="p">(</span><span class="mi">60</span><span class="p">)</span>
|
157 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogDurableWrite</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
|
158 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogFileSize</span><span class="p">(</span><span class="mi">8192</span><span class="p">)</span>
|
159 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogLockTimeout</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
|
160 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogCachePageSize</span><span class="p">(</span><span class="mi">16284</span><span class="p">)</span>
|
161 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogCacheOpenFilesCount</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
|
162 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogCacheShared</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
|
163 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogCacheNonBlocking</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
|
164 | <span class="nx">o</span><span class="p">.</span><span class="nx">setLogCacheWriteBufferSize</span><span class="p">(</span><span class="mi">16</span><span class="p">)</span>
|
165 | <span class="nx">o</span><span class="p">.</span><span class="nx">setEnvMetaTreeCached</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
|
166 | <span class="nx">o</span><span class="p">.</span><span class="nx">setEnvCloseForcedly</span><span class="p">(</span><span class="kc">false</span><span class="p">)</span>
|
167 | <span class="nx">o</span><span class="p">.</span><span class="nx">setTreeMaxPageSize</span><span class="p">(</span><span class="mi">128</span><span class="p">)</span>
|
168 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcEnabled</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
|
169 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcMinUtilization</span><span class="p">(</span><span class="mi">50</span><span class="p">)</span>
|
170 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcRenameFiles</span><span class="p">(</span><span class="kc">false</span><span class="p">)</span>
|
171 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcUseExpirationChecker</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
|
172 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcFileMinAge</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
|
173 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcCleanerFilesInterval</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
|
174 | <span class="nx">o</span><span class="p">.</span><span class="nx">setGcUtilizationFromScratch</span><span class="p">(</span><span class="kc">false</span><span class="p">)</span>
|
175 | <span class="k">return</span> <span class="nx">o</span></pre></div> </td> </tr> <tr id="section-12"> <td class="docs"> <div class="pilwrap"> <a class="pilcrow" href="#section-12">¶</a> </div> <p>setMemoryUsagePercentage(Integer.getInteger(MEMORY<em>USAGE</em>PERCENTAGE, 60));
|
176 | setLogDurableWrite(getBoolean(LOG<em>DURABLE</em>WRITE, true));
|
177 | setLogFileSize(Long.getLong(LOG<em>FILE</em>SIZE, 8192L));
|
178 | setLogLockTimeout(Long.getLong(LOG<em>LOCK</em>TIMEOUT, 0L));
|
179 | setLogCachePageSize(Integer.getInteger(LOG<em>CACHE</em>PAGE<em>SIZE, 16384));
|
180 | setLogCacheOpenFilesCount(Integer.getInteger(LOG</em>CACHE<em>OPEN</em>FILES, 50));
|
181 | setLogCacheShared(getBoolean(LOG<em>CACHE</em>SHARED, true));
|
182 | setLogCacheNonBlocking(getBoolean(LOG<em>CACHE</em>NON<em>BLOCKING, true));
|
183 | setLogCacheWriteBufferSize(Integer.getInteger(LOG</em>CACHE<em>WRITE</em>BUFFER<em>SIZE, 16));
|
184 | setEnvMetaTreeCached(getBoolean(ENV</em>META<em>TREE</em>CACHED, true));
|
185 | setEnvCloseForcedly(getBoolean(ENV<em>CLOSE</em>FORCEDLY, false));
|
186 | setTreeMaxPageSize(Integer.getInteger(TREE<em>MAX</em>PAGE<em>SIZE, 128));
|
187 | setGcEnabled(getBoolean(GC</em>ENABLED, true));
|
188 | setGcMinUtilization(Integer.getInteger(GC<em>MIN</em>UTILIZATION, 50));
|
189 | setGcRenameFiles(getBoolean(GC<em>RENAME</em>FILES, false));
|
190 | setGcUseExpirationChecker(getBoolean(GC<em>USE</em>EXPIRATION<em>CHECKER, true));
|
191 | setGcFileMinAge(Integer.getInteger(GC</em>MIN<em>FILE</em>AGE, 2));
|
192 | setGcCleanerFilesInterval(Integer.getInteger(GC<em>CLEANER</em>FILES<em>INTERVAL, 2));
|
193 | setGcUtilizationFromScratch(getBoolean(GC</em>UTILIZATION<em>FROM</em>SCRATCH, false));</p> </td> <td class="code"> <div class="highlight"><pre> <span class="vi">@DEFAULT: </span><span class="nx">EnvironmentConfig</span><span class="p">.</span><span class="nx">create</span><span class="p">()</span>
|
194 |
|
195 | <span class="nv">exports.EnvironmentConfig = </span><span class="nx">EnvironmentConfig</span>
|
196 |
|
197 | </pre></div> </td> </tr> </tbody> </table> </div> </body> </html> |
\ | No newline at end of file |