Dealing with corrupt repodata :
Q: Customer is unable to update a server. The problem is that the information in /var/cache/rhn/repodata/sles11-sp2-updates-x86_64 is not correct. How can I rebuild this data?
A: First remove all files from /var/cache/rhn/repodata/sles11-sp2-updates-x86_64 and then call:
spacecmd softwarechannel_regenerateyumcache sles11-sp2-updates-x86_64
Q: The WebUI shows available patches for a system, but when I try to install it, the system say the patch is not available.
A: The metadata may not be recreated due to an out of memory exception in taskomatic. Check /var/log/rhn/rhn_taskomatic_daemon.log if you find somehting like this:
INFO | jvm 1 | 2014/03/25 11:30:38 | JVMDUMP013I Processed dump event "systhrow", detail "java/lang/OutOfMemoryError". INFO | jvm 1 | 2014/03/25 11:30:38 | Exception in thread "DefaultQuartzScheduler_QuartzSchedulerThread" java.lang.OutOfMemoryError: Java heap space
Please edit /etc/rhn/rhn.conf and add the option
taskomatic.maxmemory = <value>
manually to the end of the file. The value has to be entered in megabytes. An example could be:
taskomatic.maxmemory = 4096
When done, restart taskomatic using
to have it pick up the new XmX value. As the recommendation for a SUSE Manager in production is to have at least 8GB RAM, the recommended value for heap space assigned to taskomatic is 4GB or higher if the system has more RAM available (source : https://www.suse.com/support/kb/doc.php?id=7012598). This requires spacewalk-taskomatic version 126.96.36.199 or higher.