Nikita ShamgunovNeon 博客
Databricks 收购 Electric 团队之后,Electric 将作为 Neon 的一部分并入。Electric 是 PGlite 与 Electric 同步引擎背后的团队:前者是基于 WebAssembly 的轻量 Postgres 运行时,可以直接在浏览器里跑;后者做的是实时数据同步。整合之后,Neon 的 serverless Postgres 平台会获得浏览器内执行与实时同步这两块能力。做本地优先应用的团队值得关注 PGlite 的许可与发布节奏是否照旧。
Wellingtone LuvongaCYBERTEC
Wellingtone Luvonga 记录了在 Kubernetes 上用 Crunchy PGO 做 PostgreSQL 跨区域灾备的完整流程,WAL 归档后端选用 MinIO。文章解决了三个难点:用 NGINX 反向代理给 pgBackRest 提供自签名 TLS、避免回切过程中 operator 死锁,以及处理时间线分裂造成的归档污染。步骤覆盖初始部署、复制验证、模拟区域故障切换,以及灾备站点提升为主库后如何把原主区域重建成备库。
Stefano D'AlessioAWS 数据库博客
Stefano D'Alessio 给出 Amazon RDS 与 Aurora PostgreSQL 的 TLS 做法。服务端把 rds.force_ssl 设为 1 拒绝明文连接,客户端用 sslmode=verify-full 校验服务端身份,证书颁发机构在三个可选 CA 里按需求选。文章还给了一套用 CDK 部署的监控:Lambda 配合 EventBridge 与 CloudWatch,提前 30 天发现将过期的证书。有无未加密连接查 pg_stat_ssl。
Tudor GolubencoXata 博客
Tudor Golubenco 演示了让每个租户用自己的密钥加密敏感列的做法。数据密钥存在 AWS KMS 里,应用在查询时取出并作为绑定参数传给 pgp_sym_encrypt 与 pgp_sym_decrypt,数据库本身不持有密钥。组织表用 kms_key_arn 标记是否启用自带密钥。文中点了几个坑:把 log_parameter_max_length 设为 0 以免密钥进慢查询日志、按行而不是按组织记录加密状态、密钥轮换后老行需要迁移。
Dimitri Fontaine作者博客
sqlfmt 是一个 gofmt 风格的 SQL 格式化工具:只有一种排版风格,没有任何配置开关。它采用的是把子句关键字右对齐到同一列的河流式排版。实现上用 Go 写成,走词法分析而不是抽象语法树,因此能处理粘贴进来的片段、不完整语句甚至不完全合法的语法;测试套件则拿 PostgreSQL 自己的解析器做校验。安装用 go install,作者还编译了一个 WebAssembly 版本放在网页上,不装东西也能直接格式化。
Christophe Pettusthebuild.com
Christophe Pettus 提醒 IntervalStyle 不只管间隔值怎么打印,也管怎么解析输入。同一个间隔在 postgres 下是 1 year 2 mons 3 days 04:05:06,在 sql_standard 下是 +1-2 +3 +4:05:06,在 iso_8601 下是 P1Y2M3DT4H5M6S。风险有三处:sql_standard 会改变负号字面量的含义,iso_8601 对混合符号的间隔输出严格解析器读不了的写法,全局改动会打乱驱动。
xoreaxeaxeax研究代码仓库
研究者公开了针对系统管理模式集合超时假设的代码与验证方法。作者称在一台 Zen 3 的 Ryzen 7 5800H 上,用一条从特定慢速 MMIO 地址发起的向量加载可以持续约一秒,跨过固件的集合超时,使某个核心仍在 SMM 之外运行。项目也说明默认地址与参数并不通用,换机器要重新调校,目前没有已协调披露的通用编号。它的意义不是普通用户能拿到 SMM,而是动摇了一个核心进入 SMM 后其他核心都会停下的同步前提。