{"id":182581,"date":"2026-07-10T10:53:26","date_gmt":"2026-07-10T08:53:26","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy"},"modified":"2026-07-10T10:53:26","modified_gmt":"2026-07-10T08:53:26","slug":"pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/news\/pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy","title":{"rendered":"pgrust \u2014 en klon av PostgreSQL skriven i Rust, som passerar alla regressionstester","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Projektet pgrust har publicerats med en implementering av databashanteringssystemet PostgreSQL, omskriven p\u00e5 Rust med hj\u00e4lp av \u00f6vers\u00e4ttaren c2rust och en AI-assistent. Det har meddelats att projektet \u00e4nnu inte \u00e4r klart f\u00f6r anv\u00e4ndning i arbetsprojekt, men det passerar redan alla regressionstester f\u00f6r PostgreSQL, \u00e4r kompatibelt med dataformatet fr\u00e5n PostgreSQL 18.3 och kan anv\u00e4nda datakatalogen fr\u00e5n PostgreSQL 18.3. Koden f\u00f6r projektet distribueras under AGPLv3-licensen, till skillnad fr\u00e5n den ursprungliga PostgreSQL som tillhandah\u00e5lls under en permissiv PostgreSQL-licens, liknande BSD- och MIT-licenserna. En online-demonstration av funktionerna, baserad p\u00e5 en WebAssembly-build, samt en Docker-image f\u00f6r snabb installation, \u00e4r tillg\u00e4nglig.      <\/p>\n<p>Som utvecklingsm\u00e5l n\u00e4mns att uppn\u00e5 full kompatibilitet med PostgreSQL 18.3, samt att genomf\u00f6ra experiment f\u00f6r att f\u00f6r\u00e4ndra den interna strukturen och skapa en version av PostgreSQL som \u00e4r fri fr\u00e5n de arkitektoniska begr\u00e4nsningar som inte kan \u00f6vervinnas av historiska sk\u00e4l. Projektet passerar framg\u00e5ngsrikt en upps\u00e4ttning av mer \u00e4n 46 000 regressionstester f\u00f6r PostgreSQL, men \u00e4r f\u00f6r n\u00e4rvarande inkompatibelt med till\u00e4gg till PostgreSQL, ger inte de \u00f6nskade prestandaoptimeringarna och implementerar inte helt de procedurala spr\u00e5ken PL\/Python, PL\/Perl och PL\/Tcl.      <\/p>\n<p>Framtidsplaner:  <\/p>\n<ul>\n<li class=\"l\"> \u00d6vers\u00e4ttning till en flertr\u00e5dad internarkitektur.\n<li class=\"l\"> Implementering av anslutningspoolning.\n<li class=\"l\"> Optimering f\u00f6r arbetsfl\u00f6den som aktivt anv\u00e4nder JSON.\n<li class=\"l\"> M\u00f6jlighet att skapa kopior och grenar av databasobjekt i Copy-on-Write-l\u00e4ge utan att kopiera data.\n<li class=\"l\"> Experiment med en arkitektur som inte kr\u00e4ver att VACUUM-operationen utf\u00f6rs.\n<li class=\"l\"> Ett system f\u00f6r SQL-fr\u00e5gebegr\u00e4nsningar som kan blockera \u00f6verdriven resursanv\u00e4ndning vid utf\u00f6rande av d\u00e5ligt formulerade fr\u00e5gor.\n<li class=\"l\"> Skydd mot att optimizern v\u00e4xlar till mindre effektiva exekveringsplaner.    <\/ul>\n<p>Enligt projektets skapare p\u00e5g\u00e5r det f\u00f6r n\u00e4rvarande arbete med n\u00e4sta version av pgrust, d\u00e4r en flertr\u00e5dad modell f\u00f6r anslutningshantering har implementerats ist\u00e4llet f\u00f6r en pool av arbetstr\u00e5dar, samt att ytterligare optimeringar anv\u00e4nds, s\u00e5som batchbehandling av rader i tabeller och f\u00f6rhandsladdning av data. Vid testning med verktyget percona-tpcc visade den nya versionen av pgrust sig vara 50 % snabbare \u00e4n standard PostgreSQL vid hantering av transaktioner, och vid hantering av analytiska fr\u00e5gor hela 300 g\u00e5nger snabbare.      <\/p>\n<p>Vid \u00f6vers\u00e4ttningen till Rust anv\u00e4ndes en hybridmetod d\u00e4r PostgreSQL-koden f\u00f6rst bearbetades med hj\u00e4lp av \u00f6vers\u00e4ttaren c2rust, som genererade en os\u00e4ker Rust-representation som \u00e4r n\u00e4ra i struktur till den ursprungliga C-koden. Efter bearbetning i c2rust skapades cirka 1000 crate-paket som parallellt \u00f6versattes till idiomatisk Rust med hj\u00e4lp av AI-modellen Claude och verktyget Conductor f\u00f6r att f\u00f6rdela uppgifter mellan samtidigt k\u00f6rande underagenter.<br \/>\n<br \/>K\u00e4lla: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=65879\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 pgrust \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0421\u0423\u0411\u0414 PostgreSQL, \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0442\u043e\u0440\u0430 c2rust \u0438 AI-\u0430\u0441\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u0430. \u0417\u0430\u044f\u0432\u043b\u0435\u043d\u043e, \u0447\u0442\u043e \u043f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e\u043a\u0430 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445, \u043d\u043e \u0443\u0436\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0432\u0441\u0435 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u044b PostgreSQL, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c \u0441 \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u043c \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 PostgreSQL 18.3 \u0438 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c data-\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u043e\u0442 PostgreSQL 18.3. \u041a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-182581","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 pgrust \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0421\u0423\u0411\u0414 PostgreSQL, \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0442\u043e\u0440\u0430 c2rust \u0438 AI-\u0430\u0441\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Alexander Kovalev\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/news\/pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47pgrust \u2014 \u043a\u043b\u043e\u043d PostgreSQL \u043d\u0430 Rust, \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0432\u0441\u0435 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 pgrust \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0421\u0423\u0411\u0414 PostgreSQL, \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0442\u043e\u0440\u0430 c2rust \u0438 AI-\u0430\u0441\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/news\/pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-07-10T08:53:26+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-07-10T08:53:26+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47pgrust \u2014 en klon av PostgreSQL p\u00e5 Rust, som passerar alla regressionstest | ProHoster","description":"Projektet pgrust har publicerats med en implementation av databashanteraren PostgreSQL, omskriven i Rust med hj\u00e4lp av \u00f6vers\u00e4ttaren c2rust och AI-assistenten.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47pgrust \u2014 \u043a\u043b\u043e\u043d PostgreSQL \u043d\u0430 Rust, \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0432\u0441\u0435 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u044b\u0435 \u0442\u0435\u0441\u0442\u044b | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u0440\u043e\u0435\u043a\u0442 pgrust \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0421\u0423\u0411\u0414 PostgreSQL, \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0442\u043e\u0440\u0430 c2rust \u0438 AI-\u0430\u0441\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u0430.","og:url":"https:\/\/prohoster.info\/sv\/blog\/news\/pgrust-klon-postgresql-na-rust-prohodyashhij-vse-regressionnye-testy","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-07-10T08:53:26+00:00","article:modified_time":"2026-07-10T08:53:26+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"182581","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-08-05 12:22:05","updated":"2026-08-05 12:22:05","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/182581","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=182581"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/182581\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=182581"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=182581"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=182581"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}