Creating an rpm repository using 'createrepo' on an RHS volume results in taking a long time to finish, why?

Solution In Progress - Updated -

Issue

  • Creating an rpm repository using 'createrepo' on an RHS volume results in taking a long time to finish, why?

  • Running 'createrepo' on a directory containing rpm package shipped with RHEL takes more than 14 hours to finish. The rpms are in a directory on a GlusterFS volume.

  • The same operation will finish within 3 minutes on a local file systems.

#sudo createrepo -d --update --skip-stat .
13093/13093 - wget-1.12-1.12.el6_5.x86_64.rpm                                   
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
  • All the time spent waiting is spent in building the sqlite databases, and there is a large amount of lseek() followed by read() or write() to the DB files.

  • On a local file system :

# time sudo createrepo -d --update --skip-stat .
13093/13093 - java-1.7.0-openjdk-devel-1.7.0.51-2.4.4.1.el6_5.x86_64.rpm
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete

real    2m20.958s
user    2m12.991s
sys     0m7.877s

Environment

  • Red Hat Storage Server 3.0

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content