You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Wakati wa kujaribu kukusanya swa/moduli/mchezo.swa ya kweli ya
Dominion (faili moja inayohusisha moduli 40+ za mradi, sasa graph
yake iliyotatuliwa ina struct 156-168, mistari 15,000-17,000+ baada
ya kutatuliwa), aina za muundo zilizofafanuliwa TAYARI kwa usahihi
(kwenye moduli za mbali kama utawala/maendeleo.swa, uchumi/uchumi_mkuu.swa) zilianza kuripotiwa kama "aina isiyojulikana"
kwenye baadhi (SI zote) za matumizi yao ya baadaye kwenye faili hilo
hilo.
Ilichokithibitishwa TAYARI kutoka kwa hii (kuepuka utata na masuala mengine)
SI kikomo cha ast_idadi/ast_aina[] (nodi za AST) —
nimeongeza hizi kutoka 65536 hadi 1,048,576 (angalia PR
inayohusiana, imefanywa kikao kikao hiki kikiwa kinaendelea) kwa
sababu ya mdudu TOFAUTI (kufurika kwa AST kulikofuatana na
"node_mpya imefurika" mara nyingi) — mdudu HUO umetatuliwa
kikamilifu (rekebisho limejaribiwa: 304/304 + fixpoint 17/17 +
uthibitisho wa moja kwa moja kuwa spam ya "node_mpya imefurika"
imeisha kabisa). Mdudu HUU (aina isiyojulikana) ni TOFAUTI, bado
unabaki BAADA ya rekebisho hilo.
SI kikomo cha ast_pool[] (dimbwi la baiti za majina) —
nimeongeza hii pia kutoka 4MB hadi 16MB na kuongeza ukaguzi wa
mipaka wenye ujumbe wa hitilafu (haukuwepo awali) — ujumbe huo
HAUJAWAHI kuonekana kwenye jaribio langu, ikimaanisha dimbwi la
majina halijafurika.
Muundo wa uzalishaji upya
Faili moja kubwa (17,263 mistari baada ya kutatuliwa, struct 168) — UtawaliUamuzi, UchumiMkuuRipoti, MapiganoMatokeo, UshindiNyara, SiasaKikundi, SiasaKikundiMfumo, TeknolojiaMfumo zote
zilikataliwa kwenye BAADHI ya matumizi yao (si YOTE — mfano UchumiMkuuRipoti inatumika mahali 4 tofauti kwenye faili hilo hilo,
lakini ni 2 tu kati ya hizo zilizoshindwa).
Muhimu zaidi: nilipoondoa moduli sita za hivi karibuni
(jeshi/kitengo, jeshi/mapigano, jeshi/ushindi, siasa/kikundi,
teknolojia/teknolojia, maarifa/maarifa) kutoka kwenye graph (nikapunguza
kutoka struct 168 hadi 156), makosa YALIENDELEA kuonekana kwa UtawaliUamuzi na UchumiMkuuRipoti — AINA HIZI MBILI HAZIHUSIANI
KABISA na moduli sita nilizoondoa (ni sehemu ya seti ya awali ya
mifumo 28+11 iliyokuwa IMEKWISHATHIBITISHWA KUFANYA KAZI SAHIHI
mapema kikao hiki, kwenye jaribio la struct 130). Hii inathibitisha
KWA UHAKIKA kuwa tatizo SI kuhusiana na moduli MAALUM zilizoongezwa
mwisho, bali ni la UKUBWA/NAFASI YA JUMLA ya faili — kizingiti halisi
kiko MAHALI FULANI kati ya struct 130 (kilichothibitishwa kufanya
kazi mapema kikao hiki) na struct 156 (kinachoshindwa sasa).
Tabia ya "baadhi tu ya matumizi yanashindwa, si yote" (positional, si
ya kila mara) inaonyesha huenda ni tatizo la NAFASI/HATUA YA
UCHANGANUZI (parsing) badala ya kikomo rahisi cha ukubwa wa safu —
labda kuna jedwali/kaunta nyingine bado haijagunduliwa inayoshiriki
uhusiano usiojulikana na maendeleo ya uchanganuzi (parse progress),
si idadi ya struct au majina pekee.
Uthibitisho wa moja kwa moja: moduli zangu mwenyewe ZINAFANYA KAZI kwenye faili dogo
Nilijaribu moduli 11 nilizoziunganisha (utamaduni x5, matukio, wakala,
injini x4) KATIKA FAILI DOGO LA KUJITEGEMEA (struct 27 tu, bila
kuhusisha moduli 28 za awali za mchezo.swa) — ZILIFANYA KAZI SAWASAWA
KABISA, majaribio yote ya thamani halisi yalipita. Hii inaonyesha
mdudu HUU unahitaji UKUBWA WA JUMLA WA FAILI kufikia kiwango fulani
(kinachozidi struct ~130-150), SI kasoro kwenye moduli yoyote mahususi.
Pendekezo kwa mchunguzi ajaye
Tafuta jedwali lolote la ukubwa maalum linalotumika WAKATI WA
UCHANGANUZI (parsing, si baada ya kukamilika) ambalo halijaguswa na
masahihisho ya #189/#192/#197 (yote hayo ni majedwali ya BAADA ya
uchanganuzi kukamilika, au ya struct-count/name-pool). Tafuta hasa
kitu kinachoshiriki kaunta na NAFASI YA SASA YA UCHANGANUZI (parse
position) badala ya idadi ya struct au urefu wa majina — hilo
lingeeleza kwa nini baadhi TU ya matumizi ya aina moja yanashindwa
(yanayotokea BAADA ya kizingiti fulani cha nafasi), si yote.
Muhtasari
Wakati wa kujaribu kukusanya
swa/moduli/mchezo.swaya kweli yaDominion (faili moja inayohusisha moduli 40+ za mradi, sasa graph
yake iliyotatuliwa ina struct 156-168, mistari 15,000-17,000+ baada
ya kutatuliwa), aina za muundo zilizofafanuliwa TAYARI kwa usahihi
(kwenye moduli za mbali kama
utawala/maendeleo.swa,uchumi/uchumi_mkuu.swa) zilianza kuripotiwa kama "aina isiyojulikana"kwenye baadhi (SI zote) za matumizi yao ya baadaye kwenye faili hilo
hilo.
Ilichokithibitishwa TAYARI kutoka kwa hii (kuepuka utata na masuala mengine)
muundo_nodes[]/muundo_ukubwacache) — hilo tayari limerekebishwa (1024), na graph hii ina struct
156-168 pekee, mbali sana chini ya kikomo hicho.
ast_idadi/ast_aina[](nodi za AST) —nimeongeza hizi kutoka 65536 hadi 1,048,576 (angalia PR
inayohusiana, imefanywa kikao kikao hiki kikiwa kinaendelea) kwa
sababu ya mdudu TOFAUTI (kufurika kwa AST kulikofuatana na
"node_mpya imefurika" mara nyingi) — mdudu HUO umetatuliwa
kikamilifu (rekebisho limejaribiwa: 304/304 + fixpoint 17/17 +
uthibitisho wa moja kwa moja kuwa spam ya "node_mpya imefurika"
imeisha kabisa). Mdudu HUU (aina isiyojulikana) ni TOFAUTI, bado
unabaki BAADA ya rekebisho hilo.
ast_pool[](dimbwi la baiti za majina) —nimeongeza hii pia kutoka 4MB hadi 16MB na kuongeza ukaguzi wa
mipaka wenye ujumbe wa hitilafu (haukuwepo awali) — ujumbe huo
HAUJAWAHI kuonekana kwenye jaribio langu, ikimaanisha dimbwi la
majina halijafurika.
Muundo wa uzalishaji upya
Faili moja kubwa (17,263 mistari baada ya kutatuliwa, struct 168) —
UtawaliUamuzi,UchumiMkuuRipoti,MapiganoMatokeo,UshindiNyara,SiasaKikundi,SiasaKikundiMfumo,TeknolojiaMfumozotezilikataliwa kwenye BAADHI ya matumizi yao (si YOTE — mfano
UchumiMkuuRipotiinatumika mahali 4 tofauti kwenye faili hilo hilo,lakini ni 2 tu kati ya hizo zilizoshindwa).
Muhimu zaidi: nilipoondoa moduli sita za hivi karibuni
(jeshi/kitengo, jeshi/mapigano, jeshi/ushindi, siasa/kikundi,
teknolojia/teknolojia, maarifa/maarifa) kutoka kwenye graph (nikapunguza
kutoka struct 168 hadi 156), makosa YALIENDELEA kuonekana kwa
UtawaliUamuzinaUchumiMkuuRipoti— AINA HIZI MBILI HAZIHUSIANIKABISA na moduli sita nilizoondoa (ni sehemu ya seti ya awali ya
mifumo 28+11 iliyokuwa IMEKWISHATHIBITISHWA KUFANYA KAZI SAHIHI
mapema kikao hiki, kwenye jaribio la struct 130). Hii inathibitisha
KWA UHAKIKA kuwa tatizo SI kuhusiana na moduli MAALUM zilizoongezwa
mwisho, bali ni la UKUBWA/NAFASI YA JUMLA ya faili — kizingiti halisi
kiko MAHALI FULANI kati ya struct 130 (kilichothibitishwa kufanya
kazi mapema kikao hiki) na struct 156 (kinachoshindwa sasa).
Tabia ya "baadhi tu ya matumizi yanashindwa, si yote" (positional, si
ya kila mara) inaonyesha huenda ni tatizo la NAFASI/HATUA YA
UCHANGANUZI (parsing) badala ya kikomo rahisi cha ukubwa wa safu —
labda kuna jedwali/kaunta nyingine bado haijagunduliwa inayoshiriki
uhusiano usiojulikana na maendeleo ya uchanganuzi (parse progress),
si idadi ya struct au majina pekee.
Uthibitisho wa moja kwa moja: moduli zangu mwenyewe ZINAFANYA KAZI kwenye faili dogo
Nilijaribu moduli 11 nilizoziunganisha (utamaduni x5, matukio, wakala,
injini x4) KATIKA FAILI DOGO LA KUJITEGEMEA (struct 27 tu, bila
kuhusisha moduli 28 za awali za mchezo.swa) — ZILIFANYA KAZI SAWASAWA
KABISA, majaribio yote ya thamani halisi yalipita. Hii inaonyesha
mdudu HUU unahitaji UKUBWA WA JUMLA WA FAILI kufikia kiwango fulani
(kinachozidi struct ~130-150), SI kasoro kwenye moduli yoyote mahususi.
Pendekezo kwa mchunguzi ajaye
Tafuta jedwali lolote la ukubwa maalum linalotumika WAKATI WA
UCHANGANUZI (parsing, si baada ya kukamilika) ambalo halijaguswa na
masahihisho ya #189/#192/#197 (yote hayo ni majedwali ya BAADA ya
uchanganuzi kukamilika, au ya struct-count/name-pool). Tafuta hasa
kitu kinachoshiriki kaunta na NAFASI YA SASA YA UCHANGANUZI (parse
position) badala ya idadi ya struct au urefu wa majina — hilo
lingeeleza kwa nini baadhi TU ya matumizi ya aina moja yanashindwa
(yanayotokea BAADA ya kizingiti fulani cha nafasi), si yote.