mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
Mass_parse: Clear ns_loaded cache; Add different cache clearing methods
This commit is contained in:
@@ -110,9 +110,8 @@ public class Xomp_parse_wkr implements Gfo_invk {
|
||||
Xoa_ttl ttl = wiki.Ttl_parse(cur_ns, ppg.Ttl_bry());
|
||||
// if ns changed and prv_ns is main
|
||||
if (cur_ns != prv_ns) {
|
||||
// TOMBSTONE: do not comment free_mem; will cause OutOfMem error on en.w in 25th hour; will need to reinvestigate cache generations later; DATE:2016-12-27
|
||||
if (prv_ns == gplx.xowa.wikis.nss.Xow_ns_.Tid__main)
|
||||
wiki.Cache_mgr().Free_mem(Bool_.Y); // NOTE: clears all caches, include imglinks; only Main will have benefit of
|
||||
wiki.Cache_mgr().Free_mem__wbase(); // NOTE: clears page and wbase cache only; needed else OutOfMemory error for en.w in 25th hour; DATE:2017-01-07
|
||||
prv_ns = cur_ns;
|
||||
}
|
||||
Xoae_page wpg = Xoae_page.New(wiki, ttl);
|
||||
@@ -142,7 +141,7 @@ public class Xomp_parse_wkr implements Gfo_invk {
|
||||
if (wiki.Cache_mgr().Tmpl_result_cache().Count() > 50000)
|
||||
wiki.Cache_mgr().Tmpl_result_cache().Clear();
|
||||
if (done_count % cleanup_interval == 0) {
|
||||
wiki.Cache_mgr().Free_mem(Bool_.N);
|
||||
wiki.Cache_mgr().Free_mem__page();
|
||||
wiki.Parser_mgr().Scrib().Core_term();
|
||||
wiki.Appe().Wiki_mgr().Wdata_mgr().Clear();
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ public class Xop_mediawiki_wkr {
|
||||
}
|
||||
public void Free_memory() {
|
||||
wiki.Cache_mgr().Tmpl_result_cache().Clear();
|
||||
wiki.Cache_mgr().Free_mem(Bool_.N);
|
||||
wiki.Cache_mgr().Free_mem__page();
|
||||
wiki.Parser_mgr().Scrib().Core_term();
|
||||
wiki.Appe().Wiki_mgr().Wdata_mgr().Clear();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user