{"adoption": {"forks": 323, "observed_at": "2026-08-28T04:04:52.579349+00:00", "stars": 1492}, "canonical_url": "https://ross.abutalabs.com/products/mysql-deadlocks", "card": {"archived": false, "artifact_type": "learning-resource", "description": "收集一些常见的 MySQL 死锁案例", "domain": ["databases", "tutorials", "developer-tools"], "enriched": true, "function": ["database", "documentation"], "health_score": 20, "homepage": null, "language": "PLpgSQL", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["aneasystone/mysql-deadlocks"], "name": "aneasystone/mysql-deadlocks", "platform": [], "pushed_at": "2020-07-21T07:20:46+00:00", "repo": "aneasystone/mysql-deadlocks", "stars": 1492, "tags": ["mysql", "deadlock", "innodb", "locking", "case-studies", "database-internals", "chinese"], "topics": [], "urls": [], "use_cases": ["understand why two inserts caused a deadlock in MySQL", "analyze InnoDB deadlock log output", "reproduce a gap lock deadlock scenario", "learn how insert intention locks and gap locks interact", "troubleshoot 'lock_mode X locks rec but not gap' errors", "study real-world MySQL transaction locking examples"], "what_it_is": "A curated collection of common MySQL deadlock cases, each analyzed from deadlock logs with reproduction steps, table schemas, and explanations of the locks involved. Cases are classified by the SQL statements each transaction executes and the locks they wait for or hold.", "when_to_avoid": ["you need deadlock handling for PostgreSQL, SQL Server, or other databases", "you want an automated deadlock detection or resolution tool", "you need actively maintained, up-to-date content"], "when_to_choose": ["debugging or preventing MySQL/InnoDB deadlocks", "learning how InnoDB row, gap, and intention locks work", "training database engineers on concurrency issues"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/mysql-deadlocks", "repo": "aneasystone/mysql-deadlocks", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:52.579349+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:33:28.992527+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e6cab0eee9f2aae5539af21cceb888ae78bf0363ca52edae6a69ab0361eb6e1d", "fetched_at": "2026-08-28T04:04:52.579349+00:00", "kind": "readme", "missing": false, "url": "https://github.com/aneasystone/mysql-deadlocks"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3082, "days_push": 2234, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}