tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: make replace



On 07/06/10 00:20, Joerg Sonnenberger wrote:
The more important problem is that due to the hierachical namespace ELF
has, this can create very strange bugs that are not directly visible
from the binaries. Consider libfoo, which links against libbar, and
re-exports a symbol that has changed in size or type in the last libbar
update. The program foobar links against libfoo, but not against libbar,
but uses this symbol. With the way pkg_rolling_replace works, foobar is
essentially broken until the time it is replaced. At the very least, the
code path that is using the symbol is.

'pkg_add -u' has the same behavior, except that the time frame of the inconsistency is smaller. The only safe way to solve that issue is using
a transactional file system:

BEGIN TRANSACTION
DO UPDATE
COMMIT

Jens


Home | Main Index | Thread Index | Old Index