Bug 1019164 - GeoIP.dat conflicts during rpm install
GeoIP.dat conflicts during rpm install
Status: CLOSED DUPLICATE of bug 968074
Product: Fedora
Classification: Fedora
Component: GeoIP (Show other bugs)
19
All Linux
unspecified Severity medium
: ---
: ---
Assigned To: Paul Howarth
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-10-15 04:54 EDT by Georg Wild
Modified: 2014-07-10 03:13 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-07-03 18:34:20 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Georg Wild 2013-10-15 04:54:16 EDT
Description of problem:
GeoIP-1.4.8-6.fc19.x86_64 and geoip-geolite-2013.04-1.fc19.noarch RPMs provide both /usr/share/GeoIP/GeoIP.dat.

This results in the following problem during install:
file /usr/share/GeoIP/GeoIP.dat from install of geoip-geolite-2013.04-1.fc19.noarch conflicts with file from package GeoIP-1.4.8-6.fc19.x86_64
Comment 1 john.r.moser 2014-01-16 09:06:22 EST
This is also a bug on EPEL:

Transaction Check Error:
  file /usr/share/GeoIP/GeoIP.dat from install of geoip-geolite-2013.04-1.el6.noarch conflicts with file from package GeoIP-1.4.8-1.el6.x86_64
Comment 2 Espen Braastad 2014-07-01 16:40:32 EDT
Confirming that this is still an issue.
Comment 3 Philip Prindeville 2014-07-01 18:02:23 EDT
Paul: are we doing an EPEL (EL6) build?
Comment 4 Ingvar Hagelund 2014-07-02 03:40:48 EDT
This patch will fix the issue, given that the two variants of GeoIP.dat can be used interchangeably.

http://fpaste.org/114914/42866591/

Ingvar
Comment 5 Philip Prindeville 2014-07-03 18:10:46 EDT
(In reply to Ingvar Hagelund from comment #4)
> This patch will fix the issue, given that the two variants of GeoIP.dat can
> be used interchangeably.
> 
> http://fpaste.org/114914/42866591/
> 
> Ingvar

No, it won't. Packages aren't allowed to overlap (unless they're both subpackages of the same parent, and even then it's ill-advised), as this would confuse the heck out of "repoquery --whatprovides ..." and also make it hard to resolve dependencies.

You're also not allowed to remove or alter an existing file from another package, as this would cause "rpm -V pkg" to fail.
Comment 6 Ingvar Hagelund 2014-07-03 18:23:55 EDT
(In reply to Philip Prindeville from comment #5)
> (In reply to Ingvar Hagelund from comment #4)
> > This patch will fix the issue, given that the two variants of GeoIP.dat can
> > be used interchangeably.
> > 
> > http://fpaste.org/114914/42866591/
> > 
> > Ingvar
> 
> No, it won't. Packages aren't allowed to overlap

Well, that is the problem, isn't it? And that's what my patch fixes :-)

> unless they're both
> subpackages of the same parent, and even then it's ill-advised), as this
> would confuse the heck out of "repoquery --whatprovides ..." and also make
> it hard to resolve dependencies.
> 
> You're also not allowed to remove or alter an existing file from another
> package, as this would cause "rpm -V pkg" to fail.

Eh? Did you try to apply the patch at all?

My patch removes the file from GeoIP, and makes the package depend on geoip-geolite, as that package provides the file. I think this is the correct way to fix this in the running distros. I observe that this is fixed in f20+

The change in the patch is done at rpm build time. That is, _before_ any package system is aware of anything. During rpm package install, no files are of course touched or removed.

Applying this patch makes the package install (and verify) fine on my f19 systems. The only thing that could possibly be a problem is if the 
GeoIP.dat variants from the two packages are of different quality or format.

Ingvar
Comment 7 Philip Prindeville 2014-07-03 18:34:20 EDT

*** This bug has been marked as a duplicate of bug 968074 ***
Comment 8 Philip Prindeville 2014-07-03 19:29:02 EDT
(In reply to Ingvar Hagelund from comment #6)

> Applying this patch makes the package install (and verify) fine on my f19
> systems. The only thing that could possibly be a problem is if the 
> GeoIP.dat variants from the two packages are of different quality or format.

geoip-lite was retired because it duplicates a subset of the functionality of GeoIP.

I've built GeoIP-1.5.1-5 for EL6 and F19 here:

http://fedorapeople.org/~philipp/

for x86_64. If you have another architecture let me know.
Comment 9 Philip Prindeville 2014-07-09 20:40:24 EDT
Ingvar: I've provided EL6 and F19 builds (even though F19 is deprecated) for you.

Without a response about whether they address your issues, it's hard to assist you any further.
Comment 10 Espen Braastad 2014-07-10 03:08:51 EDT
Hi Philip,

I guess you didn't get any feedback since you closed the bug report.

The rebuilt package (GeoIP for EL6) seems to work in my test environment. It provides the content which geoip-geolite already provides, and as such makes it not unecessary to install geoip-geolite.

Rebuilt:
> [root@centos6-amd64 ~]# rpm -qp --provides GeoIP-1.5.1-5.el6.x86_64.rpm
> config(GeoIP) = 1.5.1-5.el6
> geoip = 1.5.1-5.el6
> geoip-geolite = 2013.04-2
> libGeoIP.so.1()(64bit)
> libGeoIPUpdate.so.0()(64bit)
> GeoIP = 1.5.1-5.el6
> GeoIP(x86-64) = 1.5.1-5.el6

Current:
> [root@centos6-amd64 ~]# rpm -qp --provides GeoIP-1.4.8-1.el6.x86_64.rpm
> config(GeoIP) = 1.4.8-1.el6
> geoip = 1.4.8-1.el6
> libGeoIP.so.1()(64bit)
> libGeoIPUpdate.so.0()(64bit)
> GeoIP = 1.4.8-1.el6
> GeoIP(x86-64) = 1.4.8-1.el6
>
> [root@centos6-amd64 ~]# rpm -qp --provides geoip-geolite-2013.04-1.el6.noarch.rpm
> geoip-geolite = 2013.04-1.el6

Are you planning to push the rebuilt package to the EL6 repository? If so, I'd be grateful.
Comment 11 Espen Braastad 2014-07-10 03:13:32 EDT
(In reply to Espen Braastad from comment #10)
> [...] and as such makes it not unecessary to install geoip-geolite.

Oh sorry, a typo there. It is obviously unecessary to install the package geoip-geolite when using your updated GeoIP package. Thank you.

Note You need to log in before you can comment on or make changes to this bug.