使用 DataMapper,在分叉子进程的过程中,由于父级中的数据库连接仍在打开(和使用),我遇到了数据包损坏。我想强制断开连接并重新连接,就像你在分叉时应该做的那样,但 DataMapper 看起来甚至没有考虑过这个用例。
现在我正在通过一个私有 API,并且必须弄清楚内部结构及其连接池才能做到这一点,所以感觉不对:
DataMapper.repository(:default).adapter.send(:open_connection).dispose
有谁知道是否有更“公开”和正确的方法来做到这一点?我在 IRC 频道上问过,但没有人回应。