[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-93195":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":9,"totalLinesOfCode":9,"stars":12,"forks":13,"watchers":14,"openIssues":14,"contributorsCount":9,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":18,"hasPages":18,"topics":20,"createdAt":9,"pushedAt":9,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":15,"starSnapshotCount":15,"syncStatus":29,"lastSyncTime":30,"discoverSource":31},93195,"pgrust","malisper\u002Fpgrust","malisper","Postgres rewritten in Rust, now passing 100% of the Postgres regression tests",null,"https:\u002F\u002Fgithub.com\u002Fmalisper\u002Fpgrust","Rust",1938,47,16,0,198,60.04,false,"main",[21,22,23,24,25],"ai-assisted-development","database","postgres","postgresql","rust","2026-07-22 04:02:08","\u003Ch1 align=\"center\">pgrust\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>A Postgres rewrite in Rust.\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg alt=\"Postgres 18.3\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPostgres-18.3-336791\">\n  \u003Cimg alt=\"Regression queries: 46k+\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fregression_queries-46k%2B-brightgreen\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmalisper\u002Fpgrust\u002Fblob\u002Fmain\u002FLICENSE\">\n    \u003Cimg alt=\"License: AGPL-3.0\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-AGPL--3.0-blue\">\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cdiv align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fpgrust.com\">Browser demo\u003C\u002Fa>\n  \u003Cspan>&nbsp;&nbsp;|&nbsp;&nbsp;\u003C\u002Fspan>\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002FFZZ4dbdvwU\">Discord\u003C\u002Fa>\n  \u003Cspan>&nbsp;&nbsp;|&nbsp;&nbsp;\u003C\u002Fspan>\n  \u003Ca href=\"https:\u002F\u002Fpgrust.com\u002F#updates\">Get pgrust updates\u003C\u002Fa>\n  \u003Cspan>&nbsp;&nbsp;|&nbsp;&nbsp;\u003C\u002Fspan>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmalisper\u002Fpgrust\u002Fissues\">Issues\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n\u003Cbr \u002F>\n\npgrust targets compatibility with Postgres 18.3 and matches Postgres's\nexpected output across more than 46,000 regression queries.\n\npgrust is disk compatible with Postgres and can boot from an existing Postgres\n18.3 data directory.\n\nThe goal is to make Postgres easier to change from the inside: keep the behavior\nPostgres-shaped, keep the real Postgres tests as the oracle, and use Rust plus\nAI-assisted programming to explore deeper server changes.\n\nUpdate: We're working on a new not yet published version of pgrust that currently passes 100% of Postgres regression suite, has a thread per connection model instead of process per connection, is 50% faster than Postgres on transaction workloads, and is ~300x faster than Postgres on analytical workloads (2x slower than Clickhouse on clickbench and we think it can get faster than Clickhouse). Follow pgrust or join our Discord for updates!\n\n## Follow pgrust\n\n[Get project updates by email](https:\u002F\u002Fpgrust.com\u002F#updates), including new\nreleases, compatibility milestones, and architecture experiments.\n\n## Status\n\npgrust is not production-ready yet. It is not performance optimized yet.\n\nExisting Postgres extensions and procedural language extensions such as\nPL\u002FPython, PL\u002FPerl, and PL\u002FTcl are not generally compatible yet. Some bundled\ncontrib modules are already ported, and more compatibility may be possible over\ntime.\n\n## Roadmap\n\n- multithreaded Postgres internals\n- built-in connection pooling\n- better JSON-heavy workload support\n- fast forking and branching workflows\n- storage experiments, including no-vacuum designs\n- runtime guardrails for bad queries and AI-generated SQL\n- fewer sudden bad plan switches\n\n## Try It\n\nTry the WebAssembly demo at https:\u002F\u002Fpgrust.com.\n\nDocker:\n\n```bash\ndocker run -d --name pgrust -e POSTGRES_PASSWORD=secret malisper\u002Fpgrust:v0.1 && until docker exec -e PGPASSWORD=secret pgrust psql -h 127.0.0.1 -U postgres -c '\\q' >\u002Fdev\u002Fnull 2>&1; do sleep 1; done && docker exec -it -e PGPASSWORD=secret pgrust psql -h 127.0.0.1 -U postgres; docker rm -f pgrust\n```\n\nThis uses the `psql` client inside the Docker image.\n\n`malisper\u002Fpgrust:latest` currently points at the same release, but `v0.1` is the\npinned launch image.\n\n## Build From Source\n\nmacOS:\n\n```bash\nbrew install icu4c openssl@3 libpq\n\nexport LIBRARY_PATH=\"$(brew --prefix openssl@3)\u002Flib:${LIBRARY_PATH:-}\"\nexport PKG_CONFIG_PATH=\"$(brew --prefix openssl@3)\u002Flib\u002Fpkgconfig:$(brew --prefix icu4c)\u002Flib\u002Fpkgconfig:${PKG_CONFIG_PATH:-}\"\nexport PATH=\"$(brew --prefix libpq)\u002Fbin:$PATH\"\n```\n\nDebian\u002FUbuntu:\n\n```bash\nsudo apt-get update\nsudo apt-get install -y build-essential pkg-config libicu-dev libssl-dev libldap2-dev libpam0g-dev postgresql-client-18\n```\n\nBuild:\n\n```bash\nPGRUST_PGSHAREDIR=\"$PWD\u002Fvendor\u002Fpostgres-18.3\u002Fshare\" \\\ncargo build --release --locked --bin postgres\n```\n\nCreate a data directory:\n\n```bash\ntarget\u002Frelease\u002Fpostgres --initdb \\\n  -D \u002Ftmp\u002Fpgrust-data \\\n  -L \"$PWD\u002Fvendor\u002Fpostgres-18.3\u002Fshare\" \\\n  --no-locale \\\n  --encoding UTF8 \\\n  -U postgres\n```\n\nRun pgrust:\n\n```bash\nulimit -s 65520\n\nRUST_MIN_STACK=33554432 target\u002Frelease\u002Fpostgres \\\n  -D \u002Ftmp\u002Fpgrust-data \\\n  -F \\\n  -c listen_addresses= \\\n  -k \u002Ftmp \\\n  -p 5432 \\\n  -c io_method=sync \\\n  -c max_stack_depth=60000\n```\n\nConnect:\n\n```bash\npsql -h \u002Ftmp -p 5432 -U postgres -d postgres \\\n  -c \"select version(), 1 + 1 as two\"\n```\n\n## Regression Tests\n\nRun the Postgres regression tests against pgrust:\n\n```bash\nPGRUST_BIN=\"$PWD\u002Ftarget\u002Frelease\u002Fpostgres\" \\\nscripts\u002Frun-regression\n```\n\nThe runner uses pgrust's own `--initdb` plus the vendored Postgres 18.3 test\nfiles in this repository. It needs a Postgres 18 `psql` client on `PATH`; if\n`psql` is somewhere else, set `PGRUST_PSQL=\u002Fpath\u002Fto\u002Fpsql`.\n\nVerified launch result: pgrust matched Postgres's expected output across more\nthan 46,000 regression queries.\n\n## History\n\nThis repository now contains the newer pgrust implementation that reached the\nregression-test milestone.\n\nThe older public implementation is archived on\n`archive\u002Fpre-fabled-2026-06-23`.\n\nBackground:\n\n- Original pgrust launch: https:\u002F\u002Fmalisper.me\u002Fpgrust-rebuilding-postgres-in-rust-with-ai\u002F\n- 67% regression update: https:\u002F\u002Fmalisper.me\u002Fpgrust-update-at-67-postgres-compatibility-and-accelerating\u002F\n- Four Horsemen roadmap: https:\u002F\u002Fmalisper.me\u002Fthe-four-horsemen-behind-thousands-of-postgres-outages\u002F\n\n## Feedback\n\nPlease open an issue if something breaks, if setup is confusing, or if there is\na Postgres improvement you want to see first.\n\n## Contact\n\n- Email: maintainers@pgrust.com\n- Discord: https:\u002F\u002Fdiscord.gg\u002FFZZ4dbdvwU\n- Project updates: https:\u002F\u002Fpgrust.com\u002F#updates\n\n## License\n\npgrust is licensed under AGPL-3.0. See `LICENSE`.\n","pgrust 是一个用 Rust 重写的 PostgreSQL 兼容数据库系统，目标是完全兼容 PostgreSQL 18.3 的行为与磁盘格式。它通过运行超过 46,000 条官方回归测试（已 100% 通过）验证语义一致性，并支持直接加载现有 PostgreSQL 数据目录。技术上采用线程而非进程处理连接，初步基准显示事务性能提升 50%，分析型负载提速约 300 倍；项目强调可维护性与内部可扩展性，结合 Rust 内存安全与 AI 辅助开发探索新型存储与查询执行机制。适用于数据库内核研究、高性能分析场景原型验证及 PostgreSQL 深度定制需求，当前仍处于非生产就绪阶段。",2,"2026-07-12 02:30:09","trending"]