Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 609264 - app-portage/eix-0.32.4 cannot open database file
Summary: app-portage/eix-0.32.4 cannot open database file
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Martin Väth
URL:
Whiteboard:
Keywords:
: 609344 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-02-13 14:03 UTC by Branko Djusic
Modified: 2017-02-15 15:12 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Branko Djusic 2017-02-13 14:03:41 UTC
I get error message on eix-diff after upgrading to =app-portage/eix-0.32.4

"cannot open database file /var/cache/eix/previous.eix for reading (mode = 'rb')"

I have tried eix-update but it does not solve the problem.
Comment 1 Michael Weber (RETIRED) gentoo-dev 2017-02-13 16:34:49 UTC
Can you please remove the file (sudo rm -v /var/cache/eix/previous.eix) and re-run eix-update?
Comment 2 Branko Djusic 2017-02-13 21:41:43 UTC
(In reply to Michael Weber from comment #1)
> Can you please remove the file (sudo rm -v /var/cache/eix/previous.eix) and
> re-run eix-update?

Here we go https://i.imgur.com/riQuvhr.png
Comment 3 Michael Weber (RETIRED) gentoo-dev 2017-02-14 10:02:48 UTC
portage.eix needs to be moved/copied to previos.eix, eix-update doesn't do that.

Plain 
  eix-sync 
does this, and if you don't want it to sync your tree, your can run 
  eix-sync -c /bin/true
or
  eix-sync -a -c /bin/true
for testing.

khonsu ~ # eix-sync -c /bin/true
 * Running /bin/true
 * Main gentoo tree does not appear to have changed: exiting
 * Use -a or set have_changed=: in a ! hook to override this check
 * Time statistics:
     1 seconds total
khonsu ~ # eix-sync -a -c /bin/true
 * Running /bin/true
 * Copying old database to /var/cache/eix/previous.eix
 * Running eix-update
Reading Portage settings...
Building database (/var/cache/eix/portage.eix)...
[0] "gentoo" /usr/portage/ (cache: metadata-md5-or-flat)
     Reading category 163|163 (100) Finished             
Applying masks...
Calculating hash tables...
Writing database file /var/cache/eix/portage.eix...
Database contains 19432 packages in 163 categories.
 * Calling eix-diff
 * Time statistics:
    20 seconds for eix-update
     7 seconds for eix-diff
    28 seconds total
Comment 4 Branko Djusic 2017-02-14 11:03:36 UTC
(In reply to Michael Weber from comment #3)
> portage.eix needs to be moved/copied to previos.eix, eix-update doesn't do
> that.
> 
> Plain 
>   eix-sync 
> does this, and if you don't want it to sync your tree, your can run 
>   eix-sync -c /bin/true
> or
>   eix-sync -a -c /bin/true
> for testing.
> 
> khonsu ~ # eix-sync -c /bin/true
>  * Running /bin/true
>  * Main gentoo tree does not appear to have changed: exiting
>  * Use -a or set have_changed=: in a ! hook to override this check
>  * Time statistics:
>      1 seconds total
> khonsu ~ # eix-sync -a -c /bin/true
>  * Running /bin/true
>  * Copying old database to /var/cache/eix/previous.eix
>  * Running eix-update
> Reading Portage settings...
> Building database (/var/cache/eix/portage.eix)...
> [0] "gentoo" /usr/portage/ (cache: metadata-md5-or-flat)
>      Reading category 163|163 (100) Finished             
> Applying masks...
> Calculating hash tables...
> Writing database file /var/cache/eix/portage.eix...
> Database contains 19432 packages in 163 categories.
>  * Calling eix-diff
>  * Time statistics:
>     20 seconds for eix-update
>      7 seconds for eix-diff
>     28 seconds total

I have tried moving portage.eix to previous.eix then eix-update and problem is still there. Then i have removed both files and than eix-update, portage.eix is created again and problem is still there.
Comment 5 Branko Djusic 2017-02-14 11:09:08 UTC
(In reply to Branko Djusic from comment #4)
> (In reply to Michael Weber from comment #3)
> > portage.eix needs to be moved/copied to previos.eix, eix-update doesn't do
> > that.
> > 
> > Plain 
> >   eix-sync 
> > does this, and if you don't want it to sync your tree, your can run 
> >   eix-sync -c /bin/true
> > or
> >   eix-sync -a -c /bin/true
> > for testing.
> > 
> > khonsu ~ # eix-sync -c /bin/true
> >  * Running /bin/true
> >  * Main gentoo tree does not appear to have changed: exiting
> >  * Use -a or set have_changed=: in a ! hook to override this check
> >  * Time statistics:
> >      1 seconds total
> > khonsu ~ # eix-sync -a -c /bin/true
> >  * Running /bin/true
> >  * Copying old database to /var/cache/eix/previous.eix
> >  * Running eix-update
> > Reading Portage settings...
> > Building database (/var/cache/eix/portage.eix)...
> > [0] "gentoo" /usr/portage/ (cache: metadata-md5-or-flat)
> >      Reading category 163|163 (100) Finished             
> > Applying masks...
> > Calculating hash tables...
> > Writing database file /var/cache/eix/portage.eix...
> > Database contains 19432 packages in 163 categories.
> >  * Calling eix-diff
> >  * Time statistics:
> >     20 seconds for eix-update
> >      7 seconds for eix-diff
> >     28 seconds total
> 
> I have tried moving portage.eix to previous.eix then eix-update and problem
> is still there. Then i have removed both files and than eix-update,
> portage.eix is created again and problem is still there.

It's fixed after eix-sync.
Comment 6 Brian Evans (RETIRED) gentoo-dev 2017-02-15 14:49:19 UTC
*** Bug 609344 has been marked as a duplicate of this bug. ***
Comment 7 Phil Stracchino (Unix Ronin) 2017-02-15 14:57:33 UTC
(In reply to Branko Djusic from comment #5)
> It's fixed after eix-sync.

Um, no, it isn't.  I confirm that eix-sync in eix-0.32.4 does not create the previous.eix file if nissing, nor overwrite it if an older version.  This bug is NOT resolved.
Comment 8 Branko Djusic 2017-02-15 15:07:51 UTC
(In reply to Phil Stracchino (Unix Ronin) from comment #7)
> (In reply to Branko Djusic from comment #5)
> > It's fixed after eix-sync.
> 
> Um, no, it isn't.  I confirm that eix-sync in eix-0.32.4 does not create the
> previous.eix file if nissing, nor overwrite it if an older version.  This
> bug is NOT resolved.

Did you have tried to remove previous.eix and portage.eix and then run eix-sync ?
Comment 9 Phil Stracchino (Unix Ronin) 2017-02-15 15:12:39 UTC
(In reply to Branko Djusic from comment #8)
> (In reply to Phil Stracchino (Unix Ronin) from comment #7)
> > (In reply to Branko Djusic from comment #5)
> > > It's fixed after eix-sync.
> > 
> > Um, no, it isn't.  I confirm that eix-sync in eix-0.32.4 does not create the
> > previous.eix file if nissing, nor overwrite it if an older version.  This
> > bug is NOT resolved.
> 
> Did you have tried to remove previous.eix and portage.eix and then run
> eix-sync ?

I missed the details of the test request.  (Thanks grknight for pointing it out.)

If I manually move portage.eix to previous.eix, eix-sync and eix-diff then appear to work as expected.  If previous.eix is missing, eix-0.32.4 will not create it.