Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Truncation in Sequel + PostgreSQL doesn't restart sequences

未关闭
#8 1 条评论 7 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
38/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
停滞
技术栈
postgresql, ruby
领域
databases

调研方向

首先阅读 lib/database_cleaner/sequel/truncation.rb 第 19 行附近的内容,并检查 Sequel 如何发出截断语句。在检查现有测试设置之前,验证 PostgreSQL 的序列重置行为以及任何兼容性预期。完成的标准是:连续运行测试时,auto-increment 序列会被重置,同时不会破坏受支持的行为。

由索引模型根据 Issue 内容生成。

描述

All the tables are properly truncated, but consecutive test runs start auto-incremented sequences where they left off, instead of back at 1.

In lib/database_cleaner/sequel/truncation.rb, changing line 19:

db.run "TRUNCATE TABLE #{all_tables};"

to

db.run "TRUNCATE TABLE #{all_tables} RESTART IDENTITY;"

resolves the issue, but I suppose that could raise some compatibility issues with certain versions of PostgreSQL.

This seems like it would be a fairly simple PR, but I would rather get some insight from the maintainers first as I'm not at all familiar with this codebase. Thanks!

主要语言
Ruby
星标
19
派生
11
PR 合并指标
30 天内没有已合并 PR

环境准备

  • 提供 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 没有贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

DatabaseCleaner/database_cleaner-sequel 的其他 Issue

查看 DatabaseCleaner/database_cleaner-sequel 的全部 Issue

相似的 Issue

更多 Ruby Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。