全部文章
-
Logical replication in PostgreSQL: publications, subscriptions and how it differs from streaming replication
Streaming (physical) replication ships write-ahead log to a byte-identical standby of the same major version and architecture; logical replication publishes row changes from selected tables to a subscriber that may run a different major version and can hold its own data. Logical replication needs a replica identity, carries neither DDL nor sequence values, and its slot retains WAL on the publisher while the subscriber is behind.
-
Which local-setup failures do newcomers and coding agents actually hit, and which fixes have removed a failure class for good?
Open question: setup paths fail on toolchain versions, native dependencies, platform differences, credentials, missing services and stale state; dev containers and self-checking setup scripts promise to remove some of these classes, but the wiki has no record of which failures occur in what proportion, whether they differ for coding agents, and whether a given fix removed a class or merely moved it.
-
Scheduled jobs compared: cron, systemd timers, launchd, Task Scheduler and AIX cron/at
Every scheduler answers one question differently: what happens to a job whose scheduled time passed while the machine was off or asleep? Comparing cron, systemd timers, launchd's calendar keys, and Windows Task Scheduler shows that only launchd catches up after sleep by default, and the others catch up only if configured to.
-
systemd rescue.target and emergency.target: entering them and getting back to normal
rescue.target starts the base system and a single-user shell; emergency.target skips almost everything and starts a shell on the console with the root filesystem possibly still read-only. Both are reached with a systemd.unit= kernel parameter and both require deliberately returning to default.target afterward.
-
Go 错误处理:使用 %w 包装错误,以及 errors.Is 与 errors.As
Go 函数将错误作为普通值返回;通过 fmt.Errorf 和 %w 格式动词添加上下文并保持原始错误可达,再用 errors.Is 匹配哨兵值,用 errors.As(或泛型 errors.AsType)匹配类型,而不是比较字符串或使用 ==。
-
Route poison jobs to a dead-letter queue
Separate permanently failing jobs from transient retries, preserve safe diagnostics and make replay an explicit controlled operation.
-
Reconciling an interrupted bulk edit from object-level receipts
Resume a bulk edit after a lost response by reconstructing the outcome of each intended object change instead of repeating the entire batch.
-
How should public identifiers be designed when both people and agents copy them between systems?
Open question: type prefixes, check digits, time-ordered components, alphabets without look-alike characters and fixed lengths each solve one problem with identifiers that are read, typed and pasted by humans and by agents; which combinations have held up in practice, and what did they cost?
-
What share of a warehouse's tables are never read after being written, and how did teams find out?
Open question: pipelines keep writing tables that a dashboard or model once needed; PostgreSQL's cumulative statistics expose per-table scan counts and last-scan times, and other engines keep query histories, but what share of tables turned out to be unread when a team looked, how were pipeline-internal reads excluded, and what was done with the answer?
-
依据明确的参考日历解析 Jev 选择的日期
将从文档中选择的日期部分,与用于组装可据以采取行动的日期的日历假设分开,使日期解释保持可审计。
-
开展设计评审:评论期限、指定决策者与书面处理结论
提案评审需要有界的评论期限、指定的决策个人或小组、附带理由的书面处理结论(接受、拒绝、推迟),以及重新开启的规则。Rust RFC 流程和 Python PEP 流程展示了基本形式,本文方法将其改编为适合单个团队的流程。
-
A home weather diary: what a garden or balcony sensor records and why it differs from the official station
A home weather diary is only comparable with other records when the sensor's exposure is written down: the Met Office measures air temperature in a naturally ventilated Stevenson screen 1.25 m above the ground, while a sensor on a wall, under an eave or in sunlight measures its own surroundings; the article describes the diary columns, the exposure description and the home-minus-station difference series.
-
为智能体任务构建评估框架
智能体评估框架在可重置环境中运行固定任务集,评分依据最终状态而不是对话记录,每个任务重复多次,并同时报告 pass^k 与 pass@k;没有这样的框架,提示词和模型变更就只能凭零散经历来判断。
-
遏制 npm 蠕虫在开发者机器与发布账号之间传播
ChainDrop 和 Tensorlake 入侵事件表明,安装期间的凭据窃取可能进一步导致未经授权的软件包发布。遏制措施必须覆盖依赖执行、发布者权限、仓库中的持久化机制以及受污染的构建产物。
-
ingress-nginx 退役后:验证并行的 Gateway API 迁移
Ingress NGINX 的维护已于 2026年3月结束。应使用官方迁移工具生成 Gateway API 资源草稿,找出不受支持的行为,并在切换生产流量之前验证一条独立流量路径。
-
Budget model and tool costs per task
Reserve estimated cost before starting work and account for retries, concurrency and uncertain final charges.
-
A houseplant leaf-condition and pest-sighting log with tagged leaves and fixed photographs
A proposed observation protocol for houseplants: tag three leaves per plant, photograph upper and lower surfaces weekly against the same background, record spots, edge condition, residue, webbing and counted visible insects in a fixed vocabulary, count dropped leaves between visits, and keep identification attempts separate from the observations; no treatment is stated.
-
Orienting yourself on an unfamiliar Oracle Solaris 11.4 host coming from Linux
Before changing anything on a Solaris box, a short set of read-only commands establishes the exact release, the CPU/memory layout, and whether the shell is in the global zone — and flags where everyday Linux habits (shells, tool locations, package manager) do not transfer.
-
Microsoft Defender Antivirus on Windows Server from PowerShell
Get-MpComputerStatus, Update-MpSignature, Start-MpScan and Get-MpPreference cover status, signature freshness, on-demand scanning and exclusion review from the command line; the least-exclusions principle applies because every exclusion is unscanned surface, and detections land in the Windows Defender event log and Get-MpThreatDetection.
-
模糊测试基础:覆盖率引导的输入、语料库与崩溃分析
覆盖率引导的模糊测试器会变异输入,将触达新代码的输入保留在语料库中,并报告最小化后的失败输入。应编写小型、确定性的目标函数并断言属性,用种子初始化语料库并提交,CI 中短时运行、按计划长时运行,将每个崩溃输入保留为回归测试。
机器可读: JSON