You are not logged in.

#1 2014-03-25 02:44:10

DaveCode
Member
Registered: 2008-08-15
Posts: 103

lz4 upgrade file conflict (minor)

Recent lz4 upgrade (113-1 to 116-1) gave a pacman error failure,

lz4: /usr/lib/liblz4.so.1 exists in filesystem

on two different boxes and architectures. Strangely, pacman -Qo reported no owner on that file. WTF?

Deleting it by hand solved the problem but I'm curious why this incident happened and if it did to anyone else out there. I'm not sure it qualifies as an official bug so I didn't report it as such but posted here; someone tell me if that was wrong.

Offline

#2 2014-03-25 02:57:10

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: lz4 upgrade file conflict (minor)

Got the same error.

$ ls -l /usr/lib/liblz4.so.1
lrwxrwxrwx 1 root root 9 Mar 25 03:50 /usr/lib/liblz4.so.1 -> liblz4.so
$ pacman -Qo /usr/lib/liblz4.so
/usr/lib/liblz4.so is owned by lz4 113-1

I reported it https://bugs.archlinux.org/task/39618

Offline

#3 2014-03-25 04:37:34

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,727

Re: lz4 upgrade file conflict (minor)

Don't care where the symlink points to, where did it come from?

Online

#4 2014-03-25 04:45:42

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: lz4 upgrade file conflict (minor)

It came from lz4 113:

$ ls -l /usr/lib/liblz4.so.1
ls: cannot access /usr/lib/liblz4.so.1: No such file or directory
[test]$ sp -U lz4-113-1-i686.pkg.tar.xz
loading packages...
resolving dependencies...
looking for inter-conflicts...

Packages (1):

Name  New Version  Net Change

lz4   113-1          0.16 MiB 

Total Installed Size:   0.16 MiB 

:: Proceed with installation? [Y/n] 
(1/1) checking keys in keyring                                               [###########################################] 100%(1/1) checking package integrity                                             [###########################################] 100%
(1/1) loading package files                                                  [###########################################] 100%(1/1) checking for file conflicts                                            [###########################################] 100%
(1/1) checking available disk space                                          [###########################################] 100%(1/1) installing lz4                                                         [###########################################] 100%
$ ls -l /usr/lib/liblz4.so.1
lrwxrwxrwx 1 root root 9 Mar 25 03:58 /usr/lib/liblz4.so.1 -> liblz4.so

Offline

#5 2014-03-25 04:56:39

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: lz4 upgrade file conflict (minor)

Well...  not quite....

The previous package has liblz.4.so but not liblz.4.so.1. That file had "Library soname: [liblz4.so.1]", and as the symlink was not provided, ldconfig created it. So it is an untracked file.

Nothing that can be done from a packaging point of view here.  Users will just have to delete the untracked file.

Offline

#6 2014-03-25 05:27:14

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: lz4 upgrade file conflict (minor)

I don't know what that means ... Can I apply for a refund anyway? ;P

Do you think it warrants a news item on the front page? lz4 is not an incredibly popular package, and the installed package base according to https://www.archlinux.de/?page=PackageStatistics is relatively small.

Offline

#7 2014-03-25 05:52:12

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: lz4 upgrade file conflict (minor)

Front page news is not warranted.  As you said, there is a small user base and the error is simple to deal with.

Offline

#8 2014-03-25 14:12:30

gilmoreja
Member
From: Florida
Registered: 2012-05-28
Posts: 77

Re: lz4 upgrade file conflict (minor)

karol wrote:

I don't know what that means ...

It means this:

# rm /usr/lib/liblz4.so.1

Time you enjoy wasting isn't wasted time.

Offline

#9 2014-03-25 14:13:07

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: lz4 upgrade file conflict (minor)

Offline

#10 2014-03-25 15:00:12

WonderWoofy
Member
From: Los Gatos, CA
Registered: 2012-05-19
Posts: 8,414

Re: lz4 upgrade file conflict (minor)

karol wrote:

I am able to boot find with the new lz4 package and the kernel's EFISTUB...


Edit: I even just rebuilt the initramfs just in case the ordering of the update had some influence and still no issues.

Last edited by WonderWoofy (2014-03-25 15:03:41)

Offline

#11 2014-03-25 15:04:58

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: lz4 upgrade file conflict (minor)

Offline

#12 2014-03-26 02:58:08

DaveCode
Member
Registered: 2008-08-15
Posts: 103

Re: lz4 upgrade file conflict (minor)

Ah yes, explained.

Now, post upgrade, pacman gives ownership on the file.

$ pacman -Qo  /usr/lib/liblz4.so.1
/usr/lib/liblz4.so.1 is owned by lz4 116-1

So the package files changed between versions? Then omission was a packaging error, now fixed, I presume?

And: does anyone know a simple script to deal with these strays in advance of upgrades? I'd be happy to let a script scan for them first.

Last edited by DaveCode (2014-03-26 02:58:58)

Offline

#13 2014-03-26 03:01:04

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: lz4 upgrade file conflict (minor)

You can script it if you want: https://bbs.archlinux.org/viewtopic.php?id=130138

Offline

#14 2014-03-26 03:22:28

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,727

Re: lz4 upgrade file conflict (minor)

DaveCode wrote:

So the package files changed between versions? Then omission was a packaging error, now fixed, I presume?

Not a packaging error, but an upstream bug. These symlinks are expected to be made by the Makefile, but it wasn't set up correctly.

Online

#15 2014-03-26 12:56:45

hoschi
Member
From: Ulm (Germany)
Registered: 2008-11-03
Posts: 476

Re: lz4 upgrade file conflict (minor)

Allan wrote:

Front page news is not warranted.  As you said, there is a small user base and the error is simple to deal with.

Pacman is doing the job here just fine. From a technical point of view everything is alright!
And a printing a help message seems to be difficult, because their is already the right one printed from pacman also.

Couldn't a package-maintainer use the changelog-feature for publishing warnings about such issues? Maybe we could also make this changelog viewable via the only package database.
At least, a note within the svn commit could help much (may avoid unnecessary bugs in flyspray?) as offical guidance? The svn-log is first source for me, beside the forum and flyspray.

I've installed lz4 from the habit to be apple to open all (sane) archive files which are possible in the wild. So I'm afraid you're right about the front page.

Offline

#16 2014-03-27 02:08:54

DaveCode
Member
Registered: 2008-08-15
Posts: 103

Re: lz4 upgrade file conflict (minor)

So here's the upstream makefile fix.

How is Arch's package file list made for the web: by file listing diff pre/post install? by hand? install script parsing? maintainer's discretion? Thanks. I often use those file listings so it may help to know where they are made.

A very few pkgs always cause file conflict error. Was it apache-ant or nodejs some other Java-ish thing? Can't recall. Could use a new /etc/pacman.conf flag like

ForcePkg  =  nodejs  apache-ant

to apply --force to single packages individually during general upgrades. Or being more fine-tuned, a ForceUpgrade converse of NoUpgrade to name files within a package.

Offline

#17 2014-03-27 02:25:55

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: lz4 upgrade file conflict (minor)

We are not adding options to pacman to deal with upstream software failures.  Especially given I have not seen something like this before...

The file lists are generated by looking at the package archive.

Offline

Board footer

Powered by FluxBB