diff --git a/400_xowa/src/gplx/fsdb/Fsdb_db_mgr_.java b/400_xowa/src/gplx/fsdb/Fsdb_db_mgr_.java index 94137f2ec..efb9a8be8 100644 --- a/400_xowa/src/gplx/fsdb/Fsdb_db_mgr_.java +++ b/400_xowa/src/gplx/fsdb/Fsdb_db_mgr_.java @@ -35,8 +35,8 @@ public class Fsdb_db_mgr_ { try { String cfg_domain_str = wiki.Data__core_mgr().Db__core().Tbl__cfg().Select_str_or("xowa.bldr.session", "wiki_domain", domain_str); if (!String_.Eq(domain_str, cfg_domain_str)) { + Gfo_usr_dlg_.Instance.Note_many("", "", "fsdb.db_core.init: fsys.domain doesn't match db.domain; fsys=~{0} db=~{1}", domain_str, cfg_domain_str); domain_str = cfg_domain_str; - Gfo_usr_dlg_.Instance.Note_many("", "", "fsdb.db_core.init: fsys.domain doesn't match db.domain; import db.*; fsys=~{0} db=~{1}", domain_str, cfg_domain_str); } } catch (Exception e) { Gfo_usr_dlg_.Instance.Warn_many("", "", "fsdb.db_core.init: failed to get domain from config; err=~{0}", Err_.Message_gplx_log(e)); diff --git a/400_xowa/src/gplx/xowa/addons/bldrs/mass_parses/parses/utls/Xomp_tmpl_cache_bldr.java b/400_xowa/src/gplx/xowa/addons/bldrs/mass_parses/parses/utls/Xomp_tmpl_cache_bldr.java index dae8998d2..9a408d825 100644 --- a/400_xowa/src/gplx/xowa/addons/bldrs/mass_parses/parses/utls/Xomp_tmpl_cache_bldr.java +++ b/400_xowa/src/gplx/xowa/addons/bldrs/mass_parses/parses/utls/Xomp_tmpl_cache_bldr.java @@ -51,7 +51,15 @@ public class Xomp_tmpl_cache_bldr { Xow_page_cache_itm itm = new Xow_page_cache_itm(true, page_ttl, null, null); // NOTE: "null, null;" b/c GetContent in Scrib_title checks specifically for null, not empty String; DATE:2016-10-19 itm.Set_page_ids(page_id, page_redirect_id); text_db_loader.Add(rdr.Read_int("page_text_db_id"), itm); - cache.Add(page_ttl.Full_db(), itm); + + // ignore duplicate page_titles in cache; EX:ru.n:Модуль:Weather/data DATE:2017-03-16 + if (cache.Get_or_null(page_ttl.Full_db()) == null) { + cache.Add(page_ttl.Full_db(), itm); + } + else { + Gfo_usr_dlg_.Instance.Warn_many("", "", "mass_parse: ignoring duplicate page title in page cache; title=~{0} id=~{1}", page_ttl.Full_db(), page_id); + } + page_regy.Add(page_id, itm); if (page_redirect_id != -1) diff --git a/400_xowa/src/gplx/xowa/addons/wikis/fulltexts/indexers/svcs/Xofulltext_indexer_svc.java b/400_xowa/src/gplx/xowa/addons/wikis/fulltexts/indexers/svcs/Xofulltext_indexer_svc.java index 9c18c9440..46ea66f45 100644 --- a/400_xowa/src/gplx/xowa/addons/wikis/fulltexts/indexers/svcs/Xofulltext_indexer_svc.java +++ b/400_xowa/src/gplx/xowa/addons/wikis/fulltexts/indexers/svcs/Xofulltext_indexer_svc.java @@ -51,7 +51,7 @@ class Xofulltext_indexer_svc implements Gfo_invk { Io_url search_dir = Xosearch_fulltext_addon.Get_index_dir(wiki); if (Io_mgr.Instance.ExistsDir(search_dir)) { app.Gui__cbk_mgr().Send_json(cbk_trg, "xo.fulltext_indexer.status__note__recv", gplx.core.gfobjs.Gfobj_nde.New() - .Add_str("note", Datetime_now.Get().XtoStr_fmt_yyyy_MM_dd_HH_mm_ss() + ": search dir already exists; please delete it manually before reindexing; " + String_.new_u8(domain))); + .Add_str("note", Datetime_now.Get().XtoStr_fmt_yyyy_MM_dd_HH_mm_ss() + ": search dir already exists; please delete it manually before reindexing; dir=" + search_dir.Xto_api())); continue; } diff --git a/xowa.home.version b/xowa.home.version index c87718f6b..2af871b7a 100644 --- a/xowa.home.version +++ b/xowa.home.version @@ -1 +1 @@ -fix readability calc +add sponsors