推断映射模型是否总是导致轻量级迁移?
Do inferred mapping models always result in lightweight migrations?
我们有几个案例,当使用 推断 映射模型时,我们的应用程序似乎无法迁移用户数据。应用程序完成迁移所需时间过长,迁移失败。是的——我们不应该在发布期间迁移!
我想知道推断的映射模型是否可能不会导致轻量级迁移。我读过的所有帐户建议推断映射必然是轻量级的,但我没有看到强有力的声明表明这是一种保证。
我们遇到问题的情况包括从存储为外部二进制数据的架构中删除 属性(在架构编辑器中勾选了 Allows External Storage
)。我想知道这个特定的迁移,其模型是自动推断的,是否仍然需要大量迁移,将整个数据库绘制到内存中。
有没有办法判断特定的推断迁移是否是重量级的?
除非您自己定义自定义映射模型,否则迁移根据定义 轻量级。这是 documentation.
中 "lightweight" 和 "custom" 迁移定义的唯一可能解释
这与您看到的迁移失败无关。也许某些更改需要 自定义迁移,这就是轻量级迁移失败的原因。
我们有几个案例,当使用 推断 映射模型时,我们的应用程序似乎无法迁移用户数据。应用程序完成迁移所需时间过长,迁移失败。是的——我们不应该在发布期间迁移!
我想知道推断的映射模型是否可能不会导致轻量级迁移。我读过的所有帐户建议推断映射必然是轻量级的,但我没有看到强有力的声明表明这是一种保证。
我们遇到问题的情况包括从存储为外部二进制数据的架构中删除 属性(在架构编辑器中勾选了 Allows External Storage
)。我想知道这个特定的迁移,其模型是自动推断的,是否仍然需要大量迁移,将整个数据库绘制到内存中。
有没有办法判断特定的推断迁移是否是重量级的?
除非您自己定义自定义映射模型,否则迁移根据定义 轻量级。这是 documentation.
中 "lightweight" 和 "custom" 迁移定义的唯一可能解释这与您看到的迁移失败无关。也许某些更改需要 自定义迁移,这就是轻量级迁移失败的原因。