You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+14-2Lines changed: 14 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,9 +2,21 @@
2
2
3
3
## next / unreleased
4
4
5
-
### Changed
5
+
### Ruby
6
+
7
+
- This release drops support for Ruby 3.0.
8
+
9
+
10
+
### Fork safety improvements
11
+
12
+
Sqlite itself is [not fork-safe](https://www.sqlite.org/howtocorrupt.html#_carrying_an_open_database_connection_across_a_fork_). Specifically, writing in a child process to a database connection that was created in the parent process may corrupt the database file. To mitigate this risk, sqlite3-ruby has implemented the following changes:
13
+
14
+
- Open writable database connections carried across a `fork()` will immediately be closed in the child process to mitigate the risk of corrupting the database file.
15
+
- These connections will be incompletely closed ("discarded") which will result in a one-time memory leak in the child process.
16
+
17
+
If it's at all possible, we strongly recommend that you close writable database connections in the parent before forking.
6
18
7
-
- Any database connections carried across a `fork()` will not be fully closed to help protect database files against corruption. Using a database connection in a child process that was created in a parent process is unsafe and may corrupt the database file. If an inherited connection is closed then a warning will be emitted and some reserved memory will be lost to the child process permanently. See the README "Fork Safety" section and `adr/2024-09-fork-safety.md` for more information. [#558]@flavorjones
19
+
See the README "Fork Safety" section and `adr/2024-09-fork-safety.md` for more information. [#558]@flavorjones
0 commit comments