WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Ninapendekeza usome nakala ya ripoti ya mapema ya 2020 na Georgy Rylov "WAL-G: fursa mpya na upanuzi wa jamii"

Watunza rasilimali huria hukabiliana na changamoto nyingi wanapokua. Jinsi ya kuandika vipengele zaidi na zaidi vinavyohitajika, kurekebisha masuala zaidi na zaidi na kudhibiti kutazama maombi zaidi na zaidi ya kuvuta? Kwa kutumia WAL-G (chombo cha kuhifadhi nakala kwa PostgreSQL) kama mfano, nitakuambia jinsi tulivyotatua matatizo haya kwa kuzindua kozi ya ukuzaji wa chanzo huria katika chuo kikuu, tulichofanikisha na tutaendelea wapi.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Salamu tena kila mtu! Mimi ni msanidi wa Yandex kutoka Yekaterinburg. Na leo nitazungumza juu ya WAL-G.

Kichwa cha ripoti hakikusema kuwa ni kitu kuhusu chelezo. Kuna mtu anajua WAL-G ni nini? Au kila mtu anajua? Inua mkono wako kama hujui. Shit, ulikuja kwenye ripoti na haujui inahusu nini.

Hebu niambie kitakachotokea leo. Inatokea kwamba timu yetu imekuwa ikifanya nakala kwa muda mrefu. Na hii ni ripoti nyingine katika mfululizo ambapo tunazungumza kuhusu jinsi tunavyohifadhi data kwa usalama, usalama, kwa urahisi na kwa ufanisi.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Katika mfululizo uliopita kulikuwa na ripoti nyingi za Andrei Borodin na Vladimir Leskov. Tulikuwa wengi. Na tumekuwa tukizungumza juu ya WAL-G kwa miaka mingi.

clck.ru/F8ioz - https://www.highload.ru/moscow/2018/abstracts/3964

clck.ru/Ln8Qw - https://www.highload.ru/moscow/2019/abstracts/5981

Ripoti hii itakuwa tofauti kidogo na nyingine kwa kuwa ilihusu zaidi sehemu ya kiufundi, lakini hapa nitazungumzia jinsi tulivyokumbana na matatizo yanayohusiana na ukuaji wa jamii. Na jinsi tulivyopata wazo dogo linalotusaidia kukabiliana na hili.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Miaka michache iliyopita, WAL-G ilikuwa mradi mdogo sana ambao tulipata kutoka kwa Citus Data. Na tulichukua tu. Na ilitengenezwa na mtu mmoja.

Na ni WAL-G pekee ambao hawakuwa na:

  • Hifadhi nakala kutoka kwa nakala.
  • Hakukuwa na nakala za ziada.
  • Hakukuwa na nakala rudufu za WAL-Delta.
  • Na bado kulikuwa na mengi chungu nzima.

Kwa miaka hii michache, WAL-G imekua sana.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Na kufikia 2020, yote yaliyo hapo juu tayari yameonekana. Na kwa hii iliongezwa kile tulicho nacho sasa:

  • Zaidi ya nyota 1 kwenye GitHub.
  • 150 uma.
  • Takriban 15 PRs wazi.
  • Na wachangiaji wengi zaidi.
  • Na fungua maswala kila wakati. Na hii licha ya ukweli kwamba sisi huenda huko kila siku na kufanya kitu juu yake.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Na tukafikia hitimisho kwamba mradi huu unahitaji umakini wetu zaidi, hata wakati sisi wenyewe hatuhitaji kutekeleza chochote kwa huduma yetu ya Hifadhidata iliyosimamiwa katika Yandex.

Na mahali pengine katika msimu wa joto wa 2018, wazo lilikuja akilini mwetu. Kawaida timu ina njia kadhaa za kukuza baadhi ya vipengele au kurekebisha hitilafu ikiwa huna mikono ya kutosha. Kwa mfano, unaweza kuajiri msanidi mwingine na kumlipa pesa. Au unaweza kuchukua mwanafunzi wa ndani kwa muda na pia kumlipa mshahara. Lakini bado kuna kundi kubwa la watu, ambao baadhi yao tayari wanajua jinsi ya kuandika msimbo. Hujui kila wakati nambari ni ya ubora gani.

Tulifikiria juu yake na tukaamua kujaribu kuvutia wanafunzi. Lakini wanafunzi hawatashiriki katika kila kitu pamoja nasi. Watafanya tu sehemu fulani ya kazi. Nao, kwa mfano, wataandika vipimo, kurekebisha mende, kutekeleza vipengele ambavyo haviathiri utendaji kuu. Kazi kuu ni kuunda chelezo na kurejesha nakala. Ikiwa tutafanya makosa katika kuunda nakala, tutapoteza data. Na hakuna mtu anataka hii, bila shaka. Kila mtu anataka kila kitu kiwe salama sana. Kwa hivyo, bila shaka, hatutaki kuruhusu nambari ambayo tunaamini chini ya yetu. Hiyo ni, nambari yoyote isiyo muhimu ndiyo tungependa kupokea kutoka kwa wafanyikazi wetu wa ziada.

PR ya mwanafunzi inakubaliwa katika hali gani?

  • Wanahitajika kufunika nambari zao na majaribio. Kila kitu kinapaswa kufanyika katika CI.
  • Na pia tunapitia hakiki 2. Moja ya Andrey Borodin na moja na mimi.
  • Na kwa kuongeza, ili kuhakikisha kuwa hii haitavunja chochote katika huduma yetu, ninapakia kusanyiko kando na ahadi hii. Na tunaangalia majaribio ya mwisho hadi mwisho kwamba hakuna kinachoshindwa.

Kozi maalum juu ya Open Source

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Kidogo kuhusu kwa nini hii inahitajika na kwa nini hii, inaonekana kwangu, ni wazo nzuri.

Kwa upande wetu, faida ni dhahiri:

  • Tunapata mikono ya ziada.
  • Na tunatafuta wagombeaji wa timu kati ya wanafunzi mahiri wanaoandika msimbo mahiri.

Je, ni faida gani kwa wanafunzi?

Huenda zisiwe dhahiri, kwa sababu wanafunzi, kwa uchache, hawapokei pesa kwa msimbo wanaoandika, lakini hupokea tu alama za rekodi zao za wanafunzi.

Niliwauliza kuhusu hili. Na kwa maneno yao:

  • Uzoefu wa mchangiaji katika Chanzo Huria.
  • Pata mstari kwenye CV yako.
  • Thibitisha mwenyewe na upitishe mahojiano katika Yandex.
  • Kuwa mwanachama wa GSoC.
  • +1 kozi maalum kwa wale wanaotaka kuandika msimbo.

Sitazungumza juu ya jinsi kozi hiyo iliundwa. Nitasema tu kwamba WAL-G ulikuwa mradi mkuu. Pia tulijumuisha miradi kama vile Odyssey, PostgreSQL na ClickHouse katika kozi hii.

Na walitoa shida sio tu katika kozi hii, lakini pia walitoa diploma na kozi.

Vipi kuhusu manufaa kwa watumiaji?

Sasa hebu tuendelee kwenye sehemu inayokuvutia zaidi. Je, hii inakufaa nini? Jambo ni kwamba wanafunzi walirekebisha makosa mengi. Na tulifanya vipengele vya ombi ambavyo ulituomba tufanye.

Na wacha nikuambie juu ya mambo ambayo umetaka kwa muda mrefu na ambayo yamepatikana.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Msaada wa nafasi za meza. Nafasi za meza katika WAL-G zimetarajiwa pengine tangu kutolewa kwa WAL-G, kwa sababu WAL-G ndiye mrithi wa zana nyingine ya chelezo WAL-E, ambapo chelezo za hifadhidata zilizo na nafasi za meza zilitumika.

Acha nikukumbushe kwa ufupi ni nini na kwa nini inahitajika. Kwa kawaida, data zako zote za Postgres huchukua saraka moja kwenye mfumo wa faili, unaoitwa msingi. Na saraka hii tayari ina faili zote na subdirectories zinazohitajika na Postgres.

Nafasi za meza ni saraka ambazo zina data ya Postgres, lakini haziko nje ya saraka ya msingi. Slaidi inaonyesha kuwa nafasi za meza ziko nje ya saraka ya msingi.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Je, hii inaonekanaje kwa Postgres yenyewe? Kuna saraka ndogo tofauti pg_tblspc kwenye saraka ya msingi. Na ina ulinganifu kwa saraka ambazo zina data ya Postgres nje ya saraka ya msingi.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Unapotumia haya yote, basi kwako amri hizi zinaweza kuonekana kama hii. Hiyo ni, unaunda jedwali katika nafasi fulani ya meza na uone iko wapi sasa. Hizi ni mistari miwili ya mwisho, amri mbili za mwisho zinaitwa. Na hapo ni wazi kuwa kuna njia fulani. Lakini kwa kweli, hii sio njia halisi. Hii ndio njia iliyoangaziwa kutoka kwa saraka ya msingi hadi nafasi ya meza. Na kutoka hapo inalinganishwa na ulinganifu unaopelekea data yako halisi.

Hatutumii haya yote katika timu yetu, lakini ilitumiwa na watumiaji wengine wengi wa WAL-E ambao walituandikia kwamba walitaka kuhamia WAL-G, lakini hii ilikuwa inawazuia. Hii sasa inaungwa mkono.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Kipengele kingine ambacho kozi yetu maalum ilituletea ni catchup. Watu ambao pengine wamefanya kazi zaidi na Oracle kuliko Postgres wanajua kuhusu catchup.

Kwa kifupi ni nini. Topolojia ya nguzo katika huduma yetu inaweza kuonekana kama hii. Tuna bwana. Kuna nakala ambayo hutiririsha logi ya kuandika mbele kutoka kwayo. Na nakala humwambia bwana ambayo LSN iko kwa sasa. Na mahali pengine sambamba na hili, logi inaweza kuhifadhiwa kwenye kumbukumbu. Na pamoja na kuhifadhi kumbukumbu, chelezo pia hutumwa kwa wingu. Na chelezo za delta zinatumwa.

Tatizo linaweza kuwa nini? Unapokuwa na hifadhidata kubwa, inaweza kuibuka kuwa nakala yako inaanza kubaki nyuma ya bwana. Na yeye yuko nyuma sana kwamba hawezi kamwe kumpata. Tatizo hili kwa kawaida linahitaji kutatuliwa kwa namna fulani.

Na njia rahisi ni kuondoa replica na kuipakia tena, kwa sababu haitapata kamwe, na tatizo linahitaji kushughulikiwa. Lakini hii ni muda mrefu sana, kwa sababu kurejesha hifadhidata ya TB 10 ni muda mrefu sana. Na tunataka kufanya haya yote haraka iwezekanavyo ikiwa shida kama hizo zitatokea. Na kwamba ni nini hasa catchup ni kwa ajili ya.

Catchup hukuruhusu kutumia chelezo za delta, ambazo zimehifadhiwa kwenye wingu kwa njia hii. Unasema ni LSN gani nakala iliyochelewa imewashwa kwa sasa na uibainishe katika amri ya kukamata ili kuunda chelezo ya delta kati ya LSN hiyo na LSN ambayo nguzo yako iko kwa sasa. Na baada ya hapo unarejesha nakala rudufu hii kwenye nakala ambayo ilikuwa nyuma.

Misingi mingine

Wanafunzi pia walituletea vipengele vingi mara moja. Kwa kuwa katika Yandex tunapika sio tu Postgres, pia tuna MySQL, MongoDB, Redis, ClickHouse, wakati fulani tulihitaji kuweza kufanya nakala rudufu na uokoaji wa wakati kwa MySQL, na ili kuwe na fursa ya kupakia. wao kwa wingu.

Na tulitaka kuifanya kwa njia sawa na ile WAL-G hufanya. Na tuliamua kujaribu na kuona jinsi yote yangeonekana.

Na mwanzoni, bila kushiriki mantiki hii kwa njia yoyote, waliandika msimbo kwenye uma. Waliona kwamba tuna aina fulani ya mfano wa kufanya kazi na inaweza kuruka. Kisha tukafikiri kwamba jumuiya yetu kuu ni postgresists, wanatumia WAL-G. Na kwa hivyo tunahitaji kwa namna fulani kutenganisha sehemu hizi. Hiyo ni, tunapohariri msimbo wa Postgres, hatuvunji MySQL; tunapohariri MySQL, hatuvunji Postgres.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Wazo la kwanza juu ya jinsi ya kutenganisha hili lilikuwa wazo la kutumia mbinu ile ile ambayo inatumika katika upanuzi wa PostgreSQL. Na, kwa kweli, kutengeneza chelezo ya MySQL ilibidi usakinishe aina fulani ya maktaba yenye nguvu.

Lakini hapa asymmetry ya mbinu hii inaonekana mara moja. Unapohifadhi nakala za Postgres, unaweka nakala rudufu ya kawaida ya Postgres juu yake na kila kitu kiko sawa. Na kwa MySQL inabadilika kuwa unasakinisha chelezo kwa Postgres na pia kusakinisha maktaba yenye nguvu ya MySQL yake. Inaonekana ya ajabu. Tulifikiri hivyo pia na tukaamua kuwa hili halikuwa suluhisho tulilohitaji.

Miundo anuwai ya Postgres, MySQL, MongoDB, Redis

Lakini hii ilituruhusu, inaonekana kwetu, kufikia uamuzi sahihi - kutenga makusanyiko tofauti kwa besi tofauti. Hii ilifanya iwezekane kutenga mantiki iliyounganishwa na chelezo za hifadhidata mbalimbali ambazo zitafikia API ya kawaida ambayo WAL-G inatekeleza.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Hii ndio sehemu tuliyoandika wenyewe - kabla ya kuwapa wanafunzi shida. Hiyo ni, hii ndio sehemu ambayo wanaweza kufanya kitu kibaya, kwa hivyo tuliamua kwamba ni bora tufanye kitu kama hiki na kila kitu kitakuwa sawa.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Baada ya hapo tulitoa shida. Walivunjwa mara moja. Wanafunzi walitakiwa kuunga mkono misingi mitatu.

Hii ni MySQL, ambayo tumekuwa tukihifadhi nakala kwa kutumia WAL-G kwa njia hii kwa zaidi ya mwaka mmoja.

Na sasa MongoDB inakaribia uzalishaji, ambapo wanaimaliza na faili. Kwa kweli, tuliandika mfumo wa haya yote. Kisha wanafunzi wakaandika baadhi ya mambo yanayoweza kutekelezeka. Na kisha tunawaleta kwa hali ambayo tunaweza kukubali katika uzalishaji.

Matatizo haya hayakuonekana kama wanafunzi walihitaji kuandika zana kamili za kuhifadhi nakala kwa kila hifadhidata hizi. Hatukuwa na tatizo kama hilo. Shida yetu ilikuwa kwamba tulitaka urejeshaji wa moja kwa moja na tulitaka kuhifadhi nakala kwenye wingu. Na waliwauliza wanafunzi kuandika msimbo fulani ambao ungesuluhisha hili. Wanafunzi walitumia zana za chelezo zilizopo tayari, ambazo kwa namna fulani huchukua chelezo, na kisha kuziunganisha zote pamoja na WAL-G, ambayo ilisambaza zote kwenye wingu. Na pia waliongeza ahueni ya wakati kwa hili.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Wanafunzi walileta nini kingine? Walileta usaidizi wa usimbaji fiche wa Libsodium kwa WAL-G.

Pia tuna sera za hifadhi rudufu. Sasa nakala rudufu zinaweza kutiwa alama kuwa za kudumu. Na kwa njia fulani ni rahisi zaidi kwa huduma yako kubinafsisha mchakato wa kuzihifadhi.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Je, matokeo ya jaribio hili yalikuwa nini?

Zaidi ya watu 100 walijiandikisha kwa kozi hiyo hapo awali. Mwanzoni sikusema kwamba chuo kikuu huko Yekaterinburg ni Chuo Kikuu cha Shirikisho la Ural. Tulitangaza kila kitu hapo. Watu 100 walijiandikisha. Kwa kweli, watu wachache walianza kufanya kitu, kama watu 30.

Hata watu wachache walimaliza kozi, kwa sababu ilikuwa ni lazima kuandika vipimo kwa kanuni ambazo tayari zipo. Na pia rekebisha hitilafu fulani au tengeneza kipengele fulani. Na wanafunzi wengine bado walifunga kozi.

Hivi sasa, wakati wa kozi hii, wanafunzi wamerekebisha kuhusu masuala 14 na kutengeneza vipengele 10 vya ukubwa mbalimbali. Na, inaonekana kwangu, hii ni uingizwaji kamili wa watengenezaji mmoja au wawili.

Miongoni mwa mambo mengine, tulitoa diploma na kozi. Na 12 walipokea diploma. 6 kati yao tayari wamejitetea kwa "5". Wale waliosalia bado hawakuwa na ulinzi, lakini nadhani kila kitu kitakuwa sawa kwao pia.

Mipango ya siku zijazo

Je, tuna mipango gani ya siku zijazo?

Angalau maombi hayo ya vipengele ambayo tayari tumesikia kutoka kwa watumiaji na tunataka kufanya. Hii:

  • Kufuatilia usahihi wa ufuatiliaji wa kalenda ya matukio katika kumbukumbu ya chelezo ya nguzo ya HA. Unaweza kufanya hivyo kwa WAL-G. Na nadhani tutakuwa na wanafunzi ambao watashughulikia suala hili.
  • Tayari tunaye mtu anayehusika na kuhamisha nakala rudufu na WAL kati ya mawingu.
  • Na hivi majuzi tulichapisha wazo kwamba tunaweza kuharakisha WAL-G hata zaidi kwa kufungua nakala rudufu za ziada bila kuandika upya kurasa na kuboresha kumbukumbu tunazotuma huko.

Unaweza kuzishiriki hapa

Je, ripoti hii ilikuwa ya nini? Kwa kuongezea, sasa, pamoja na watu 4 wanaounga mkono mradi huu, tuna mikono ya ziada, ambayo kuna mengi sana. Hasa ikiwa unawaandikia katika ujumbe wa kibinafsi. Na ikiwa utahifadhi nakala ya data yako na kuifanya kwa kutumia WAL-G au ungependa kuhamia WAL-G, basi tunaweza kushughulikia matakwa yako kwa urahisi.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

Huu ni msimbo wa QR na kiungo. Unaweza kuzipitia na kuandika matakwa yako yote. Kwa mfano, sisi si kurekebisha baadhi ya mdudu. Ama kweli unataka kipengele fulani, lakini kwa sababu fulani bado hakijahifadhiwa katika chelezo yoyote, pamoja na yetu. Hakikisha kuandika kuhusu hili.

WAL-G: vipengele vipya na upanuzi wa jumuiya. Georgy Rylov

maswali

Habari! Asante kwa ripoti! Swali kuhusu WAL-G, lakini sio kuhusu Postgres. WAL-G huhifadhi nakala za MySQL na huita nakala rudufu ya ziada. Ikiwa tutachukua usakinishaji wa kisasa kwenye CentOS na ukifanya yum kusakinisha MySQL, MariDB itasakinishwa. Nakala ya ziada ya toleo la 10.3 haitumiki, chelezo ya MariDB inatumika. Unaendeleaje na hili?

Kwa sasa hatujajaribu kuhifadhi nakala ya MariDB. Tumekuwa na maombi ya usaidizi wa FoundationDB, lakini kwa ujumla, ikiwa kuna ombi kama hilo, basi tunaweza kupata watu ambao watafanya hivyo. Sio ndefu au ngumu kama ninavyofikiria.

Habari za mchana Asante kwa ripoti! Swali kuhusu vipengele vipya vinavyowezekana. Je, uko tayari kufanya WAL-G kufanya kazi na kanda ili uweze kuhifadhi nakala kwenye kanda?

Kuhifadhi nakala kwenye hifadhi ya tepi inaonekana inamaanisha?

Ndiyo.

Kuna Andrei Borodin, ambaye anaweza kujibu swali hili bora kuliko mimi.

(Andrey) Ndiyo, asante kwa swali! Tulikuwa na ombi la kuhamisha nakala rudufu kwenye kanda kutoka kwa hifadhi ya wingu. Na kwa hili sawing uhamisho kati ya mawingu. Kwa sababu uhamishaji wa wingu hadi wingu ni toleo la jumla la uhamishaji wa tepi. Kwa kuongeza, tunayo usanifu wa kupanuliwa katika suala la Hifadhi. Kwa njia, Storoges nyingi ziliandikwa na wanafunzi. Na ukiandika Hifadhi kwa mkanda, basi itakuwa, bila shaka, kuungwa mkono. Tuko tayari kuzingatia maombi ya kuvuta. Huko unahitaji kuandika faili, soma faili. Ukifanya mambo haya katika Go, kwa kawaida unaishia na mistari 50 ya msimbo. Na kisha mkanda utasaidiwa katika WAL-G.

Asante kwa ripoti! Mchakato wa maendeleo ya kuvutia. Hifadhi nakala ni sehemu kubwa ya utendakazi ambayo inapaswa kufunikwa vyema na majaribio. Je, ulipotekeleza utendakazi wa hifadhidata mpya, je wanafunzi pia waliandika majaribio, au uliandika mitihani mwenyewe kisha ukawapa wanafunzi utekelezaji?

Wanafunzi pia waliandika mitihani. Lakini wanafunzi waliandika zaidi kwa vipengele kama vile hifadhidata mpya. Waliandika vipimo vya ujumuishaji. Na waliandika vipimo vya kitengo. Ikiwa ujumuishaji unapita, ambayo ni, kwa sasa, hii ni hati ambayo unaifanya kwa mikono au unayo cron kuifanya, kwa mfano. Yaani script hapo iko wazi sana.

Wanafunzi hawana uzoefu mwingi. Je, kukagua huchukua muda mwingi?

Ndio, ukaguzi huchukua muda mwingi. Hiyo ni, kwa kawaida, wakati wahusika kadhaa wanakuja mara moja na kusema kwamba nilifanya hivi, nilifanya hivyo, basi unahitaji kufikiria na kutenga karibu nusu ya siku ili kujua kile walichoandika hapo. Kwa sababu kanuni lazima isomwe kwa makini. Hawakuwa na mahojiano. Hatuwafahamu vizuri, kwa hivyo inachukua muda mwingi.

Asante kwa ripoti! Hapo awali, Andrey Borodin alisema kuwa archive_command katika WAL-G inapaswa kuitwa moja kwa moja. Lakini katika kesi ya aina fulani ya cartridge ya nguzo, tunahitaji mantiki ya ziada ili kuamua nodi ambayo tutatuma shafts. Je, unatatuaje tatizo hili mwenyewe?

Tatizo lako ni nini hapa? Wacha tuseme una nakala inayolingana ambayo unafanya nakala rudufu? Au nini?

(Andrey) Ukweli ni kwamba kwa kweli WAL-G imekusudiwa kutumiwa bila hati za ganda. Ikiwa kuna kitu kinakosekana, basi wacha tuongeze mantiki ambayo inapaswa kuwa ndani ya WAL-G. Kuhusu mahali ambapo uhifadhi unapaswa kutoka, tunaamini kwamba uhifadhi unapaswa kutoka kwa bwana wa sasa katika nguzo. Kuhifadhi kumbukumbu kutoka kwa nakala ni wazo mbaya. Kuna matukio mbalimbali yanayowezekana na matatizo. Hasa, matatizo na ratiba za kumbukumbu na maelezo yoyote ya ziada. Asante kwa swali!

(Ufafanuzi: Tuliondoa maandishi ya ganda katika suala hili)

Habari za jioni! Asante kwa ripoti! Ninavutiwa na kipengele cha kukamata ulichozungumzia. Tulikabiliwa na hali ambapo nakala ilikuwa nyuma na haikuweza kupata. Na sikupata maelezo ya kipengele hiki katika hati za WAL-G.

Catchup ilionekana halisi tarehe 20 Januari 2020. Nyaraka zinaweza kuhitaji kazi zaidi. Tunaandika wenyewe na hatuiandiki vizuri sana. Na labda tuanze kuhitaji wanafunzi kuiandika.

Je, tayari imetolewa?

Ombi la kuvuta tayari limekufa, i.e. nililiangalia. Nilijaribu hii kwenye nguzo ya majaribio. Kufikia sasa hatujapata hali ambapo tunaweza kujaribu hii kwa mfano wa mapigano.

Wakati wa kutarajia?

Sijui. Subiri mwezi mmoja, tutaangalia kwa uhakika.

Chanzo: mapenzi.com

Kuongeza maoni