WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Kuring nyarankeun anjeun maca transkrip laporan awal 2020 ku Georgy Rylov "WAL-G: kasempetan anyar sareng ékspansi komunitas"

Pangropéa open-source nyanghareupan seueur tantangan nalika aranjeunna tumbuh. Kumaha carana nyerat langkung seueur fitur anu diperyogikeun, ngalereskeun langkung seueur masalah sareng ngatur pikeun ningali seueur paménta tarik? Ngagunakeun WAL-G (cadangan-alat pikeun PostgreSQL) sabagé conto, kuring bakal ngabejaan ka maneh kumaha urang direngsekeun masalah ieu ku launching kursus on ngembangkeun Open-sumber di universitas, naon urang kahontal sarta dimana urang bakal mindahkeun salajengna.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Halo deui dulur! Abdi pamekar Yandex ti Yekaterinburg. Sareng dinten ieu kuring bakal ngobrol ngeunaan WAL-G.

Judul laporan henteu nyarios yén éta ngeunaan cadangan. Aya nu terang naon WAL-G? Atanapi sadayana terang? Angkat leungeun lamun teu nyaho. Duh, anjeun sumping ka laporan sareng henteu terang naon éta.

Hayu atuh ngabejaan Anjeun naon anu bakal kajadian kiwari. Kabeneran tim kami parantos ngadamel cadangan pikeun sababaraha waktos. Sareng ieu mangrupikeun laporan sanés dina séri dimana urang ngobrol ngeunaan kumaha urang nyimpen data sacara aman, aman, merenah sareng éfisién.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Dina séri saméméhna aya loba laporan Andrei Borodin jeung Vladimir Leskov. Aya loba urang. Sareng urang parantos ngobrol ngeunaan WAL-G mangtaun-taun.

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

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

Laporan ieu bakal rada béda ti nu séjén yén éta ngeunaan bagian teknis, tapi di dieu kuring bakal ngobrol ngeunaan kumaha urang encountered masalah pakait sareng tumuwuhna masarakat. Jeung kumaha urang datang nepi ka hiji gagasan leutik nu mantuan kami Cope jeung ieu.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Sababaraha taun ka pengker, WAL-G mangrupikeun proyék anu lumayan leutik anu kami kéngingkeun tina Citus Data. Sarta kami ngan nyandak eta. Sareng dikembangkeun ku hiji jalma.

Sareng ngan WAL-G teu gaduh:

  • Nyadangkeun tina réplika.
  • Teu aya cadangan incremental.
  • Henteu aya cadangan WAL-Delta.
  • Sareng masih seueur anu leungit.

Dina sababaraha taun ieu, WAL-G parantos ningkat pisan.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Sareng ku 2020, sadaya anu di luhur parantos muncul. Sareng ieu ditambah naon anu ayeuna urang gaduh:

  • Langkung ti 1 béntang dina GitHub.
  • 150 garpu.
  • Sakitar 15 PR kabuka.
  • Jeung loba deui kontributor.
  • Jeung isu kabuka sadaya waktu. Sareng ieu sanaos kanyataan yén urang sacara harfiah angkat ka ditu unggal dinten sareng ngalakukeun hiji hal ngeunaan éta.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Sareng kami dugi ka kacindekan yén proyék ieu peryogi langkung perhatian urang, sanaos urang sorangan henteu kedah ngalaksanakeun nanaon pikeun jasa Managed Databases kami di Yandex.

Sareng dimana waé dina usum gugur 2018, ideu sumping ka pikiran urang. Biasana tim gaduh sababaraha cara pikeun ngembangkeun sababaraha fitur atanapi ngalereskeun bug upami anjeun teu gaduh tangan anu cekap. Contona, anjeun tiasa nyewa pamekar sejen tur mayar anjeunna duit. Atanapi anjeun tiasa nyandak intern sakedap sareng ogé mayar anjeunna sababaraha gaji. Tapi masih aya sakelompok ageung jalma, sababaraha diantarana parantos terang kumaha nyerat kode. Anjeun ngan teu salawasna nyaho naon kualitas kode.

Urang mikir ngeunaan eta sarta mutuskeun pikeun nyobaan pikeun narik siswa. Tapi murid moal ilubiung dina sagalana kalawan kami. Aranjeunna ngan bakal ngalakukeun sababaraha bagian tina karya. Sareng aranjeunna, contona, nyerat tés, ngalereskeun bug, ngalaksanakeun fitur anu henteu mangaruhan fungsi utama. Fungsi utama nyaéta nyieun cadangan sareng malikkeun cadangan. Lamun urang nyieun kasalahan dina nyieun cadangan, urang bakal ngalaman leungitna data. Sareng teu aya anu hoyong ieu, tangtosna. Sarerea hayang sagalana janten pisan aman. Ku sabab kitu, tangtosna, urang henteu hoyong ngantepkeun kodeu anu urang percanten kirang ti urang sorangan. Hartina, sagala kode non-kritis naon urang hoyong nampi ti pagawe tambahan urang.

Dina kaayaan naon mahasiswa PR ditarima?

  • Aranjeunna diwajibkeun nutupan kodeu ku tés. Sagalana kudu lumangsung di CI.
  • Sarta kami ogé ngaliwatan 2 ulasan. Hiji ku Andrey Borodin sareng hiji ku kuring.
  • Sajaba ti éta, pikeun pariksa yen ieu moal megatkeun nanaon dina layanan urang, abdi misah unggah assembly kalawan komitmen ieu. Sareng urang pariksa dina tés tungtung-ka-tungtung yén teu aya anu gagal.

Kursus husus dina Open Source

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Sakedik ngeunaan naha ieu diperyogikeun sareng kunaon ieu, sigana kuring, mangrupikeun ide anu saé.

Pikeun kami, kauntungan jelas:

  • Simkuring meunang leungeun tambahan.
  • Sarta kami keur pilari calon pikeun tim diantara siswa pinter anu nulis kode pinter.

Naon mangpaatna pikeun siswa?

Éta bisa jadi kirang atra, sabab siswa, sahenteuna, teu nampi duit keur kode maranéhna nulis, tapi ngan narima sasmita pikeun rékaman murid maranéhanana.

Kuring nanya ka aranjeunna ngeunaan ieu. Jeung dina kecap maranéhanana:

  • Pangalaman kontributor dina Open Source.
  • Kéngingkeun garis dina CV anjeun.
  • Buktikeun diri anjeun sareng lulus wawancara dina Yandex.
  • Janten anggota GSoC.
  • +1 tangtu husus pikeun maranéhanana anu rék nulis kode.

Kuring moal ngobrol ngeunaan kumaha kursus ieu terstruktur. Kuring ngan bakal nyebutkeun yén WAL-G éta proyék utama. Kami ogé kalebet proyék sapertos Odyssey, PostgreSQL sareng ClickHouse dina kursus ieu.

Sareng aranjeunna masihan masalah henteu ngan ukur dina kursus ieu, tapi ogé masihan diploma sareng kursus.

Kumaha upami kauntungan pikeun pangguna?

Ayeuna hayu urang ngaléngkah ka bagian anu paling dipikaresep ku anjeun. Naon gunana ieu anjeun? Intina nyaéta murid-murid ngalereskeun seueur bug. Sareng kami ngadamel fitur pamundut anu anjeun naroskeun ka kami.

Jeung hayu atuh ngabejaan Anjeun tentang hal nu geus lila hayang jeung nu geus direalisasikeun.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

rojongan Tablespaces. Méja spasi dina WAL-G geus diperkirakeun meureun ti sékrési WAL-G, sabab WAL-G teh panerusna alat cadangan sejen WAL-E, dimana cadangan database kalawan tablespaces dirojong.

Hayu atuh sakeudeung ngingetan naon éta sarta naha éta kabéh diperlukeun. Ilaharna, sadaya data Postgres anjeun ngeusian hiji diréktori dina sistem file, anu disebut dasarna. Sareng diréktori ieu parantos ngandung sadaya file sareng subdirektori anu diperyogikeun ku Postgres.

Tablespaces mangrupakeun directories nu ngandung data Postgres, tapi maranéhna teu lokasina di luar diréktori dasar. Slide nunjukkeun yén tablespacs aya di luar diréktori dasar.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Naon rupa ieu pikeun Postgres sorangan? Aya subdirektori pg_tblspc anu misah dina diréktori dasar. Sarta eta ngandung symlinks ka directories nu sabenerna ngandung data Postgres luar diréktori dasar.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Nalika anjeun nganggo sadayana ieu, teras pikeun anjeun paréntah ieu tiasa katingali sapertos kieu. Nyaéta, anjeun nyiptakeun méja dina sababaraha tablespace anu khusus sareng ningali dimana ayeuna. Ieu dua garis panungtungan, dua paréntah panungtungan disebut. Tur aya jelas yén aya sababaraha cara. Tapi kanyataanana, ieu sanés cara anu leres. Ieu mangrupikeun jalur awalan tina diréktori dasar ka tablespace. Sareng ti dinya éta cocog sareng symlink anu nuju ka data nyata anjeun.

Kami henteu nganggo sadayana ieu dina tim kami, tapi dianggo ku seueur pangguna WAL-E anu sanés anu nyerat ka kami yén aranjeunna hoyong ngalih ka WAL-G, tapi ieu ngeureunkeunana. Ieu ayeuna didukung.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Fitur anu sanés anu kami bawa ku kursus khusus nyaéta catchup. Jalma anu sigana parantos damel langkung seueur sareng Oracle tibatan sareng Postgres terang ngeunaan catchup.

Sakeudeung ngeunaan naon éta. Topologi klaster dina jasa kami biasana sigana sapertos kieu. Urang boga master. Aya réplika anu ngalirkeun log tulis-payun ti dinya. Sarta replika ngabejaan master nu LSN eta ayeuna on. Sareng di tempat anu paralel sareng ieu, log tiasa diarsipkeun. Sareng salian pikeun ngarsipkeun log, cadangan ogé dikirim ka méga. Jeung cadangan délta dikirim.

Naon bisa jadi masalah? Nalika anjeun gaduh database anu lumayan ageung, sigana réplika anjeun mimiti mundur jauh ti master. Sarta manehna lags jadi jauh balik yén Aisyah pernah bisa nyekel up kalawan anjeunna. Masalah ieu biasana kedah direngsekeun kumaha waé.

Sareng cara panggampangna nyaéta ngaleupaskeun réplika sareng unggah deui, sabab éta moal pernah nyekel, sareng masalahna kedah diurus. Tapi ieu téh rada lila, sabab malikkeun hiji sakabéh 10 cadangan database TB nyaéta waktu anu pohara lila. Sareng urang hoyong ngalakukeun sadayana ieu gancang-gancang upami aya masalah sapertos kitu. Tur éta kahayang pikeun catchup.

Catchup ngamungkinkeun anjeun ngagunakeun cadangan délta, anu disimpen dina méga ku cara ieu. Anjeun nyarios LSN mana réplika anu katinggaleun ayeuna dihurungkeun sareng netepkeunana dina paréntah catchup pikeun nyiptakeun cadangan délta antara LSN sareng LSN dimana kluster anjeun ayeuna aya. Sareng saatos éta anjeun malikkeun cadangan ieu kana réplika anu katinggaleun.

Dasar séjén

Siswa ogé masihan kami seueur fitur sakaligus. Kusabab di Yandex urang masak teu ukur Postgres, urang ogé boga MySQL, MongoDB, Redis, ClickHouse, di sawatara titik urang diperlukeun pikeun bisa nyieun cadangan kalawan recovery point-in-time pikeun MySQL, sarta ku kituna aya kasempetan pikeun unggah. aranjeunna ka awan.

Sareng urang hoyong ngalakukeun éta dina sababaraha cara anu sami sareng anu dilakukeun ku WAL-G. Sarta kami mutuskeun pikeun ékspérimén tur tingal kumaha eta sadayana bakal kasampak.

Sareng mimitina, tanpa ngabagi logika ieu ku cara naon waé, aranjeunna nyerat kodeu dina garpu. Aranjeunna ningali yén urang gaduh sababaraha jinis modél anu tiasa dianggo sareng éta tiasa ngapung. Teras we panginten yén komunitas utama urang nyaéta postgresists, aranjeunna nganggo WAL-G. Ku kituna urang kudu kumaha bae misahkeun bagian ieu. Nyaéta, nalika urang ngédit kode pikeun Postgres, kami henteu ngarecah MySQL; nalika kami ngédit MySQL, kami henteu ngarobih Postgres.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Gagasan anu munggaran ngeunaan cara misahkeun ieu nyaéta ideu ngagunakeun pendekatan anu sami anu dianggo dina ekstensi PostgreSQL. Sareng, kanyataanna, pikeun ngadamel cadangan MySQL anjeun kedah masang sababaraha jinis perpustakaan dinamis.

Tapi di dieu asimétri tina pendekatan ieu langsung katingali. Nalika anjeun nyadangkeun Postgres, anjeun nempatkeun cadangan normal pikeun Postgres sareng sadayana henteu kunanaon. Sareng pikeun MySQL tétéla anjeun masang cadangan pikeun Postgres sareng ogé masang perpustakaan dinamis pikeun MySQL pikeun éta. Ieu hurung rada aneh. Urang ogé panginten sareng mutuskeun yén ieu sanés solusi anu urang peryogikeun.

Rupa-rupa ngawangun pikeun Postgres, MySQL, MongoDB, Redis

Tapi ieu ngamungkinkeun urang, sigana urang, datang ka kaputusan katuhu - allocate majelis béda pikeun basa béda. Ieu ngamungkinkeun pikeun ngasingkeun logika anu aya hubunganana sareng cadangan tina sababaraha pangkalan data anu bakal ngaksés API umum anu diimplementasikeun ku WAL-G.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Ieu mangrupikeun bagian anu urang nyerat sorangan - sateuacan masihan masalah ka murid. Nyaéta, ieu mangrupikeun bagian dimana aranjeunna tiasa ngalakukeun anu salah, janten kami mutuskeun yén urang langkung saé ngalakukeun sapertos kieu sareng sadayana bakal saé.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Sanggeus éta kami méré kaluar masalah. Aranjeunna langsung dibongkar. Murid diwajibkeun ngarojong tilu basa.

Ieu MySQL, anu kami parantos nyadangkeun nganggo WAL-G ku cara ieu langkung ti sataun.

Sareng ayeuna MongoDB nuju ka produksi, dimana aranjeunna ngabéréskeunana ku file. Kanyataanna, urang nulis kerangka pikeun sakabéh ieu. Lajeng murid nulis sababaraha hal bisa dipake. Teras we bawa aranjeunna ka kaayaan anu urang tiasa nampi dina produksi.

Masalah ieu henteu sigana murid kedah nyerat alat cadangan lengkep pikeun masing-masing pangkalan data ieu. Kami henteu ngagaduhan masalah sapertos kitu. Masalah kami nyaéta yén kami hoyong pamulihan titik-waktos sareng kami hoyong nyadangkeun kana méga. Jeung maranéhna nanya ka siswa nulis sababaraha kode nu bakal ngajawab ieu. Siswa ngagunakeun alat cadangan anu tos aya, anu kumaha waé nyandak cadangan, teras ngagantelkeun sadayana sareng WAL-G, anu diteruskeun sadayana kana méga. Sareng aranjeunna ogé nambihan pamulihan titik-waktos pikeun ieu.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Naon deui anu dibawa ku murid? Aranjeunna nyangking dukungan enkripsi Libsodium ka WAL-G.

Urang ogé boga kawijakan gudang cadangan. Ayeuna cadangan tiasa ditandaan salaku permanén. Sareng kumaha waé éta langkung merenah pikeun layanan anjeun pikeun ngajadikeun otomatis prosés nyimpen éta.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Naon hasil tina percobaan ieu?

Leuwih ti 100 urang mimitina didaptarkeun pikeun kursus. Mimitina kuring henteu nyebutkeun yén universitas di Yekaterinburg - Universitas Federal Ural. Urang ngumumkeun sagalana aya. 100 jalma didaptarkeun. Kanyataanna, langkung seueur jalma anu ngamimitian ngalakukeun hiji hal, sakitar 30 urang.

Malah leuwih saeutik jalma réngsé kursus, sabab ieu diperlukeun pikeun nulis tés pikeun Konci nu geus aya. Sareng ogé ngalereskeun sababaraha bug atanapi ngadamel sababaraha fitur. Sareng sababaraha mahasiswa masih nutup kursus.

Ayeuna, salami kursus ieu, murid parantos ngalereskeun sakitar 14 masalah sareng ngadamel 10 fitur tina sababaraha ukuran. Sareng, sigana kuring, ieu mangrupikeun gaganti pinuh ku hiji atanapi dua pamekar.

Diantara hal séjén, urang ngaluarkeun diploma sareng kursus. Sareng 12 nampi diploma. 6 diantarana parantos ngabela diri dina "5". Anu tetep henteu acan gaduh panyalindungan, tapi kuring nyangka yén sadayana ogé bakal saé pikeun aranjeunna.

Rencana pikeun mangsa nu bakal datang

Naon rencana urang keur mangsa nu bakal datang?

Sahenteuna éta pamundut fitur anu kami parantos ngupingkeun ti pangguna sareng hoyong laksanakeun. Ieu:

  • Ngawaskeun kabeneran tracking timeline dina arsip cadangan klaster HA. Anjeun tiasa ngalakukeun ieu sareng WAL-G. Sareng kuring pikir urang bakal ngagaduhan murid anu bakal nyandak masalah ieu.
  • Kami parantos ngagaduhan jalma anu tanggung jawab pikeun mindahkeun cadangan sareng WAL antara awan.
  • Sareng kami nembe nyebarkeun ideu yén urang tiasa nyepetkeun WAL-G langkung jauh ku ngabongkar cadangan tambahan tanpa nyerat halaman sareng ngaoptimalkeun arsip anu kami kirimkeun ka dinya.

Anjeun tiasa ngabagikeunana di dieu

Naon laporan ieu? Sumawona, ayeuna, sajaba ti 4 jalma anu ngarojong proyék ieu, urang boga leungeun tambahan, nu aya cukup loba. Utamana upami anjeun nyerat aranjeunna dina pesen pribadi. Sareng upami anjeun nyadangkeun data anjeun sareng ngalakukeunana nganggo WAL-G atanapi hoyong ngalih ka WAL-G, maka kami tiasa kalayan gampang nampung kahoyong anjeun.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

Ieu mangrupikeun kode QR sareng tautan. Anjeun tiasa ngaliwat aranjeunna sareng nyerat sadaya kahoyong anjeun. Salaku conto, kami henteu ngalereskeun sababaraha bug. Atanapi anjeun hoyong sababaraha fitur, tapi pikeun sababaraha alesan éta henteu acan aya dina cadangan, kalebet milik urang. Pastikeun pikeun nulis ngeunaan ieu.

WAL-G: fitur anyar jeung perluasan komunitas. Géorgy Rylov

patarosan

Halo! Hatur nuhun laporan! Patarosan ngeunaan WAL-G, tapi henteu ngeunaan Postgres. WAL-G nyadangkeun MySQL sareng nyauran cadangan tambahan. Upami urang nyandak pamasangan modéren dina CentOS sareng upami anjeun badé pasang MySQL, MariDB bakal dipasang. Tina versi 10.3 cadangan tambahan henteu dirojong, cadangan MariDB dirojong. Kumaha anjeun ngalakukeun ieu?

Dina momen ieu kami henteu acan nyobian nyadangkeun MariDB. Kami parantos nyuhunkeun dukungan FoundationDB, tapi sacara umum, upami aya pamundut sapertos kitu, maka urang tiasa mendakan jalma anu bakal ngalakukeunana. Henteu panjang atanapi sesah sapertos anu kuring pikirkeun.

Wilujeng sonten Hatur nuhun laporan! Patarosan ngeunaan fitur anyar poténsial. Naha anjeun siap damel WAL-G nganggo kasét supados anjeun tiasa nyadangkeun kana kasét?

Nyadangkeun kana neundeun tape sigana hartosna?

Sumuhun.

Aya Andrei Borodin, anu bisa ngajawab patarosan ieu leuwih hade tinimbang kuring.

(Andrey) Leres, hatur nuhun pikeun patarosan! Kami ngagaduhan pamundut pikeun mindahkeun cadangan ka pita tina panyimpenan awan. Sareng pikeun ieu ngaragaji mindahkeun antara awan. Kusabab transfer awan-to-awan mangrupikeun versi umum tina transfer pita. Salaku tambahan, urang gaduh arsitéktur éksténsif dina hal Storages. Ku jalan kitu, loba Storoges ditulis ku siswa. Sareng upami anjeun nyerat Panyimpen pikeun kasét, maka éta, tangtosna, bakal didukung. Kami siap mertimbangkeun requests tarikan. Aya anjeun kedah nyerat file, maca file. Upami anjeun ngalakukeun hal-hal ieu di Go, biasana anjeun bakal nampi 50 garis kode. Teras pita bakal didukung dina WAL-G.

Hatur nuhun laporan! prosés ngembangkeun metot. Nyadangkeun mangrupikeun fungsionalitas anu serius anu kedah katutupan ku tés. Nalika anjeun ngalaksanakeun fungsionalitas pikeun pangkalan data énggal, naha murid ogé nyerat tés, atanapi anjeun nyerat tés nyalira teras masihan palaksanaan ka murid?

Siswa ogé nulis tés. Tapi mahasiswa nyerat langkung seueur pikeun fitur sapertos database énggal. Aranjeunna nyerat tés integrasi. Sareng aranjeunna nyerat tés unit. Upami integrasi pas, nyaéta, ayeuna, ieu mangrupikeun naskah anu anjeun laksanakeun sacara manual atanapi anjeun gaduh cron ngalakukeunana, contona. Hartina, naskah didinya jelas pisan.

Siswa henteu gaduh seueur pangalaman. Naha marios peryogi seueur waktos?

Sumuhun, ulasan nyandak rada loba waktu. Nyaéta, biasana, nalika sababaraha committers sumping sakaligus sareng nyarios yén kuring ngalakukeun ieu, kuring ngalakukeun éta, maka anjeun kedah mikir sareng nyéépkeun satengah dinten kanggo terang naon anu aranjeunna nyerat di dinya. Sabab kodeu kudu dibaca taliti. Aranjeunna teu gaduh wawancara. Kami henteu terang pisan, janten peryogi waktos anu ageung.

Hatur nuhun laporan! Saméméhna, Andrey Borodin nyatakeun yén archive_command dina WAL-G kudu disebut langsung. Tapi dina kasus sababaraha jenis kartrij klaster, urang peryogi logika tambahan pikeun nangtukeun titik dimana ngirim shafts. Kumaha anjeun ngajawab masalah ieu sorangan?

Naon masalah anjeun di dieu? Anggap anjeun gaduh réplika sinkron sareng anjeun damel cadangan? Atawa naon?

(Andrey) Kanyataan yén memang WAL-G dimaksudkeun pikeun dipaké tanpa Aksara cangkang. Upami aya anu leungit, teras urang tambahkeun logika anu kedah aya dina WAL-G. Sedengkeun pikeun mana arsip kedah asalna, kami yakin yén arsip kedah ti master ayeuna dina kluster. Arsip tina réplika mangrupikeun ide anu goréng. Aya rupa-rupa skenario mungkin jeung masalah. Khususna, masalah sareng arsip waktos sareng inpormasi tambahan. Hatur nuhun patarosan!

(Klarifikasi: Urang ngaleungitkeun skrip cangkang dina masalah ieu)

Wilujeng sonten! Hatur nuhun laporan! Abdi kabetot dina fitur catchup anjeun dikaitkeun. Kami Nyanghareupan kaayaan dimana replika aya di tukangeun sareng teu tiasa nangkep. Sareng kuring henteu mendakan pedaran ngeunaan fitur ieu dina dokumén WAL-G.

Catchup muncul sacara harfiah dina 20 Januari 2020. Dokuméntasi panginten peryogi langkung seueur padamelan. Kami nyeratna nyalira sareng kami henteu nyeratna saé pisan. Jeung meureun urang kudu ngamimitian merlukeun siswa nulis eta.

Dupi éta parantos dileupaskeun?

Paménta tarik téh geus maot, nyaéta kuring dipariksa deui. Kuring diusahakeun ieu dina klaster test. Sajauh ieu kami henteu acan ngagaduhan kaayaan dimana urang tiasa nguji ieu dina conto tempur.

Iraha kuduna?

Abdi henteu terang. Antosan sabulan, urang pariksa pasti.

sumber: www.habr.com

Tambahkeun komentar