FS#17006 - [Pacman] pacman -Up <archive> fails
Attached to Project:
Pacman
Opened by Hugo (Citral) - Wednesday, 04 November 2009, 15:51 GMT
Last edited by Dan McGee (toofishes) - Sunday, 16 May 2010, 13:36 GMT
Opened by Hugo (Citral) - Wednesday, 04 November 2009, 15:51 GMT
Last edited by Dan McGee (toofishes) - Sunday, 16 May 2010, 13:36 GMT
|
Details
Description:
Whenever I run pacman -Up on a proper archive, it fails with this error (example here is Eclim): $ sudo pacman -Up eclim-1.5.2-1-i686.pkg.tar.gz loading package data... checking dependencies... (1/1) checking for file conflicts [---------------------] 100% error: failed to commit transaction (transaction commit attempt when database is not locked) The archive is not relevant, it happens with all kinds of archives. What does work is placing my packages in /var/cache/pacman and editing the MD5sums in /var/lib/pacman and then installing with pacman -S. Additional info: $ /usr/bin/pacman --version Pacman v3.3.2 - libalpm v4.0.2 Debug run: $ sudo /usr/bin/pacman --debug --verbose -Up eclim-1.5.2-1-i686.pkg.tar.gz debug: config: attempting to read file /etc/pacman.conf debug: config: new section 'options' debug: config: chomp debug: config: HoldPkg: quodlibet-plugins debug: config: SyncFirst: pacman debug: config: new section 'core' debug: setlibpaths() called debug: option 'cachedir' = /var/cache/pacman/pkg/ debug: registering sync database 'core' debug: adding new server URL to database 'core': ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/core/os/i686 debug: config: including /etc/pacman.d/mirrorlist debug: config: attempting to read file /etc/pacman.d/mirrorlist debug: adding new server URL to database 'core': ftp://mirror.leaseweb.com/archlinux/core/os/i686 debug: adding new server URL to database 'core': http://mirror.leaseweb.com/archlinux/core/os/i686 debug: adding new server URL to database 'core': ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/core/os/i686 debug: adding new server URL to database 'core': http://ftp.nluug.nl/pub/metalab/distributions/archlinux/core/os/i686 debug: adding new server URL to database 'core': ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/core/os/i686 debug: adding new server URL to database 'core': http://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/core/os/i686 debug: config: finished parsing /etc/pacman.d/mirrorlist debug: config: new section 'extra' debug: registering sync database 'extra' debug: adding new server URL to database 'extra': ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/extra/os/i686 debug: config: including /etc/pacman.d/mirrorlist debug: config: attempting to read file /etc/pacman.d/mirrorlist debug: adding new server URL to database 'extra': ftp://mirror.leaseweb.com/archlinux/extra/os/i686 debug: adding new server URL to database 'extra': http://mirror.leaseweb.com/archlinux/extra/os/i686 debug: adding new server URL to database 'extra': ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/extra/os/i686 debug: adding new server URL to database 'extra': http://ftp.nluug.nl/pub/metalab/distributions/archlinux/extra/os/i686 debug: adding new server URL to database 'extra': ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/extra/os/i686 debug: adding new server URL to database 'extra': http://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/extra/os/i686 debug: config: finished parsing /etc/pacman.d/mirrorlist debug: config: new section 'community' debug: registering sync database 'community' debug: adding new server URL to database 'community': ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/community/os/i686 debug: config: including /etc/pacman.d/mirrorlist debug: config: attempting to read file /etc/pacman.d/mirrorlist debug: adding new server URL to database 'community': ftp://mirror.leaseweb.com/archlinux/community/os/i686 debug: adding new server URL to database 'community': http://mirror.leaseweb.com/archlinux/community/os/i686 debug: adding new server URL to database 'community': ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/community/os/i686 debug: adding new server URL to database 'community': http://ftp.nluug.nl/pub/metalab/distributions/archlinux/community/os/i686 debug: adding new server URL to database 'community': ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/community/os/i686 debug: adding new server URL to database 'community': http://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/community/os/i686 debug: config: finished parsing /etc/pacman.d/mirrorlist debug: config: new section 'archlinuxfr' debug: registering sync database 'archlinuxfr' debug: adding new server URL to database 'archlinuxfr': http://repo.archlinux.fr/i686 debug: config: finished parsing /etc/pacman.conf Root : / Conf File : /etc/pacman.conf DB Path : /var/lib/pacman/ Cache Dirs: /var/cache/pacman/pkg/ Lock File : /var/lib/pacman/db.lck Log File : /var/log/pacman.log Targets : eclim-1.5.2-1-i686.pkg.tar.gz debug: registering local database loading package data... debug: loading target 'eclim-1.5.2-1-i686.pkg.tar.gz' debug: sorting package filelist for eclim-1.5.2-1-i686.pkg.tar.gz checking dependencies... debug: looking for unsatisfied dependencies debug: loading package cache for repository 'local' debug: checkdeps: package eclim-1.5.2-1 debug: looking for conflicts debug: check targets vs targets debug: check targets vs db debug: check db vs targets debug: sorting by dependencies debug: started sorting dependencies debug: sorting dependencies finished checking for file conflicts... debug: looking for file conflicts debug: searching for file conflicts: eclim debug: searching for filesystem conflicts: eclim debug: returning error 26 from alpm_trans_commit : transaction commit attempt when database is not locked error: failed to commit transaction (transaction commit attempt when database is not locked) debug: unregistering database 'local' debug: freeing package cache for repository 'local' debug: unregistering database 'core' debug: unregistering database 'extra' debug: unregistering database 'community' debug: unregistering database 'archlinuxfr' |
This task depends upon
Closed by Dan McGee (toofishes)
Sunday, 16 May 2010, 13:36 GMT
Reason for closing: Fixed
Additional comments about closing: Working better now than it used to.
Sunday, 16 May 2010, 13:36 GMT
Reason for closing: Fixed
Additional comments about closing: Working better now than it used to.
I actually realized that when writing my long standing patch to rewrite the --print function and generalize it to all operations. But I think Dan never reviewed it.
Erroring out is indeed the right solution I suppose.
I am not sure it is worth trying to capture them.
Anyway, as I already said, I have a patch that would make all this irrelevant. :)
$ ./src/pacman/pacman -Up /home/makepkg/packages/django-south-0.7-1-any.pkg.tar.xz
/home/makepkg/packages/django-south-0.7-1-any.pkg.tar.xz
That seems reasonable I guess, given our new description of the option, but it does look a bit odd.
Here is an extract from an old pacman-dev ML discussion between me and Xyne :
"""""""""""""""""
me:
> Does it make any sense to have this for -R and -U operations ? I
> implemented that but I don't really see any utility so I wanted to
> drop it.
xyne:
I think it makes sense for -R at the moment. It would also make sense
for -U if -U could handle dependency resolution. If you have working
code then I think you should just leave it in for now as it will be
good to have later.
"""""""""""""""""