2 commits - rel-eng/packages schema/spacewalk
by Michael Mraka
rel-eng/packages/spacewalk-schema | 2 +-
schema/spacewalk/postgres/packages/rhn_server.pkb | 2 +-
schema/spacewalk/spacewalk-schema.spec | 5 ++++-
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql | 2 +-
4 files changed, 7 insertions(+), 4 deletions(-)
New commits:
commit 5bf63aaa56b18f54137ca7032373fc5f62c5bfb2
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Mon Nov 11 10:38:23 2013 +0100
Automatic commit of package [spacewalk-schema] release [2.1.26-1].
diff --git a/rel-eng/packages/spacewalk-schema b/rel-eng/packages/spacewalk-schema
index d17bbfe..a1f7a18 100644
--- a/rel-eng/packages/spacewalk-schema
+++ b/rel-eng/packages/spacewalk-schema
@@ -1 +1 @@
-2.1.25-1 schema/spacewalk/
+2.1.26-1 schema/spacewalk/
diff --git a/schema/spacewalk/spacewalk-schema.spec b/schema/spacewalk/spacewalk-schema.spec
index 33fce77..732cef4 100644
--- a/schema/spacewalk/spacewalk-schema.spec
+++ b/schema/spacewalk/spacewalk-schema.spec
@@ -4,7 +4,7 @@ Name: spacewalk-schema
Group: Applications/Internet
Summary: Oracle SQL schema for Spacewalk server
-Version: 2.1.25
+Version: 2.1.26
Release: 1%{?dist}
Source0: %{name}-%{version}.tar.gz
@@ -71,6 +71,9 @@ rm -rf $RPM_BUILD_ROOT
%{_mandir}/man1/spacewalk-sql*
%changelog
+* Mon Nov 11 2013 Michael Mraka <michael.mraka(a)redhat.com> 2.1.26-1
+- fixed oracle equivalent checksums
+
* Mon Nov 11 2013 Michael Mraka <michael.mraka(a)redhat.com> 2.1.25-1
- schema upgrade for rhnServerNeededCache
- extended update_needed_cache() to insert channel_id
commit 6ae80bb430f8bb4e33d9cabe020ea340e5bdb8ae
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Mon Nov 11 10:37:23 2013 +0100
fixed oracle equivalent checksums
diff --git a/schema/spacewalk/postgres/packages/rhn_server.pkb b/schema/spacewalk/postgres/packages/rhn_server.pkb
index d383604..41f2e9a 100644
--- a/schema/spacewalk/postgres/packages/rhn_server.pkb
+++ b/schema/spacewalk/postgres/packages/rhn_server.pkb
@@ -1,4 +1,4 @@
--- oracle equivalent source sha1 7b4ad77f1f229f71b23e1b6646faf123d8b11c72
+-- oracle equivalent source sha1 b6947eea546edc7a66c7b53d0b62dc734ce3ca8a
--
-- Copyright (c) 2008--2012 Red Hat, Inc.
--
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql
index c58526e..59d1f9b 100644
--- a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql
+++ b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql
@@ -1,4 +1,4 @@
--- oracle equivalent source sha1 b6947eea546edc7a66c7b53d0b62dc734ce3ca8a
+-- oracle equivalent source sha1 4654e8979a0e16254c65bbc25229624c52de426c
update pg_settings set setting = 'rhn_server,' || setting where name = 'search_path';
10 years, 5 months
Changes to 'refs/tags/spacewalk-schema-2.1.25-1'
by Michael Mraka
Tag 'spacewalk-schema-2.1.25-1' created by Michael Mraka <michael.mraka(a)redhat.com> at 2013-11-11 09:10 +0000
Tagging package [spacewalk-schema] version [2.1.25-1] in directory [schema/spacewalk/].
Changes since spacewalk-java-2.1.69-1:
Michael Mraka (1):
Automatic commit of package [spacewalk-schema] release [2.1.25-1].
---
rel-eng/packages/spacewalk-schema | 2 +-
schema/spacewalk/spacewalk-schema.spec | 7 ++++++-
2 files changed, 7 insertions(+), 2 deletions(-)
---
10 years, 5 months
rel-eng/packages schema/spacewalk
by Michael Mraka
rel-eng/packages/spacewalk-schema | 2 +-
schema/spacewalk/spacewalk-schema.spec | 7 ++++++-
2 files changed, 7 insertions(+), 2 deletions(-)
New commits:
commit e47f7b5d348a0dd086f6e13e7291a01bf96e3621
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Mon Nov 11 10:10:37 2013 +0100
Automatic commit of package [spacewalk-schema] release [2.1.25-1].
diff --git a/rel-eng/packages/spacewalk-schema b/rel-eng/packages/spacewalk-schema
index 2cb0b6e..d17bbfe 100644
--- a/rel-eng/packages/spacewalk-schema
+++ b/rel-eng/packages/spacewalk-schema
@@ -1 +1 @@
-2.1.24-1 schema/spacewalk/
+2.1.25-1 schema/spacewalk/
diff --git a/schema/spacewalk/spacewalk-schema.spec b/schema/spacewalk/spacewalk-schema.spec
index 8753490..33fce77 100644
--- a/schema/spacewalk/spacewalk-schema.spec
+++ b/schema/spacewalk/spacewalk-schema.spec
@@ -4,7 +4,7 @@ Name: spacewalk-schema
Group: Applications/Internet
Summary: Oracle SQL schema for Spacewalk server
-Version: 2.1.24
+Version: 2.1.25
Release: 1%{?dist}
Source0: %{name}-%{version}.tar.gz
@@ -71,6 +71,11 @@ rm -rf $RPM_BUILD_ROOT
%{_mandir}/man1/spacewalk-sql*
%changelog
+* Mon Nov 11 2013 Michael Mraka <michael.mraka(a)redhat.com> 2.1.25-1
+- schema upgrade for rhnServerNeededCache
+- extended update_needed_cache() to insert channel_id
+- extended rhnServerNeededCache with channel_id
+
* Thu Oct 24 2013 Milan Zazrivec <mzazrivec(a)redhat.com> 2.1.24-1
- fix space check for Oracle schema upgrades
10 years, 5 months
Changes to 'refs/tags/spacewalk-java-2.1.69-1'
by Michael Mraka
Tag 'spacewalk-java-2.1.69-1' created by Michael Mraka <michael.mraka(a)redhat.com> at 2013-11-11 09:09 +0000
Tagging package [spacewalk-java] version [2.1.69-1] in directory [java/].
Changes since osad-5.11.31-1:
Colin Coe (1):
Prevent [available] deprecation message
Michael Mraka (9):
extended rhnServerNeededCache with channel_id
removed redundant insert_needed_package_cache
removed redundant insertNeededPackageCache()
extended queries according to new rhnServerNeededCache
extended update_needed_cache() to insert channel_id
schema upgrade for rhnServerNeededCache
reuse rhnServerNeededCache content for ErrataMailer
reuse rhnServerNeededCache for errataqueue_find_autoupdate_servers
Automatic commit of package [spacewalk-java] release [2.1.69-1].
---
java/build.xml | 2
java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml | 14
java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml | 159 --
java/code/src/com/redhat/rhn/frontend/action/systems/sdc/test/SystemOverviewActionTest.java | 2
java/code/src/com/redhat/rhn/frontend/action/systems/test/ErrataSetupActionTest.java | 2
java/code/src/com/redhat/rhn/frontend/xmlrpc/system/test/SystemHandlerTest.java | 2
java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java | 18
java/code/src/com/redhat/rhn/manager/errata/cache/test/ErrataCacheManagerTest.java | 8
java/code/src/com/redhat/rhn/manager/system/test/SystemManagerTest.java | 4
java/code/src/com/redhat/rhn/testing/ServerTestUtils.java | 2
java/spacewalk-java.spec | 10
rel-eng/packages/spacewalk-java | 2
schema/spacewalk/common/tables/rhnServerNeededCache.sql | 9
schema/spacewalk/common/tables/tables.deps | 2
schema/spacewalk/oracle/packages/rhn_server.pkb | 4
schema/spacewalk/postgres/packages/rhn_server.pkb | 4
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.oracle | 766 ---------
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.postgresql | 38
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.oracle | 9
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.postgresql | 12
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.oracle | 784 ++++++++++
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql | 40
22 files changed, 905 insertions(+), 988 deletions(-)
---
10 years, 5 months
9 commits - java/code java/spacewalk-java.spec rel-eng/packages schema/spacewalk
by Michael Mraka
java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml | 14
java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml | 159 --
java/code/src/com/redhat/rhn/frontend/action/systems/sdc/test/SystemOverviewActionTest.java | 2
java/code/src/com/redhat/rhn/frontend/action/systems/test/ErrataSetupActionTest.java | 2
java/code/src/com/redhat/rhn/frontend/xmlrpc/system/test/SystemHandlerTest.java | 2
java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java | 18
java/code/src/com/redhat/rhn/manager/errata/cache/test/ErrataCacheManagerTest.java | 8
java/code/src/com/redhat/rhn/manager/system/test/SystemManagerTest.java | 4
java/code/src/com/redhat/rhn/testing/ServerTestUtils.java | 2
java/spacewalk-java.spec | 10
rel-eng/packages/spacewalk-java | 2
schema/spacewalk/common/tables/rhnServerNeededCache.sql | 9
schema/spacewalk/common/tables/tables.deps | 2
schema/spacewalk/oracle/packages/rhn_server.pkb | 4
schema/spacewalk/postgres/packages/rhn_server.pkb | 4
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.oracle | 766 ---------
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.postgresql | 38
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.oracle | 9
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.postgresql | 12
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.oracle | 784 ++++++++++
schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql | 40
21 files changed, 904 insertions(+), 987 deletions(-)
New commits:
commit 10cf4382add92af6ee3b34def246be3827f638bf
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Mon Nov 11 10:09:44 2013 +0100
Automatic commit of package [spacewalk-java] release [2.1.69-1].
diff --git a/java/spacewalk-java.spec b/java/spacewalk-java.spec
index eafc9ca..3dae682 100644
--- a/java/spacewalk-java.spec
+++ b/java/spacewalk-java.spec
@@ -28,7 +28,7 @@ Name: spacewalk-java
Summary: Spacewalk Java site packages
Group: Applications/Internet
License: GPLv2
-Version: 2.1.68
+Version: 2.1.69
Release: 1%{?dist}
URL: https://fedorahosted.org/spacewalk
Source0: https://fedorahosted.org/releases/s/p/spacewalk/%{name}-%{version}.tar.gz
@@ -785,6 +785,14 @@ fi
%{jardir}/postgresql-jdbc.jar
%changelog
+* Mon Nov 11 2013 Michael Mraka <michael.mraka(a)redhat.com> 2.1.69-1
+- reuse rhnServerNeededCache for errataqueue_find_autoupdate_servers
+- reuse rhnServerNeededCache content for ErrataMailer
+- removed redundant insertNeededPackageCache()
+- Prevent [available] deprecation message
+- 1021552 - point to channel architecture listing API in
+ channel.software.create APIs
+
* Thu Nov 07 2013 Michael Mraka <michael.mraka(a)redhat.com> 2.1.68-1
- 1027050 - optimized system_config_files_with_diffs eleborator for PostgreSQL
- 1027454 - fix ISE, when renaming channel to channel name already in use
diff --git a/rel-eng/packages/spacewalk-java b/rel-eng/packages/spacewalk-java
index 73e79e8..b842a3d 100644
--- a/rel-eng/packages/spacewalk-java
+++ b/rel-eng/packages/spacewalk-java
@@ -1 +1 @@
-2.1.68-1 java/
+2.1.69-1 java/
commit 5ccb0a0fee0a1b6d3e54b532d50035450eb8998c
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 16:31:51 2013 +0100
reuse rhnServerNeededCache for errataqueue_find_autoupdate_servers
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml
index 310c20f..da191e2 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml
@@ -137,74 +137,16 @@ SELECT DISTINCT
<mode name="errataqueue_find_autoupdate_servers">
<query params="errata_id, channel_id">
-SELECT DISTINCT
- S.id AS server_id, S.org_id org_id
- FROM rhnServer S
- JOIN (
---
-select rhnChannelErrata.errata_id, rhnChannelErrata.channel_id, rhnServerChannel.server_id, rhnErrataPackage.package_id
-from rhnChannelErrata, rhnErrataPackage, rhnChannelNewestPackage, rhnPackageEVR,
- rhnServerChannel, rhnServerPackage, rhnPackageUpgradeArchCompat
-where rhnChannelErrata.errata_id = rhnErrataPackage.errata_id
---
- and rhnChannelErrata.channel_id = rhnChannelNewestPackage.channel_id
- and rhnErrataPackage.package_id = rhnChannelNewestPackage.package_id
---
- and rhnChannelErrata.channel_id = rhnServerChannel.channel_id
- and rhnChannelNewestPackage.name_id = rhnServerPackage.name_id
- and rhnServerChannel.server_id = rhnServerPackage.server_id
---
- and rhnChannelNewestPackage.evr_id = rhnPackageEVR.id
---
- and rhnServerPackage.package_arch_id = rhnPackageUpgradeArchCompat.package_arch_id
- and rhnPackageUpgradeArchCompat.package_upgrade_arch_id = rhnChannelNewestPackage.package_arch_id
---
- and not exists (
- -- rule out records where channels with lower id exist == get min
- select 1 from rhnChannelPackage cp, rhnServerChannel csc
- where cp.channel_id = csc.channel_id
- and rhnChannelNewestPackage.package_id = cp.package_id
- and rhnServerChannel.server_id = csc.server_id
- and cp.channel_id < rhnChannelNewestPackage.channel_id
- and cp.channel_id = :channel_id
--- ^ helping PostgreSQL 8.4 optimizer, see BZ#1022279 for details
- )
- and not exists (
- -- rule out records where the server has the same package name with higher evr
- select 1 from rhnServerPackage sp, rhnPackageEVR sevr, rhnPackageUpgradeArchCompat puac,
- rhnErrataPackage jep, rhnPackage jp
- where rhnServerPackage.server_id = sp.server_id
- and rhnServerPackage.name_id = sp.name_id
- and sp.evr_id = sevr.id
- and rhnPackageEVR.evr <= sevr.evr
- and rhnServerPackage.package_arch_id = puac.package_arch_id
- and puac.package_upgrade_arch_id = sp.package_arch_id
- and jep.errata_id = :errata_id and jep.package_id = jp.id and jp.name_id = sp.name_id
--- ^ helping PostgreSQL 8.4 optimizer, see BZ#1022279 for details
- )
- and not exists (
- -- rule out records where other channel provides the same package name with higher evr
- select 1 from rhnServerChannel csc, rhnChannelNewestPackage ocnp, rhnPackageEVR oevr, rhnPackageUpgradeArchCompat puac
- where rhnServerChannel.server_id = csc.server_id
- and csc.channel_id = ocnp.channel_id
- and rhnServerPackage.name_id = ocnp.name_id
- and ocnp.evr_id = oevr.id
- and rhnPackageEVR.evr < oevr.evr
- and rhnServerPackage.package_arch_id = puac.package_arch_id
- and puac.package_upgrade_arch_id = ocnp.package_arch_id
- and csc.channel_id = :channel_id
--- ^ helping PostgreSQL 8.4 optimizer, see BZ#1022279 for details
- )
---
- ) SNV
- on SNV.server_id = S.id
- WHERE SNV.channel_id = :channel_id
- AND SNV.errata_id = :errata_id
- AND EXISTS
- (SELECT 1 FROM rhnServerFeaturesView SFV WHERE
- SFV.server_id = S.id AND SFV.label = 'ftr_auto_errata_updates')
- AND UPPER(s.auto_update) = 'Y'
-ORDER BY S.org_id
+select distinct s.id as server_id , s.org_id
+ from rhnServerNeededCache snc
+ join rhnServer s
+ on s.id = snc.server_id
+ where snc.channel_id = :channel_id
+ and snc.errata_id = :errata_id
+ and upper(s.auto_update) = 'Y'
+ and exists (select 1 from rhnServerFeaturesView sfv
+ where sfv.server_id = S.id and sfv.label = 'ftr_auto_errata_updates')
+order by s.org_id
</query>
</mode>
commit 6ee6d388e4562005333d2293086f02449782a7f1
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 16:26:07 2013 +0100
reuse rhnServerNeededCache content for ErrataMailer
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml
index 214608f..310c20f 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Task_queries.xml
@@ -501,76 +501,17 @@ ORDER BY next_action DESC
<mode name="erratamailer_get_relevant_servers">
<query params="errata_id,org_id, channel_id">
- SELECT DISTINCT snv.server_id AS server_id, S.name, S.release, SA.name as arch,
- urn.user_id
- FROM (
---
-select rhnChannelErrata.errata_id, rhnChannelErrata.channel_id, rhnServerChannel.server_id, rhnErrataPackage.package_id
-from rhnChannelErrata, rhnErrataPackage, rhnChannelNewestPackage, rhnPackageEVR,
- rhnServerChannel, rhnServerPackage, rhnPackageUpgradeArchCompat
-where rhnChannelErrata.errata_id = rhnErrataPackage.errata_id
---
- and rhnChannelErrata.channel_id = rhnChannelNewestPackage.channel_id
- and rhnErrataPackage.package_id = rhnChannelNewestPackage.package_id
---
- and rhnChannelErrata.channel_id = rhnServerChannel.channel_id
- and rhnChannelNewestPackage.name_id = rhnServerPackage.name_id
- and rhnServerChannel.server_id = rhnServerPackage.server_id
---
- and rhnChannelNewestPackage.evr_id = rhnPackageEVR.id
---
- and rhnServerPackage.package_arch_id = rhnPackageUpgradeArchCompat.package_arch_id
- and rhnPackageUpgradeArchCompat.package_upgrade_arch_id = rhnChannelNewestPackage.package_arch_id
---
- and not exists (
- -- rule out records where channels with lower id exist == get min
- select 1 from rhnChannelPackage cp, rhnServerChannel csc
- where cp.channel_id = csc.channel_id
- and rhnChannelNewestPackage.package_id = cp.package_id
- and rhnServerChannel.server_id = csc.server_id
- and cp.channel_id < rhnChannelNewestPackage.channel_id
- and cp.channel_id = :channel_id
--- ^ helping PostgreSQL 8.4 optimizer, see BZ#1024395 for details
- )
- and not exists (
- -- rule out records where the server has the same package name with higher evr
- select 1 from rhnServerPackage sp, rhnPackageEVR sevr, rhnPackageUpgradeArchCompat puac,
- rhnErrataPackage jep, rhnPackage jp
- where rhnServerPackage.server_id = sp.server_id
- and rhnServerPackage.name_id = sp.name_id
- and sp.evr_id = sevr.id
- and rhnPackageEVR.evr <= sevr.evr
- and rhnServerPackage.package_arch_id = puac.package_arch_id
- and puac.package_upgrade_arch_id = sp.package_arch_id
- and jep.errata_id = :errata_id and jep.package_id = jp.id and jp.name_id = sp.name_id
--- ^ helping PostgreSQL 8.4 optimizer, see BZ#1024395 for details
- )
- and not exists (
- -- rule out records where other channel provides the same package name with higher evr
- select 1 from rhnServerChannel csc, rhnChannelNewestPackage ocnp, rhnPackageEVR oevr, rhnPackageUpgradeArchCompat puac
- where rhnServerChannel.server_id = csc.server_id
- and csc.channel_id = ocnp.channel_id
- and rhnServerPackage.name_id = ocnp.name_id
- and ocnp.evr_id = oevr.id
- and rhnPackageEVR.evr < oevr.evr
- and rhnServerPackage.package_arch_id = puac.package_arch_id
- and puac.package_upgrade_arch_id = ocnp.package_arch_id
- and csc.channel_id = :channel_id
--- ^ helping PostgreSQL 8.4 optimizer, see BZ#1024395 for details
- )
---
- ) snv
- JOIN rhnUserReceiveNotifications urn
- ON snv.server_id = urn.server_id
- JOIN rhnServerChannel sc
- ON sc.server_id = snv.server_id
- JOIN rhnServer S
- ON S.id = SC.server_id
- JOIN rhnServerArch sa
- ON s.server_arch_id = sa.id
- WHERE sc.channel_id = :channel_id
- AND snv.errata_id = :errata_id
- AND S.org_id = :org_id
+select distinct s.id as server_id, s.name, s.release, sa.name as arch, urn.user_id
+ from rhnServerNeededCache snc
+ join rhnServer s
+ on snc.server_id = s.id
+ join rhnServerArch sa
+ on s.server_arch_id = sa.id
+ join rhnUserReceiveNotifications urn
+ on urn.server_id = snc.server_id
+where snc.errata_id = :errata_id
+ and snc.channel_id = :channel_id
+ and s.org_id = :org_id
</query>
</mode>
commit 83f3e48dba6f4e4acd7c7ea7087f07d0f436050b
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 16:22:11 2013 +0100
schema upgrade for rhnServerNeededCache
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.oracle b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.oracle
deleted file mode 100644
index 4b51dd2..0000000
--- a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.oracle
+++ /dev/null
@@ -1,766 +0,0 @@
-create or replace
-package body rhn_server
-is
- function system_service_level(
- server_id_in in number,
- service_level_in in varchar2
- ) return number is
-
- cursor ents is
- select label from rhnServerEntitlementView
- where server_id = server_id_in;
-
- retval number := 0;
-
- begin
- for ent in ents loop
- retval := rhn_entitlements.entitlement_grants_service (ent.label, service_level_in);
- if retval = 1 then
- return retval;
- end if;
- end loop;
-
- return retval;
-
- end system_service_level;
-
-
- function can_change_base_channel(server_id_in IN NUMBER)
- return number
- is
- throwaway number;
- begin
- -- the idea: if we get past this query, the server is
- -- neither sat nor proxy, so base channel is changeable
-
- select 1 into throwaway
- from rhnServer S
- where S.id = server_id_in
- and not exists (select 1 from rhnSatelliteInfo SI where SI.server_id = S.id)
- and not exists (select 1 from rhnProxyInfo PI where PI.server_id = S.id);
-
- return 1;
- exception
- when no_data_found
- then
- return 0;
- end can_change_base_channel;
-
- procedure set_custom_value(
- server_id_in in number,
- user_id_in in number,
- key_label_in in varchar2,
- value_in in varchar2
- ) is
- key_id_val number;
- begin
- select CDK.id into key_id_val
- from rhnCustomDataKey CDK,
- rhnServer S
- where S.id = server_id_in
- and S.org_id = CDK.org_id
- and CDK.label = key_label_in;
-
- begin
- insert into rhnServerCustomDataValue (server_id, key_id, value, created_by, last_modified_by)
- values (server_id_in, key_id_val, value_in, user_id_in, user_id_in);
- exception
- when DUP_VAL_ON_INDEX
- then
- update rhnServerCustomDataValue
- set value = value_in,
- last_modified_by = user_id_in
- where server_id = server_id_in
- and key_id = key_id_val;
- end;
-
- end set_custom_value;
-
- function bulk_set_custom_value(
- key_label_in in varchar2,
- value_in in varchar2,
- set_label_in in varchar2,
- set_uid_in in number
- )
- return integer
- is
- i integer := 0;
- begin
- i := 0;
- for server in (
- SELECT user_id, label, element, element_two
- FROM rhnSet
- WHERE label = set_label_in
- AND user_id = set_uid_in
- ) loop
- if rhn_server.system_service_level(server.element, 'provisioning') = 1 then
- rhn_server.set_custom_value(server.element, set_uid_in, key_label_in, value_in);
- i := i + 1;
- end if;
- end loop server;
- return i;
- end bulk_set_custom_value;
-
- procedure bulk_snapshot_tag(
- org_id_in in number,
- tagname_in in varchar2,
- set_label_in in varchar2,
- set_uid_in in number
- ) is
- snapshot_id number;
- begin
- for server in (
- SELECT user_id, label, element, element_two
- FROM rhnSet
- WHERE label = set_label_in
- AND user_id = set_uid_in
- ) loop
- if rhn_server.system_service_level(server.element, 'provisioning') = 1 then
- begin
- select max(id) into snapshot_id
- from rhnSnapshot
- where server_id = server.element;
- exception
- when NO_DATA_FOUND then
- rhn_server.snapshot_server(server.element, 'tagging system: ' || tagname_in);
-
- select max(id) into snapshot_id
- from rhnSnapshot
- where server_id = server.element;
- end;
-
- -- now have a snapshot_id to work with...
- begin
- rhn_server.tag_snapshot(snapshot_id, org_id_in, tagname_in);
- exception
- when DUP_VAL_ON_INDEX
- then
- -- do nothing, be forgiving...
- null;
- end;
- end if;
- end loop server;
- end bulk_snapshot_tag;
-
- procedure tag_delete(
- server_id_in in number,
- tag_id_in in number
- ) is
- cursor snapshots is
- select snapshot_id
- from rhnSnapshotTag
- where tag_id = tag_id_in;
- tag_id_tmp number;
- begin
- select id into tag_id_tmp
- from rhnTag
- where id = tag_id_in
- for update;
-
- delete
- from rhnSnapshotTag
- where server_id = server_id_in
- and tag_id = tag_id_in;
- for snapshot in snapshots loop
- return;
- end loop;
- delete
- from rhnTag
- where id = tag_id_in;
- end tag_delete;
-
- procedure tag_snapshot(
- snapshot_id_in in number,
- org_id_in in number,
- tagname_in in varchar2
- ) is
- begin
- insert into rhnSnapshotTag (snapshot_id, server_id, tag_id)
- select snapshot_id_in, server_id, lookup_tag(org_id_in, tagname_in)
- from rhnSnapshot
- where id = snapshot_id_in;
- end tag_snapshot;
-
- procedure bulk_snapshot(
- reason_in in varchar2,
- set_label_in in varchar2,
- set_uid_in in number
- ) is
- begin
- for server in (
- SELECT user_id, label, element, element_two
- FROM rhnSet
- WHERE label = set_label_in
- AND user_id = set_uid_in
- ) loop
- if rhn_server.system_service_level(server.element, 'provisioning') = 1 then
- rhn_server.snapshot_server(server.element, reason_in);
- end if;
- end loop server;
- end bulk_snapshot;
-
- procedure snapshot_server(
- server_id_in in number,
- reason_in in varchar2
- ) is
- snapshot_id number;
- cursor revisions is
- select distinct
- cr.id
- from rhnConfigRevision cr,
- rhnConfigFileName cfn,
- rhnConfigFile cf,
- rhnConfigChannel cc,
- rhnServerConfigChannel scc
- where 1=1
- and scc.server_id = server_id_in
- and scc.config_channel_id = cc.id
- and cc.id = cf.config_channel_id
- and cf.id = cr.config_file_id
- and cr.id = cf.latest_config_revision_id
- and cf.config_file_name_id = cfn.id
- and cf.id = lookup_first_matching_cf(scc.server_id, cfn.path);
- locked integer;
- begin
- select rhn_snapshot_id_seq.nextval into snapshot_id from dual;
-
- insert into rhnSnapshot (id, org_id, server_id, reason) (
- select snapshot_id,
- s.org_id,
- server_id_in,
- reason_in
- from rhnServer s
- where s.id = server_id_in
- );
- insert into rhnSnapshotChannel (snapshot_id, channel_id) (
- select snapshot_id, sc.channel_id
- from rhnServerChannel sc
- where sc.server_id = server_id_in
- );
- insert into rhnSnapshotServerGroup (snapshot_id, server_group_id) (
- select snapshot_id, sgm.server_group_id
- from rhnServerGroupMembers sgm
- where sgm.server_id = server_id_in
- );
- locked := 0;
- while true loop
- begin
- insert into rhnPackageNEVRA (id, name_id, evr_id, package_arch_id)
- select rhn_pkgnevra_id_seq.nextval, sp.name_id, sp.evr_id, sp.package_arch_id
- from rhnServerPackage sp
- where sp.server_id = server_id_in
- and not exists
- (select 1
- from rhnPackageNEVRA nevra
- where nevra.name_id = sp.name_id
- and nevra.evr_id = sp.evr_id
- and (nevra.package_arch_id = sp.package_arch_id
- or (nevra.package_arch_id is null
- and sp.package_arch_id is null)));
- exit;
- exception when dup_val_on_index then
- if locked = 1 then
- raise;
- else
- lock table rhnPackageNEVRA in exclusive mode;
- locked := 1;
- end if;
- end;
- end loop;
- insert into rhnSnapshotPackage (snapshot_id, nevra_id) (
- select distinct snapshot_id, nevra.id
- from rhnServerPackage sp, rhnPackageNEVRA nevra
- where sp.server_id = server_id_in
- and nevra.name_id = sp.name_id
- and nevra.evr_id = sp.evr_id
- and (nevra.package_arch_id = sp.package_arch_id
- or (nevra.package_arch_id is null
- and sp.package_arch_id is null))
- );
-
- insert into rhnSnapshotConfigChannel ( snapshot_id, config_channel_id ) (
- select snapshot_id, scc.config_channel_id
- from rhnServerConfigChannel scc
- where server_id = server_id_in
- );
-
- for revision in revisions loop
- insert into rhnSnapshotConfigRevision (
- snapshot_id, config_revision_id
- ) values (
- snapshot_id, revision.id
- );
- end loop;
- end snapshot_server;
-
- procedure remove_action(
- server_id_in in number,
- action_id_in in number
- ) is
- -- this really wants "nulls last", but 8.1.7.3.0 sucks ass.
- -- instead, we make a local table that holds our
- -- list of ids with null prereqs. There's surely a better way
- -- (an array instead of a table maybe? who knows...)
- -- but I've got code to do this handy that I can look at ;)
- cursor chained_actions is
- select id, prerequisite
- from rhnAction
- start with id = action_id_in
- connect by prior id = prerequisite
- order by prerequisite desc;
- cursor sessions is
- select s.id
- from rhnKickstartSession s
- where server_id_in in (s.old_server_id, s.new_server_id)
- and s.action_id = action_id_in
- and not exists (
- select 1
- from rhnKickstartSessionState ss
- where ss.id = s.state_id
- and ss.label in ('failed','complete')
- );
- type chain_end_type is table of number index by binary_integer;
- chain_ends chain_end_type;
- i number;
- prereq number := 1;
- begin
- select prerequisite
- into prereq
- from rhnAction
- where id = action_id_in;
-
- if prereq is not null then
- rhn_exception.raise_exception('action_is_child');
- end if;
-
- i := 0;
- for action in chained_actions loop
- if action.prerequisite is null then
- chain_ends(i) := action.id;
- i := i + 1;
- else
- delete from rhnServerAction
- where server_id = server_id_in
- and action_id = action.id;
- end if;
- end loop;
- i := chain_ends.first;
- while i is not null loop
- delete from rhnServerAction
- where server_id = server_id_in
- and action_id = chain_ends(i);
- i := chain_ends.next(i);
- end loop;
- for s in sessions loop
- update rhnKickstartSession
- set state_id = (
- select id
- from rhnKickstartSessionState
- where label = 'failed'
- ),
- action_id = null
- where id = s.id;
- set_ks_session_history_message(s.id, 'failed', 'Kickstart cancelled due to action removal');
- end loop;
- end remove_action;
-
- function check_user_access(server_id_in in number, user_id_in in number)
- return number
- is
- has_access number;
- begin
- -- first check; if this returns no rows, then the server/user are in different orgs, and we bail
- select 1 into has_access
- from rhnServer S,
- web_contact wc
- where wc.org_id = s.org_id
- and s.id = server_id_in
- and wc.id = user_id_in;
-
- -- okay, so they're in the same org. if we have an org admin, they get a free pass
- if rhn_user.check_role(user_id_in, 'org_admin') = 1
- then
- return 1;
- end if;
-
- select 1 into has_access
- from rhnServerGroupMembers SGM,
- rhnUserServerGroupPerms USG
- where SGM.server_group_id = USG.server_group_id
- and SGM.server_id = server_id_in
- and USG.user_id = user_id_in
- and rownum = 1;
-
- return 1;
- exception
- when no_data_found
- then
- return 0;
- end check_user_access;
-
- -- *******************************************************************
- -- FUNCTION: can_server_consume_virt_slot
- -- Returns 1 if the server id is eligible to consume a virtual slot,
- -- else returns 0.
- -- Called by: insert_into_servergroup, delete_from_servergroup
- -- *******************************************************************
- function can_server_consume_virt_slot(server_id_in in number,
- group_type_in in
- rhnServerGroupType.label%TYPE)
- return number
- is
-
- cursor server_virt_slots is
- select vi.VIRTUAL_SYSTEM_ID
- from
- rhnVirtualInstance vi
- where
- -- server id is a virtual instance
- vi.VIRTUAL_SYSTEM_ID = server_id_in
- -- server id's host is virt entitled
- and exists ( select 1
- from rhnServerEntitlementView sev
- where vi.HOST_SYSTEM_ID = sev.server_id
- and sev.label in ('virtualization_host',
- 'virtualization_host_platform') )
- -- server id's host also has the ent we want
- and exists ( select 1
- from rhnServerEntitlementView sev2
- where vi.HOST_SYSTEM_ID = sev2.server_id
- and sev2.label = group_type_in );
-
- begin
- for server_virt_slot in server_virt_slots loop
- return 1;
- end loop;
- return 0;
- end can_server_consume_virt_slot;
-
-
- procedure insert_into_servergroup (
- server_id_in in number,
- server_group_id_in in number
- ) is
- used_slots number;
- max_slots number;
- org_id number;
- mgmt_available number;
- mgmt_upgrade number;
- mgmt_sgid number;
- prov_available number;
- prov_upgrade number;
- prov_sgid number;
- group_label rhnServerGroupType.label%TYPE;
- group_type number;
- begin
- -- frist, group_type = null, because it's easy...
-
- -- this will rowlock the servergroup we're trying to change;
- -- we probably need to lock the other one, but I think the chances
- -- of it being a real issue are very small for now...
- select sg.group_type, sg.org_id, sg.current_members, sg.max_members
- into group_type, org_id, used_slots, max_slots
- from rhnServerGroup sg
- where sg.id = server_group_id_in
- for update of sg.current_members;
-
- if group_type is null then
- if used_slots >= max_slots then
- rhn_exception.raise_exception('servergroup_max_members');
- end if;
-
- insert into rhnServerGroupMembers(
- server_id, server_group_id
- ) values (
- server_id_in, server_group_id_in
- );
- update rhnServerGroup
- set current_members = current_members + 1
- where id = server_group_id_in;
-
- rhn_cache.update_perms_for_server_group(server_group_id_in);
- return;
- end if;
-
- -- now for group_type != null
- --
- select label
- into group_label
- from rhnServerGroupType sgt
- where sgt.id = group_type;
-
- -- the naive easy path that gets hit most often and has to be quickest.
- if group_label in ('sw_mgr_entitled',
- 'enterprise_entitled',
- 'monitoring_entitled',
- 'provisioning_entitled',
- 'virtualization_host',
- 'virtualization_host_platform') then
- if used_slots >= max_slots and
- (can_server_consume_virt_slot(server_id_in, group_label) != 1)
- then
- rhn_exception.raise_exception('servergroup_max_members');
- end if;
-
- insert into rhnServerGroupMembers(
- server_id, server_group_id
- ) values (
- server_id_in, server_group_id_in
- );
-
- -- Only update current members if the system in consuming a
- -- physical slot.
- if can_server_consume_virt_slot(server_id_in, group_label) = 0 then
- update rhnServerGroup
- set current_members = current_members + 1
- where id = server_group_id_in;
- end if;
-
- return;
- end if;
- end;
-
- function insert_into_servergroup_maybe (
- server_id_in in number,
- server_group_id_in in number
- ) return number is
- retval number := 0;
- cursor servergroups is
- select s.id server_id,
- sg.id server_group_id
- from rhnServerGroup sg,
- rhnServer s
- where s.id = server_id_in
- and sg.id = server_group_id_in
- and s.org_id = sg.org_id
- and not exists (
- select 1
- from rhnServerGroupMembers sgm
- where sgm.server_id = s.id
- and sgm.server_group_id = sg.id
- );
- begin
- for sgm in servergroups loop
- rhn_server.insert_into_servergroup(sgm.server_id, sgm.server_group_id);
- retval := retval + 1;
- end loop;
- return retval;
- end insert_into_servergroup_maybe;
-
- procedure insert_set_into_servergroup (
- server_group_id_in in number,
- user_id_in in number,
- set_label_in in varchar2
- ) is
- cursor servers is
- select st.element id
- from rhnSet st
- where st.user_id = user_id_in
- and st.label = set_label_in
- and exists (
- select 1
- from rhnUserManagedServerGroups umsg
- where umsg.server_group_id = server_group_id_in
- and umsg.user_id = user_id_in
- )
- and not exists (
- select 1
- from rhnServerGroupMembers sgm
- where sgm.server_id = st.element
- and sgm.server_group_id = server_group_id_in
- );
- begin
- for s in servers loop
- rhn_server.insert_into_servergroup(s.id, server_group_id_in);
- end loop;
- end insert_set_into_servergroup;
-
- procedure delete_from_servergroup (
- server_id_in in number,
- server_group_id_in in number
- ) is
- cursor server_virt_groups is
- select 1
- from rhnServerEntitlementVirtual sev
- where sev.server_id = server_id_in
- and sev.server_group_id = server_group_id_in;
-
- oid number;
- mgmt_sgid number;
- label rhnServerGroupType.label%TYPE;
- group_type number;
- begin
- begin
- select sg.group_type, sg.org_id
- into group_type, oid
- from rhnServerGroupMembers sgm,
- rhnServerGroup sg
- where sg.id = server_group_id_in
- and sg.id = sgm.server_group_id
- and sgm.server_id = server_id_in
- for update of sg.current_members;
- exception
- when no_data_found then
- rhn_exception.raise_exception('server_not_in_group');
- end;
-
- -- do group_type is null first
- if group_type is null then
- delete from rhnServerGroupMembers
- where server_group_id = server_group_id_in
- and server_id = server_id_in;
- update rhnServerGroup
- set current_members = current_members - 1
- where id = server_group_id_in;
- rhn_cache.update_perms_for_server_group(server_group_id_in);
- return;
- end if;
-
- select sgt.label
- into label
- from rhnServerGroupType sgt
- where sgt.id = group_type;
-
- if label in ('sw_mgr_entitled',
- 'enterprise_entitled',
- 'provisioning_entitled',
- 'monitoring_entitled',
- 'virtualization_host',
- 'virtualization_host_platform') then
-
- -- Only update current members if the system is consuming
- -- a physical slot.
- for server_virt_group in server_virt_groups loop
- delete from rhnServerGroupMembers
- where server_group_id = server_group_id_in
- and server_id = server_id_in;
- return;
- end loop;
-
- delete from rhnServerGroupMembers
- where server_group_id = server_group_id_in
- and server_id = server_id_in;
-
- update rhnServerGroup
- set current_members = current_members - 1
- where id = server_group_id_in;
-
- end if;
- end;
-
- procedure delete_set_from_servergroup (
- server_group_id_in in number,
- user_id_in in number,
- set_label_in in varchar2
- ) is
- cursor servergroups is
- select sgm.server_id, sgm.server_group_id
- from rhnSet st,
- rhnServerGroupMembers sgm
- where sgm.server_group_id = server_group_id_in
- and st.user_id = user_id_in
- and st.label = set_label_in
- and sgm.server_id = st.element
- and exists (
- select 1
- from rhnUserManagedServerGroups usgp
- where usgp.server_group_id = server_group_id_in
- and usgp.user_id = user_id_in
- );
- begin
- for sgm in servergroups loop
- rhn_server.delete_from_servergroup(sgm.server_id, server_group_id_in);
- end loop;
- end delete_set_from_servergroup;
-
- procedure clear_servergroup (
- server_group_id_in in number
- ) is
- cursor servers is
- select sgm.server_id id
- from rhnServerGroupMembers sgm
- where sgm.server_group_id = server_group_id_in;
- begin
- for s in servers loop
- rhn_server.delete_from_servergroup(s.id, server_group_id_in);
- end loop;
- end clear_servergroup;
-
- procedure delete_from_org_servergroups (
- server_id_in in number
- ) is
- cursor servergroups is
- select sgm.server_group_id id
- from rhnServerGroup sg,
- rhnServerGroupMembers sgm
- where sgm.server_id = server_id_in
- and sgm.server_group_id = sg.id
- and sg.group_type is null;
- begin
- for sg in servergroups loop
- rhn_server.delete_from_servergroup(server_id_in, sg.id);
- end loop;
- end delete_from_org_servergroups;
-
- function get_ip_address (
- server_id_in in number
- ) return varchar2 is
- cursor interfaces is
- select ni.name as name, na4.address as address
- from rhnServerNetInterface ni,
- rhnServerNetAddress4 na4
- where ni.server_id = server_id_in
- and ni.id = na4.interface_id
- and na4.address != '127.0.0.1';
- cursor addresses is
- select ipaddr ip_addr
- from rhnServerNetwork
- where server_id = server_id_in
- and ipaddr != '127.0.0.1';
- begin
- for addr in addresses loop
- return addr.ip_addr;
- end loop;
- for iface in interfaces loop
- return iface.address;
- end loop;
- return NULL;
- end get_ip_address;
-
- procedure update_needed_cache(server_id_in in number)
- is
- begin
- delete from rhnServerNeededCache
- where server_id = server_id_in;
- insert into rhnServerNeededCache
- (server_id, errata_id, package_id)
- (select distinct sp.server_id, x.errata_id, p.id
- FROM (SELECT sp_sp.server_id, sp_sp.name_id,
- sp_sp.package_arch_id, max(sp_pe.evr) AS max_evr
- FROM rhnServerPackage sp_sp
- join rhnPackageEvr sp_pe ON sp_pe.id = sp_sp.evr_id
- GROUP BY sp_sp.server_id, sp_sp.name_id, sp_sp.package_arch_id) sp
- join rhnPackage p ON p.name_id = sp.name_id
- join rhnPackageEvr pe ON pe.id = p.evr_id
- AND sp.max_evr < pe.evr
- join rhnPackageUpgradeArchCompat puac
- ON puac.package_arch_id = sp.package_arch_id
- AND puac.package_upgrade_arch_id = p.package_arch_id
- join rhnServerChannel sc ON sc.server_id = sp.server_id
- join rhnChannelPackage cp ON cp.package_id = p.id
- AND cp.channel_id = sc.channel_id
- left join (SELECT ep.errata_id, ce.channel_id, ep.package_id
- FROM rhnChannelErrata ce
- join rhnErrataPackage ep
- ON ep.errata_id = ce.errata_id
- join rhnServerChannel sc_sc
- ON sc_sc.channel_id = ce.channel_id
- WHERE sc_sc.server_id = server_id_in) x
- ON x.channel_id = sc.channel_id
- AND x.package_id = cp.package_id
- where sp.server_id = server_id_in);
- end update_needed_cache;
-
-end rhn_server;
-/
-SHOW ERRORS
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.postgresql b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.postgresql
deleted file mode 100644
index fe25877..0000000
--- a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/016-update_needed_cache.sql.postgresql
+++ /dev/null
@@ -1,38 +0,0 @@
--- oracle equivalent source sha1 f25ddbc3be234dcb076a4f9e52949d955f5e7e15
-
-update pg_settings set setting = 'rhn_server,' || setting where name = 'search_path';
-
- create or replace function update_needed_cache(
- server_id_in in numeric
- ) returns void as $$
- begin
- delete from rhnServerNeededCache
- where server_id = server_id_in;
- insert into rhnServerNeededCache
- (server_id, errata_id, package_id)
- (select distinct sp.server_id, x.errata_id, p.id
- FROM (SELECT sp_sp.server_id, sp_sp.name_id,
- sp_sp.package_arch_id, max(sp_pe.evr) AS max_evr
- FROM rhnServerPackage sp_sp
- join rhnPackageEvr sp_pe ON sp_pe.id = sp_sp.evr_id
- GROUP BY sp_sp.server_id, sp_sp.name_id, sp_sp.package_arch_id) sp
- join rhnPackage p ON p.name_id = sp.name_id
- join rhnPackageEvr pe ON pe.id = p.evr_id AND sp.max_evr < pe.evr
- join rhnPackageUpgradeArchCompat puac
- ON puac.package_arch_id = sp.package_arch_id
- AND puac.package_upgrade_arch_id = p.package_arch_id
- join rhnServerChannel sc ON sc.server_id = sp.server_id
- join rhnChannelPackage cp ON cp.package_id = p.id
- AND cp.channel_id = sc.channel_id
- left join (SELECT ep.errata_id, ce.channel_id, ep.package_id
- FROM rhnChannelErrata ce
- join rhnErrataPackage ep
- ON ep.errata_id = ce.errata_id
- join rhnServerChannel sc_sc
- ON sc_sc.channel_id = ce.channel_id
- WHERE sc_sc.server_id = server_id_in) x
- ON x.channel_id = sc.channel_id AND x.package_id = cp.package_id
- where sp.server_id = server_id_in);
- end$$ language plpgsql;
-
-update pg_settings set setting = overlay( setting placing '' from 1 for (length('rhn_server')+1) ) where name = 'search_path';
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.oracle b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.oracle
new file mode 100644
index 0000000..92555a5
--- /dev/null
+++ b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.oracle
@@ -0,0 +1,9 @@
+ALTER TABLE rhnServerNeededCache ADD
+ channel_id NUMBER
+ CONSTRAINT rhn_sncp_cid_fk
+ REFERENCES rhnChannel (id)
+ ON DELETE CASCADE;
+
+CREATE INDEX rhn_snc_cid_idx
+ ON rhnServerNeededCache (channel_id)
+ NOLOGGING;
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.postgresql b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.postgresql
new file mode 100644
index 0000000..121a1b8
--- /dev/null
+++ b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/034-rhnServerNeededCache-channel_id.sql.postgresql
@@ -0,0 +1,12 @@
+-- oracle equivalent source sha1 be9ef654294e2f657114e022aadfea74737ba54e
+
+
+ALTER TABLE rhnServerNeededCache ADD
+ channel_id NUMERIC
+ CONSTRAINT rhn_sncp_cid_fk
+ REFERENCES rhnChannel (id)
+ ON DELETE CASCADE;
+
+CREATE INDEX rhn_snc_cid_idx
+ ON rhnServerNeededCache (channel_id)
+ ;
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.oracle b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.oracle
new file mode 100644
index 0000000..f077bae
--- /dev/null
+++ b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.oracle
@@ -0,0 +1,784 @@
+--
+-- Copyright (c) 2008--2012 Red Hat, Inc.
+--
+-- This software is licensed to you under the GNU General Public License,
+-- version 2 (GPLv2). There is NO WARRANTY for this software, express or
+-- implied, including the implied warranties of MERCHANTABILITY or FITNESS
+-- FOR A PARTICULAR PURPOSE. You should have received a copy of GPLv2
+-- along with this software; if not, see
+-- http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
+--
+-- Red Hat trademarks are not licensed under GPLv2. No permission is
+-- granted to use or replicate Red Hat trademarks that are incorporated
+-- in this software or its documentation.
+--
+--
+--
+--
+
+create or replace
+package body rhn_server
+is
+ function system_service_level(
+ server_id_in in number,
+ service_level_in in varchar2
+ ) return number is
+
+ cursor ents is
+ select label from rhnServerEntitlementView
+ where server_id = server_id_in;
+
+ retval number := 0;
+
+ begin
+ for ent in ents loop
+ retval := rhn_entitlements.entitlement_grants_service (ent.label, service_level_in);
+ if retval = 1 then
+ return retval;
+ end if;
+ end loop;
+
+ return retval;
+
+ end system_service_level;
+
+
+ function can_change_base_channel(server_id_in IN NUMBER)
+ return number
+ is
+ throwaway number;
+ begin
+ -- the idea: if we get past this query, the server is
+ -- neither sat nor proxy, so base channel is changeable
+
+ select 1 into throwaway
+ from rhnServer S
+ where S.id = server_id_in
+ and not exists (select 1 from rhnSatelliteInfo SI where SI.server_id = S.id)
+ and not exists (select 1 from rhnProxyInfo PI where PI.server_id = S.id);
+
+ return 1;
+ exception
+ when no_data_found
+ then
+ return 0;
+ end can_change_base_channel;
+
+ procedure set_custom_value(
+ server_id_in in number,
+ user_id_in in number,
+ key_label_in in varchar2,
+ value_in in varchar2
+ ) is
+ key_id_val number;
+ begin
+ select CDK.id into key_id_val
+ from rhnCustomDataKey CDK,
+ rhnServer S
+ where S.id = server_id_in
+ and S.org_id = CDK.org_id
+ and CDK.label = key_label_in;
+
+ begin
+ insert into rhnServerCustomDataValue (server_id, key_id, value, created_by, last_modified_by)
+ values (server_id_in, key_id_val, value_in, user_id_in, user_id_in);
+ exception
+ when DUP_VAL_ON_INDEX
+ then
+ update rhnServerCustomDataValue
+ set value = value_in,
+ last_modified_by = user_id_in
+ where server_id = server_id_in
+ and key_id = key_id_val;
+ end;
+
+ end set_custom_value;
+
+ function bulk_set_custom_value(
+ key_label_in in varchar2,
+ value_in in varchar2,
+ set_label_in in varchar2,
+ set_uid_in in number
+ )
+ return integer
+ is
+ i integer := 0;
+ begin
+ i := 0;
+ for server in (
+ SELECT user_id, label, element, element_two
+ FROM rhnSet
+ WHERE label = set_label_in
+ AND user_id = set_uid_in
+ ) loop
+ if rhn_server.system_service_level(server.element, 'provisioning') = 1 then
+ rhn_server.set_custom_value(server.element, set_uid_in, key_label_in, value_in);
+ i := i + 1;
+ end if;
+ end loop server;
+ return i;
+ end bulk_set_custom_value;
+
+ procedure bulk_snapshot_tag(
+ org_id_in in number,
+ tagname_in in varchar2,
+ set_label_in in varchar2,
+ set_uid_in in number
+ ) is
+ snapshot_id number;
+ begin
+ for server in (
+ SELECT user_id, label, element, element_two
+ FROM rhnSet
+ WHERE label = set_label_in
+ AND user_id = set_uid_in
+ ) loop
+ if rhn_server.system_service_level(server.element, 'provisioning') = 1 then
+ begin
+ select max(id) into snapshot_id
+ from rhnSnapshot
+ where server_id = server.element;
+ exception
+ when NO_DATA_FOUND then
+ rhn_server.snapshot_server(server.element, 'tagging system: ' || tagname_in);
+
+ select max(id) into snapshot_id
+ from rhnSnapshot
+ where server_id = server.element;
+ end;
+
+ -- now have a snapshot_id to work with...
+ begin
+ rhn_server.tag_snapshot(snapshot_id, org_id_in, tagname_in);
+ exception
+ when DUP_VAL_ON_INDEX
+ then
+ -- do nothing, be forgiving...
+ null;
+ end;
+ end if;
+ end loop server;
+ end bulk_snapshot_tag;
+
+ procedure tag_delete(
+ server_id_in in number,
+ tag_id_in in number
+ ) is
+ cursor snapshots is
+ select snapshot_id
+ from rhnSnapshotTag
+ where tag_id = tag_id_in;
+ tag_id_tmp number;
+ begin
+ select id into tag_id_tmp
+ from rhnTag
+ where id = tag_id_in
+ for update;
+
+ delete
+ from rhnSnapshotTag
+ where server_id = server_id_in
+ and tag_id = tag_id_in;
+ for snapshot in snapshots loop
+ return;
+ end loop;
+ delete
+ from rhnTag
+ where id = tag_id_in;
+ end tag_delete;
+
+ procedure tag_snapshot(
+ snapshot_id_in in number,
+ org_id_in in number,
+ tagname_in in varchar2
+ ) is
+ begin
+ insert into rhnSnapshotTag (snapshot_id, server_id, tag_id)
+ select snapshot_id_in, server_id, lookup_tag(org_id_in, tagname_in)
+ from rhnSnapshot
+ where id = snapshot_id_in;
+ end tag_snapshot;
+
+ procedure bulk_snapshot(
+ reason_in in varchar2,
+ set_label_in in varchar2,
+ set_uid_in in number
+ ) is
+ begin
+ for server in (
+ SELECT user_id, label, element, element_two
+ FROM rhnSet
+ WHERE label = set_label_in
+ AND user_id = set_uid_in
+ ) loop
+ if rhn_server.system_service_level(server.element, 'provisioning') = 1 then
+ rhn_server.snapshot_server(server.element, reason_in);
+ end if;
+ end loop server;
+ end bulk_snapshot;
+
+ procedure snapshot_server(
+ server_id_in in number,
+ reason_in in varchar2
+ ) is
+ snapshot_id number;
+ cursor revisions is
+ select distinct
+ cr.id
+ from rhnConfigRevision cr,
+ rhnConfigFileName cfn,
+ rhnConfigFile cf,
+ rhnConfigChannel cc,
+ rhnServerConfigChannel scc
+ where 1=1
+ and scc.server_id = server_id_in
+ and scc.config_channel_id = cc.id
+ and cc.id = cf.config_channel_id
+ and cf.id = cr.config_file_id
+ and cr.id = cf.latest_config_revision_id
+ and cf.config_file_name_id = cfn.id
+ and cf.id = lookup_first_matching_cf(scc.server_id, cfn.path);
+ locked integer;
+ begin
+ select rhn_snapshot_id_seq.nextval into snapshot_id from dual;
+
+ insert into rhnSnapshot (id, org_id, server_id, reason) (
+ select snapshot_id,
+ s.org_id,
+ server_id_in,
+ reason_in
+ from rhnServer s
+ where s.id = server_id_in
+ );
+ insert into rhnSnapshotChannel (snapshot_id, channel_id) (
+ select snapshot_id, sc.channel_id
+ from rhnServerChannel sc
+ where sc.server_id = server_id_in
+ );
+ insert into rhnSnapshotServerGroup (snapshot_id, server_group_id) (
+ select snapshot_id, sgm.server_group_id
+ from rhnServerGroupMembers sgm
+ where sgm.server_id = server_id_in
+ );
+ locked := 0;
+ while true loop
+ begin
+ insert into rhnPackageNEVRA (id, name_id, evr_id, package_arch_id)
+ select rhn_pkgnevra_id_seq.nextval, sp.name_id, sp.evr_id, sp.package_arch_id
+ from rhnServerPackage sp
+ where sp.server_id = server_id_in
+ and not exists
+ (select 1
+ from rhnPackageNEVRA nevra
+ where nevra.name_id = sp.name_id
+ and nevra.evr_id = sp.evr_id
+ and (nevra.package_arch_id = sp.package_arch_id
+ or (nevra.package_arch_id is null
+ and sp.package_arch_id is null)));
+ exit;
+ exception when dup_val_on_index then
+ if locked = 1 then
+ raise;
+ else
+ lock table rhnPackageNEVRA in exclusive mode;
+ locked := 1;
+ end if;
+ end;
+ end loop;
+ insert into rhnSnapshotPackage (snapshot_id, nevra_id) (
+ select distinct snapshot_id, nevra.id
+ from rhnServerPackage sp, rhnPackageNEVRA nevra
+ where sp.server_id = server_id_in
+ and nevra.name_id = sp.name_id
+ and nevra.evr_id = sp.evr_id
+ and (nevra.package_arch_id = sp.package_arch_id
+ or (nevra.package_arch_id is null
+ and sp.package_arch_id is null))
+ );
+
+ insert into rhnSnapshotConfigChannel ( snapshot_id, config_channel_id ) (
+ select snapshot_id, scc.config_channel_id
+ from rhnServerConfigChannel scc
+ where server_id = server_id_in
+ );
+
+ for revision in revisions loop
+ insert into rhnSnapshotConfigRevision (
+ snapshot_id, config_revision_id
+ ) values (
+ snapshot_id, revision.id
+ );
+ end loop;
+ end snapshot_server;
+
+ procedure remove_action(
+ server_id_in in number,
+ action_id_in in number
+ ) is
+ -- this really wants "nulls last", but 8.1.7.3.0 sucks ass.
+ -- instead, we make a local table that holds our
+ -- list of ids with null prereqs. There's surely a better way
+ -- (an array instead of a table maybe? who knows...)
+ -- but I've got code to do this handy that I can look at ;)
+ cursor chained_actions is
+ select id, prerequisite
+ from rhnAction
+ start with id = action_id_in
+ connect by prior id = prerequisite
+ order by prerequisite desc;
+ cursor sessions is
+ select s.id
+ from rhnKickstartSession s
+ where server_id_in in (s.old_server_id, s.new_server_id)
+ and s.action_id = action_id_in
+ and not exists (
+ select 1
+ from rhnKickstartSessionState ss
+ where ss.id = s.state_id
+ and ss.label in ('failed','complete')
+ );
+ type chain_end_type is table of number index by binary_integer;
+ chain_ends chain_end_type;
+ i number;
+ prereq number := 1;
+ begin
+ select prerequisite
+ into prereq
+ from rhnAction
+ where id = action_id_in;
+
+ if prereq is not null then
+ rhn_exception.raise_exception('action_is_child');
+ end if;
+
+ i := 0;
+ for action in chained_actions loop
+ if action.prerequisite is null then
+ chain_ends(i) := action.id;
+ i := i + 1;
+ else
+ delete from rhnServerAction
+ where server_id = server_id_in
+ and action_id = action.id;
+ end if;
+ end loop;
+ i := chain_ends.first;
+ while i is not null loop
+ delete from rhnServerAction
+ where server_id = server_id_in
+ and action_id = chain_ends(i);
+ i := chain_ends.next(i);
+ end loop;
+ for s in sessions loop
+ update rhnKickstartSession
+ set state_id = (
+ select id
+ from rhnKickstartSessionState
+ where label = 'failed'
+ ),
+ action_id = null
+ where id = s.id;
+ set_ks_session_history_message(s.id, 'failed', 'Kickstart cancelled due to action removal');
+ end loop;
+ end remove_action;
+
+ function check_user_access(server_id_in in number, user_id_in in number)
+ return number
+ is
+ has_access number;
+ begin
+ -- first check; if this returns no rows, then the server/user are in different orgs, and we bail
+ select 1 into has_access
+ from rhnServer S,
+ web_contact wc
+ where wc.org_id = s.org_id
+ and s.id = server_id_in
+ and wc.id = user_id_in;
+
+ -- okay, so they're in the same org. if we have an org admin, they get a free pass
+ if rhn_user.check_role(user_id_in, 'org_admin') = 1
+ then
+ return 1;
+ end if;
+
+ select 1 into has_access
+ from rhnServerGroupMembers SGM,
+ rhnUserServerGroupPerms USG
+ where SGM.server_group_id = USG.server_group_id
+ and SGM.server_id = server_id_in
+ and USG.user_id = user_id_in
+ and rownum = 1;
+
+ return 1;
+ exception
+ when no_data_found
+ then
+ return 0;
+ end check_user_access;
+
+ -- *******************************************************************
+ -- FUNCTION: can_server_consume_virt_slot
+ -- Returns 1 if the server id is eligible to consume a virtual slot,
+ -- else returns 0.
+ -- Called by: insert_into_servergroup, delete_from_servergroup
+ -- *******************************************************************
+ function can_server_consume_virt_slot(server_id_in in number,
+ group_type_in in
+ rhnServerGroupType.label%TYPE)
+ return number
+ is
+
+ cursor server_virt_slots is
+ select vi.VIRTUAL_SYSTEM_ID
+ from
+ rhnVirtualInstance vi
+ where
+ -- server id is a virtual instance
+ vi.VIRTUAL_SYSTEM_ID = server_id_in
+ -- server id's host is virt entitled
+ and exists ( select 1
+ from rhnServerEntitlementView sev
+ where vi.HOST_SYSTEM_ID = sev.server_id
+ and sev.label in ('virtualization_host',
+ 'virtualization_host_platform') )
+ -- server id's host also has the ent we want
+ and exists ( select 1
+ from rhnServerEntitlementView sev2
+ where vi.HOST_SYSTEM_ID = sev2.server_id
+ and sev2.label = group_type_in );
+
+ begin
+ for server_virt_slot in server_virt_slots loop
+ return 1;
+ end loop;
+ return 0;
+ end can_server_consume_virt_slot;
+
+
+ procedure insert_into_servergroup (
+ server_id_in in number,
+ server_group_id_in in number
+ ) is
+ used_slots number;
+ max_slots number;
+ org_id number;
+ mgmt_available number;
+ mgmt_upgrade number;
+ mgmt_sgid number;
+ prov_available number;
+ prov_upgrade number;
+ prov_sgid number;
+ group_label rhnServerGroupType.label%TYPE;
+ group_type number;
+ begin
+ -- frist, group_type = null, because it's easy...
+
+ -- this will rowlock the servergroup we're trying to change;
+ -- we probably need to lock the other one, but I think the chances
+ -- of it being a real issue are very small for now...
+ select sg.group_type, sg.org_id, sg.current_members, sg.max_members
+ into group_type, org_id, used_slots, max_slots
+ from rhnServerGroup sg
+ where sg.id = server_group_id_in
+ for update of sg.current_members;
+
+ if group_type is null then
+ if used_slots >= max_slots then
+ rhn_exception.raise_exception('servergroup_max_members');
+ end if;
+
+ insert into rhnServerGroupMembers(
+ server_id, server_group_id
+ ) values (
+ server_id_in, server_group_id_in
+ );
+ update rhnServerGroup
+ set current_members = current_members + 1
+ where id = server_group_id_in;
+
+ rhn_cache.update_perms_for_server_group(server_group_id_in);
+ return;
+ end if;
+
+ -- now for group_type != null
+ --
+ select label
+ into group_label
+ from rhnServerGroupType sgt
+ where sgt.id = group_type;
+
+ -- the naive easy path that gets hit most often and has to be quickest.
+ if group_label in ('sw_mgr_entitled',
+ 'enterprise_entitled',
+ 'monitoring_entitled',
+ 'provisioning_entitled',
+ 'virtualization_host',
+ 'virtualization_host_platform') then
+ if used_slots >= max_slots and
+ (can_server_consume_virt_slot(server_id_in, group_label) != 1)
+ then
+ rhn_exception.raise_exception('servergroup_max_members');
+ end if;
+
+ insert into rhnServerGroupMembers(
+ server_id, server_group_id
+ ) values (
+ server_id_in, server_group_id_in
+ );
+
+ -- Only update current members if the system in consuming a
+ -- physical slot.
+ if can_server_consume_virt_slot(server_id_in, group_label) = 0 then
+ update rhnServerGroup
+ set current_members = current_members + 1
+ where id = server_group_id_in;
+ end if;
+
+ return;
+ end if;
+ end;
+
+ function insert_into_servergroup_maybe (
+ server_id_in in number,
+ server_group_id_in in number
+ ) return number is
+ retval number := 0;
+ cursor servergroups is
+ select s.id server_id,
+ sg.id server_group_id
+ from rhnServerGroup sg,
+ rhnServer s
+ where s.id = server_id_in
+ and sg.id = server_group_id_in
+ and s.org_id = sg.org_id
+ and not exists (
+ select 1
+ from rhnServerGroupMembers sgm
+ where sgm.server_id = s.id
+ and sgm.server_group_id = sg.id
+ );
+ begin
+ for sgm in servergroups loop
+ rhn_server.insert_into_servergroup(sgm.server_id, sgm.server_group_id);
+ retval := retval + 1;
+ end loop;
+ return retval;
+ end insert_into_servergroup_maybe;
+
+ procedure insert_set_into_servergroup (
+ server_group_id_in in number,
+ user_id_in in number,
+ set_label_in in varchar2
+ ) is
+ cursor servers is
+ select st.element id
+ from rhnSet st
+ where st.user_id = user_id_in
+ and st.label = set_label_in
+ and exists (
+ select 1
+ from rhnUserManagedServerGroups umsg
+ where umsg.server_group_id = server_group_id_in
+ and umsg.user_id = user_id_in
+ )
+ and not exists (
+ select 1
+ from rhnServerGroupMembers sgm
+ where sgm.server_id = st.element
+ and sgm.server_group_id = server_group_id_in
+ );
+ begin
+ for s in servers loop
+ rhn_server.insert_into_servergroup(s.id, server_group_id_in);
+ end loop;
+ end insert_set_into_servergroup;
+
+ procedure delete_from_servergroup (
+ server_id_in in number,
+ server_group_id_in in number
+ ) is
+ cursor server_virt_groups is
+ select 1
+ from rhnServerEntitlementVirtual sev
+ where sev.server_id = server_id_in
+ and sev.server_group_id = server_group_id_in;
+
+ oid number;
+ mgmt_sgid number;
+ label rhnServerGroupType.label%TYPE;
+ group_type number;
+ begin
+ begin
+ select sg.group_type, sg.org_id
+ into group_type, oid
+ from rhnServerGroupMembers sgm,
+ rhnServerGroup sg
+ where sg.id = server_group_id_in
+ and sg.id = sgm.server_group_id
+ and sgm.server_id = server_id_in
+ for update of sg.current_members;
+ exception
+ when no_data_found then
+ rhn_exception.raise_exception('server_not_in_group');
+ end;
+
+ -- do group_type is null first
+ if group_type is null then
+ delete from rhnServerGroupMembers
+ where server_group_id = server_group_id_in
+ and server_id = server_id_in;
+ update rhnServerGroup
+ set current_members = current_members - 1
+ where id = server_group_id_in;
+ rhn_cache.update_perms_for_server_group(server_group_id_in);
+ return;
+ end if;
+
+ select sgt.label
+ into label
+ from rhnServerGroupType sgt
+ where sgt.id = group_type;
+
+ if label in ('sw_mgr_entitled',
+ 'enterprise_entitled',
+ 'provisioning_entitled',
+ 'monitoring_entitled',
+ 'virtualization_host',
+ 'virtualization_host_platform') then
+
+ -- Only update current members if the system is consuming
+ -- a physical slot.
+ for server_virt_group in server_virt_groups loop
+ delete from rhnServerGroupMembers
+ where server_group_id = server_group_id_in
+ and server_id = server_id_in;
+ return;
+ end loop;
+
+ delete from rhnServerGroupMembers
+ where server_group_id = server_group_id_in
+ and server_id = server_id_in;
+
+ update rhnServerGroup
+ set current_members = current_members - 1
+ where id = server_group_id_in;
+
+ end if;
+ end;
+
+ procedure delete_set_from_servergroup (
+ server_group_id_in in number,
+ user_id_in in number,
+ set_label_in in varchar2
+ ) is
+ cursor servergroups is
+ select sgm.server_id, sgm.server_group_id
+ from rhnSet st,
+ rhnServerGroupMembers sgm
+ where sgm.server_group_id = server_group_id_in
+ and st.user_id = user_id_in
+ and st.label = set_label_in
+ and sgm.server_id = st.element
+ and exists (
+ select 1
+ from rhnUserManagedServerGroups usgp
+ where usgp.server_group_id = server_group_id_in
+ and usgp.user_id = user_id_in
+ );
+ begin
+ for sgm in servergroups loop
+ rhn_server.delete_from_servergroup(sgm.server_id, server_group_id_in);
+ end loop;
+ end delete_set_from_servergroup;
+
+ procedure clear_servergroup (
+ server_group_id_in in number
+ ) is
+ cursor servers is
+ select sgm.server_id id
+ from rhnServerGroupMembers sgm
+ where sgm.server_group_id = server_group_id_in;
+ begin
+ for s in servers loop
+ rhn_server.delete_from_servergroup(s.id, server_group_id_in);
+ end loop;
+ end clear_servergroup;
+
+ procedure delete_from_org_servergroups (
+ server_id_in in number
+ ) is
+ cursor servergroups is
+ select sgm.server_group_id id
+ from rhnServerGroup sg,
+ rhnServerGroupMembers sgm
+ where sgm.server_id = server_id_in
+ and sgm.server_group_id = sg.id
+ and sg.group_type is null;
+ begin
+ for sg in servergroups loop
+ rhn_server.delete_from_servergroup(server_id_in, sg.id);
+ end loop;
+ end delete_from_org_servergroups;
+
+ function get_ip_address (
+ server_id_in in number
+ ) return varchar2 is
+ cursor interfaces is
+ select ni.name as name, na4.address as address
+ from rhnServerNetInterface ni,
+ rhnServerNetAddress4 na4
+ where ni.server_id = server_id_in
+ and ni.id = na4.interface_id
+ and na4.address != '127.0.0.1';
+ cursor addresses is
+ select ipaddr ip_addr
+ from rhnServerNetwork
+ where server_id = server_id_in
+ and ipaddr != '127.0.0.1';
+ begin
+ for addr in addresses loop
+ return addr.ip_addr;
+ end loop;
+ for iface in interfaces loop
+ return iface.address;
+ end loop;
+ return NULL;
+ end get_ip_address;
+
+ procedure update_needed_cache(server_id_in in number)
+ is
+ begin
+ delete from rhnServerNeededCache
+ where server_id = server_id_in;
+ insert into rhnServerNeededCache
+ (server_id, errata_id, package_id, channel_id)
+ (select distinct sp.server_id, x.errata_id, p.id, x.channel_id
+ FROM (SELECT sp_sp.server_id, sp_sp.name_id,
+ sp_sp.package_arch_id, max(sp_pe.evr) AS max_evr
+ FROM rhnServerPackage sp_sp
+ join rhnPackageEvr sp_pe ON sp_pe.id = sp_sp.evr_id
+ GROUP BY sp_sp.server_id, sp_sp.name_id, sp_sp.package_arch_id) sp
+ join rhnPackage p ON p.name_id = sp.name_id
+ join rhnPackageEvr pe ON pe.id = p.evr_id
+ AND sp.max_evr < pe.evr
+ join rhnPackageUpgradeArchCompat puac
+ ON puac.package_arch_id = sp.package_arch_id
+ AND puac.package_upgrade_arch_id = p.package_arch_id
+ join rhnServerChannel sc ON sc.server_id = sp.server_id
+ join rhnChannelPackage cp ON cp.package_id = p.id
+ AND cp.channel_id = sc.channel_id
+ left join (SELECT ep.errata_id, ce.channel_id, ep.package_id
+ FROM rhnChannelErrata ce
+ join rhnErrataPackage ep
+ ON ep.errata_id = ce.errata_id
+ join rhnServerChannel sc_sc
+ ON sc_sc.channel_id = ce.channel_id
+ WHERE sc_sc.server_id = server_id_in) x
+ ON x.channel_id = sc.channel_id
+ AND x.package_id = cp.package_id
+ where sp.server_id = server_id_in);
+ end update_needed_cache;
+
+end rhn_server;
+/
+SHOW ERRORS
diff --git a/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql
new file mode 100644
index 0000000..c58526e
--- /dev/null
+++ b/schema/spacewalk/upgrade/spacewalk-schema-2.0-to-spacewalk-schema-2.1/035-rhn_server.pkb.sql.postgresql
@@ -0,0 +1,40 @@
+-- oracle equivalent source sha1 b6947eea546edc7a66c7b53d0b62dc734ce3ca8a
+
+
+update pg_settings set setting = 'rhn_server,' || setting where name = 'search_path';
+
+ create or replace function update_needed_cache(
+ server_id_in in numeric
+ ) returns void as $$
+ begin
+ delete from rhnServerNeededCache
+ where server_id = server_id_in;
+ insert into rhnServerNeededCache
+ (server_id, errata_id, package_id, channel_id)
+ (select distinct sp.server_id, x.errata_id, p.id, x.channel_id
+ FROM (SELECT sp_sp.server_id, sp_sp.name_id,
+ sp_sp.package_arch_id, max(sp_pe.evr) AS max_evr
+ FROM rhnServerPackage sp_sp
+ join rhnPackageEvr sp_pe ON sp_pe.id = sp_sp.evr_id
+ GROUP BY sp_sp.server_id, sp_sp.name_id, sp_sp.package_arch_id) sp
+ join rhnPackage p ON p.name_id = sp.name_id
+ join rhnPackageEvr pe ON pe.id = p.evr_id AND sp.max_evr < pe.evr
+ join rhnPackageUpgradeArchCompat puac
+ ON puac.package_arch_id = sp.package_arch_id
+ AND puac.package_upgrade_arch_id = p.package_arch_id
+ join rhnServerChannel sc ON sc.server_id = sp.server_id
+ join rhnChannelPackage cp ON cp.package_id = p.id
+ AND cp.channel_id = sc.channel_id
+ left join (SELECT ep.errata_id, ce.channel_id, ep.package_id
+ FROM rhnChannelErrata ce
+ join rhnErrataPackage ep
+ ON ep.errata_id = ce.errata_id
+ join rhnServerChannel sc_sc
+ ON sc_sc.channel_id = ce.channel_id
+ WHERE sc_sc.server_id = server_id_in) x
+ ON x.channel_id = sc.channel_id AND x.package_id = cp.package_id
+ where sp.server_id = server_id_in);
+ end$$ language plpgsql;
+
+-- restore the original setting
+update pg_settings set setting = overlay( setting placing '' from 1 for (length('rhn_server')+1) ) where name = 'search_path';
commit 6cc73932383fa38bf4fe05cd3b6c4dc9df62f2d0
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 15:31:59 2013 +0100
extended update_needed_cache() to insert channel_id
diff --git a/schema/spacewalk/oracle/packages/rhn_server.pkb b/schema/spacewalk/oracle/packages/rhn_server.pkb
index 261a2ed..36b711c 100644
--- a/schema/spacewalk/oracle/packages/rhn_server.pkb
+++ b/schema/spacewalk/oracle/packages/rhn_server.pkb
@@ -751,8 +751,8 @@ is
delete from rhnServerNeededCache
where server_id = server_id_in;
insert into rhnServerNeededCache
- (server_id, errata_id, package_id)
- (select distinct sp.server_id, x.errata_id, p.id
+ (server_id, errata_id, package_id, channel_id)
+ (select distinct sp.server_id, x.errata_id, p.id, x.channel_id
FROM (SELECT sp_sp.server_id, sp_sp.name_id,
sp_sp.package_arch_id, max(sp_pe.evr) AS max_evr
FROM rhnServerPackage sp_sp
diff --git a/schema/spacewalk/postgres/packages/rhn_server.pkb b/schema/spacewalk/postgres/packages/rhn_server.pkb
index ed5c5be..d383604 100644
--- a/schema/spacewalk/postgres/packages/rhn_server.pkb
+++ b/schema/spacewalk/postgres/packages/rhn_server.pkb
@@ -793,8 +793,8 @@ update pg_settings set setting = 'rhn_server,' || setting where name = 'search_p
delete from rhnServerNeededCache
where server_id = server_id_in;
insert into rhnServerNeededCache
- (server_id, errata_id, package_id)
- (select distinct sp.server_id, x.errata_id, p.id
+ (server_id, errata_id, package_id, channel_id)
+ (select distinct sp.server_id, x.errata_id, p.id, x.channel_id
FROM (SELECT sp_sp.server_id, sp_sp.name_id,
sp_sp.package_arch_id, max(sp_pe.evr) AS max_evr
FROM rhnServerPackage sp_sp
commit 6e81b0c17c38508f0cd99b3a625f0ef19e8d2963
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 15:20:25 2013 +0100
extended queries according to new rhnServerNeededCache
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml b/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml
index d6084c4..6174660 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml
@@ -100,10 +100,11 @@ DELETE FROM rhnOrgErrataCacheQueue WHERE org_id = :org_id
<write-mode name="insert_new_cache_entries_by_packages">
<!-- -->
<query params="channel_id">
- INSERT INTO rhnServerNeededCache (server_id, package_id)
+ INSERT INTO rhnServerNeededCache (server_id, package_id, channel_id)
( SELECT DISTINCT
S.id as server_id,
P.id as package_id
+ :channel_id as channel_id
FROM
rhnPackage P,
rhnServerPackageArchCompat SPAC,
@@ -135,11 +136,12 @@ DELETE FROM rhnOrgErrataCacheQueue WHERE org_id = :org_id
<write-mode name="insert_new_cache_entries_by_errata">
<!-- -->
<query params="channel_id, errata_id">
- INSERT INTO rhnServerNeededCache (server_id, errata_id, package_id)
+ INSERT INTO rhnServerNeededCache (server_id, errata_id, package_id, channel_id)
( SELECT DISTINCT
S.id as server_id,
:errata_id as errata_id,
P.id as package_id
+ :channel_id as channel_id
FROM
rhnPackage P,
rhnServerPackageArchCompat SPAC,
commit 0c0185f3d638539fe8884a8b92c6897bf25c0e53
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 14:31:42 2013 +0100
removed redundant insertNeededPackageCache()
it does the same thing as insertNeededErrataCache()
diff --git a/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/test/SystemOverviewActionTest.java b/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/test/SystemOverviewActionTest.java
index cb87b7d..5832239 100644
--- a/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/test/SystemOverviewActionTest.java
+++ b/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/test/SystemOverviewActionTest.java
@@ -69,7 +69,7 @@ public class SystemOverviewActionTest extends RhnMockStrutsTestCase {
UserFactory.save(user);
OrgFactory.save(org);
- int rows = ErrataCacheManager.insertNeededPackageCache(
+ int rows = ErrataCacheManager.insertNeededErrataCache(
s.getId(), e.getId(), p.getId());
assertEquals(1, rows);
diff --git a/java/code/src/com/redhat/rhn/frontend/action/systems/test/ErrataSetupActionTest.java b/java/code/src/com/redhat/rhn/frontend/action/systems/test/ErrataSetupActionTest.java
index 6b72270..0be22d9 100644
--- a/java/code/src/com/redhat/rhn/frontend/action/systems/test/ErrataSetupActionTest.java
+++ b/java/code/src/com/redhat/rhn/frontend/action/systems/test/ErrataSetupActionTest.java
@@ -49,7 +49,7 @@ public class ErrataSetupActionTest extends RhnMockStrutsTestCase {
for (Iterator itr = e.getPackages().iterator(); itr.hasNext();) {
Package pkg = (Package) itr.next();
- ErrataCacheManager.insertNeededPackageCache(server.getId(),
+ ErrataCacheManager.insertNeededErrataCache(server.getId(),
e.getId(), pkg.getId());
}
diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/test/SystemHandlerTest.java b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/test/SystemHandlerTest.java
index e885711..4c1bd80 100644
--- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/test/SystemHandlerTest.java
+++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/system/test/SystemHandlerTest.java
@@ -1951,7 +1951,7 @@ public class SystemHandlerTest extends BaseHandlerTestCase {
Long sid = new Long(testServer.getId().longValue());
Package pack = PackageTest.createTestPackage(admin.getOrg());
- ErrataCacheManager.insertNeededPackageCache(sid, null,
+ ErrataCacheManager.insertNeededErrataCache(sid, null,
pack.getId());
Object [] array = handler.listOutOfDateSystems(regularKey);
diff --git a/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java b/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java
index 89b0051..7fee0ca 100644
--- a/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java
+++ b/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java
@@ -113,24 +113,6 @@ public class ErrataCacheManager extends HibernateFactory {
}
/**
- * Inserts record into NeededPackage cache table
- * @param sid Server Id
- * @param errataId Errata Id
- * @param packageId Package Id
- * @return number of rows affected.
- */
- public static int insertNeededPackageCache(Long sid, Long errataId,
- Long packageId) {
- WriteMode m = ModeFactory.getWriteMode("ErrataCache_queries",
- "insert_needed_errata_cache");
- Map params = new HashMap();
- params.put("server_id", sid);
- params.put("errata_id", errataId);
- params.put("package_id", packageId);
- return m.executeUpdate(params);
- }
-
- /**
* Deletes record from NeededPackage cache table.
* @param sid Server Id
* @param errataId Errata Id
diff --git a/java/code/src/com/redhat/rhn/manager/errata/cache/test/ErrataCacheManagerTest.java b/java/code/src/com/redhat/rhn/manager/errata/cache/test/ErrataCacheManagerTest.java
index c02f8d8..715f476 100644
--- a/java/code/src/com/redhat/rhn/manager/errata/cache/test/ErrataCacheManagerTest.java
+++ b/java/code/src/com/redhat/rhn/manager/errata/cache/test/ErrataCacheManagerTest.java
@@ -104,7 +104,7 @@ public class ErrataCacheManagerTest extends RhnBaseTestCase {
Long pid = pkg.getId();
// insert record into table
- int rows = ErrataCacheManager.insertNeededPackageCache(
+ int rows = ErrataCacheManager.insertNeededErrataCache(
sid, eid, pid);
assertEquals(1, rows);
@@ -157,7 +157,7 @@ public class ErrataCacheManagerTest extends RhnBaseTestCase {
userIn.addRole(RoleFactory.ORG_ADMIN);
UserFactory.save(userIn);
TestUtils.flushAndEvict(userIn);
- int rows = ErrataCacheManager.insertNeededPackageCache(
+ int rows = ErrataCacheManager.insertNeededErrataCache(
s.getId(), e.getId(), p.getId());
assertEquals(1, rows);
return retval;
@@ -176,7 +176,7 @@ public class ErrataCacheManagerTest extends RhnBaseTestCase {
Long pid = pkg.getId();
// insert record into table
- int rows = ErrataCacheManager.insertNeededPackageCache(
+ int rows = ErrataCacheManager.insertNeededErrataCache(
sid, eid, pid);
assertEquals(1, rows);
@@ -307,7 +307,7 @@ public class ErrataCacheManagerTest extends RhnBaseTestCase {
Long pid = pkg.getId();
// insert record into table
- int rows = ErrataCacheManager.insertNeededPackageCache(
+ int rows = ErrataCacheManager.insertNeededErrataCache(
sid, eid, pid);
assertEquals(1, rows);
diff --git a/java/code/src/com/redhat/rhn/manager/system/test/SystemManagerTest.java b/java/code/src/com/redhat/rhn/manager/system/test/SystemManagerTest.java
index ea745ec..ca7217f 100644
--- a/java/code/src/com/redhat/rhn/manager/system/test/SystemManagerTest.java
+++ b/java/code/src/com/redhat/rhn/manager/system/test/SystemManagerTest.java
@@ -382,7 +382,7 @@ public class SystemManagerTest extends RhnBaseTestCase {
Errata e = ErrataFactoryTest.createTestErrata(user.getOrg().getId());
for (Iterator itr = e.getPackages().iterator(); itr.hasNext();) {
Package pkg = (Package) itr.next();
- ErrataCacheManager.insertNeededPackageCache(server.getId(),
+ ErrataCacheManager.insertNeededErrataCache(server.getId(),
e.getId(), pkg.getId());
}
@@ -1109,7 +1109,7 @@ public class SystemManagerTest extends RhnBaseTestCase {
Errata e = ErrataFactoryTest.createTestErrata(user.getOrg().getId());
for (Iterator itr = e.getPackages().iterator(); itr.hasNext();) {
Package pkg = (Package) itr.next();
- ErrataCacheManager.insertNeededPackageCache(server.getId(),
+ ErrataCacheManager.insertNeededErrataCache(server.getId(),
e.getId(), pkg.getId());
List<SystemOverview> systems =
SystemManager.listSystemsWithNeededPackage(user, pkg.getId());
diff --git a/java/code/src/com/redhat/rhn/testing/ServerTestUtils.java b/java/code/src/com/redhat/rhn/testing/ServerTestUtils.java
index ceeb6c3..fdced01 100644
--- a/java/code/src/com/redhat/rhn/testing/ServerTestUtils.java
+++ b/java/code/src/com/redhat/rhn/testing/ServerTestUtils.java
@@ -271,7 +271,7 @@ public class ServerTestUtils {
upgradedPackage.setPackageEvr(upgradedPackageEvr);
TestUtils.saveAndFlush(upgradedPackage);
- ErrataCacheManager.insertNeededPackageCache(
+ ErrataCacheManager.insertNeededErrataCache(
server.getId(), errata.getId(), installedPackage.getId());
return installedPackage;
commit e28e7a762bcc7c095ff623bbd58b60ed5360df43
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 14:25:43 2013 +0100
removed redundant insert_needed_package_cache
it's equal to already defined insert_needed_errata_cache
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml b/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml
index 4e66267..d6084c4 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/ErrataCache_queries.xml
@@ -90,14 +90,6 @@ DELETE FROM rhnOrgErrataCacheQueue WHERE org_id = :org_id
</query>
</write-mode>
-<write-mode name="insert_needed_package_cache">
- <query params="server_id, errata_id, package_id">
- INSERT INTO rhnServerNeededCache
- (server_id, errata_id, package_id)
- VALUES (:server_id, :errata_id, :package_id)
- </query>
-</write-mode>
-
<callable-mode name="update_needed_cache_for_channel">
<query params="channel_id">
{call rhn_channel.update_needed_cache(:channel_id)}
diff --git a/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java b/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java
index 67fbf68..89b0051 100644
--- a/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java
+++ b/java/code/src/com/redhat/rhn/manager/errata/cache/ErrataCacheManager.java
@@ -122,7 +122,7 @@ public class ErrataCacheManager extends HibernateFactory {
public static int insertNeededPackageCache(Long sid, Long errataId,
Long packageId) {
WriteMode m = ModeFactory.getWriteMode("ErrataCache_queries",
- "insert_needed_package_cache");
+ "insert_needed_errata_cache");
Map params = new HashMap();
params.put("server_id", sid);
params.put("errata_id", errataId);
commit 4e15bdabc254dc9c85d613cd5e04745850b2865b
Author: Michael Mraka <michael.mraka(a)redhat.com>
Date: Fri Nov 8 14:00:04 2013 +0100
extended rhnServerNeededCache with channel_id
diff --git a/schema/spacewalk/common/tables/rhnServerNeededCache.sql b/schema/spacewalk/common/tables/rhnServerNeededCache.sql
index a9b3c68..ac4664a 100644
--- a/schema/spacewalk/common/tables/rhnServerNeededCache.sql
+++ b/schema/spacewalk/common/tables/rhnServerNeededCache.sql
@@ -27,6 +27,10 @@ CREATE TABLE rhnServerNeededCache
package_id NUMBER NOT NULL
CONSTRAINT rhn_sncp_pid_fk
REFERENCES rhnPackage (id)
+ ON DELETE CASCADE,
+ channel_id NUMBER
+ CONSTRAINT rhn_sncp_cid_fk
+ REFERENCES rhnChannel (id)
ON DELETE CASCADE
)
ENABLE ROW MOVEMENT
@@ -44,6 +48,11 @@ CREATE INDEX rhn_snc_eid_idx
TABLESPACE [[128m_tbs]]
NOLOGGING;
+CREATE INDEX rhn_snc_cid_idx
+ ON rhnServerNeededCache (channel_id)
+ TABLESPACE [[128m_tbs]]
+ NOLOGGING;
+
CREATE INDEX rhn_snc_speid_idx
ON rhnServerNeededCache (server_id, package_id, errata_id)
NOPARALLEL
diff --git a/schema/spacewalk/common/tables/tables.deps b/schema/spacewalk/common/tables/tables.deps
index 1a71319..4125c6e 100644
--- a/schema/spacewalk/common/tables/tables.deps
+++ b/schema/spacewalk/common/tables/tables.deps
@@ -163,7 +163,7 @@ rhnServerInfo :: rhnServer
rhnServerUuid :: rhnServer
rhnServerInstallInfo :: rhnServer
rhnServerLocation :: rhnServer
-rhnServerNeededCache :: web_customer rhnServer rhnErrata
+rhnServerNeededCache :: web_customer rhnServer rhnErrata rhnChannel
rhnServerNetwork :: rhnServer
rhnServerNotes :: rhnServer web_contact
rhnServerPackage :: rhnServer rhnPackageArch rhnPackageName rhnPackageEVR
10 years, 5 months
java/build.xml
by Tomas Lestach
java/build.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit f823b1278c50c715155699f53cc3ed2f1b95eb76
Author: Colin Coe <colin.coe(a)gmail.com>
Date: Sat Nov 9 22:17:06 2013 +0800
Prevent [available] deprecation message
Simple patch to resprevent this message:
[available] DEPRECATED - <available> used to override an existing property.
[available] Build file should not reuse the same property name for different values.
diff --git a/java/build.xml b/java/build.xml
index 6077bb6..77a95d9 100644
--- a/java/build.xml
+++ b/java/build.xml
@@ -4,9 +4,9 @@
Spacewalk build file, please indent 2 spaces. NO TABS!
-->
<project name="RHN" default="all" basedir=".">
- <property name="tomcat" value="tomcat5" />
<available file="/usr/share/java/tomcat6" type="dir" property="tomcat" value="tomcat6" />
<available file="/usr/share/java/tomcat" type="dir" property="tomcat" value="tomcat7" />
+ <property name="tomcat" value="tomcat5" />
<echo message="Importing buildconf/build-props-${tomcat}.xml" />
<import file="buildconf/build-props-${tomcat}.xml" />
<import file="buildconf/build-props.xml" />
10 years, 5 months
Changes to 'refs/tags/osad-5.11.31-1'
by Milan Zazrivec
Tag 'osad-5.11.31-1' created by Milan Zazrivec <mzazrivec(a)redhat.com> at 2013-11-08 16:09 +0000
Tagging package [osad] version [5.11.31-1] in directory [client/tools/osad/].
Changes since spacecmd-2.1.13-1:
Milan Zazrivec (2):
917070 - catch jabberd connection errors
Automatic commit of package [osad] release [5.11.31-1].
---
client/tools/osad/osad.spec | 5 ++++-
client/tools/osad/src/jabber_lib.py | 6 +++++-
rel-eng/packages/osad | 2 +-
3 files changed, 10 insertions(+), 3 deletions(-)
---
10 years, 5 months
2 commits - client/tools rel-eng/packages
by Milan Zazrivec
client/tools/osad/osad.spec | 5 ++++-
client/tools/osad/src/jabber_lib.py | 6 +++++-
rel-eng/packages/osad | 2 +-
3 files changed, 10 insertions(+), 3 deletions(-)
New commits:
commit 1dc7ebc1541b168d676647d0f8a872052b41cc69
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Fri Nov 8 17:09:31 2013 +0100
Automatic commit of package [osad] release [5.11.31-1].
diff --git a/client/tools/osad/osad.spec b/client/tools/osad/osad.spec
index bf50963..25e6954 100644
--- a/client/tools/osad/osad.spec
+++ b/client/tools/osad/osad.spec
@@ -17,7 +17,7 @@ Group: System Environment/Daemons
License: GPLv2
URL: https://fedorahosted.org/spacewalk
Source0: https://fedorahosted.org/releases/s/p/spacewalk/%{name}-%{version}.tar.gz
-Version: 5.11.30
+Version: 5.11.31
Release: 1%{?dist}
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
@@ -388,6 +388,9 @@ rpm -ql osa-dispatcher | xargs -n 1 /sbin/restorecon -rvi {}
%endif
%changelog
+* Fri Nov 08 2013 Milan Zazrivec <mzazrivec(a)redhat.com> 5.11.31-1
+- 917070 - catch jabberd connection errors
+
* Thu Oct 10 2013 Michael Mraka <michael.mraka(a)redhat.com> 5.11.30-1
- cleaning up old svn Ids
diff --git a/rel-eng/packages/osad b/rel-eng/packages/osad
index af2e46f..c26c70c 100644
--- a/rel-eng/packages/osad
+++ b/rel-eng/packages/osad
@@ -1 +1 @@
-5.11.30-1 client/tools/osad/
+5.11.31-1 client/tools/osad/
commit 3ba1b7276d6e9d7c39bacb67d69d13404bc3dc33
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Fri Nov 8 17:05:57 2013 +0100
917070 - catch jabberd connection errors
This fix is to avoid an ugly traceback which is printed into the console
when osa-dispatcher starts while jabberd is down. With this fix, even
when jabberd is down, osa-dispatcher will print an error message, yet
the service will report a starting success -- not to break osad
and previously expected behavior. After jabberd starts, osa-dispatcher
will eventually connect to it.
diff --git a/client/tools/osad/src/jabber_lib.py b/client/tools/osad/src/jabber_lib.py
index b8819f0..b3d5069 100644
--- a/client/tools/osad/src/jabber_lib.py
+++ b/client/tools/osad/src/jabber_lib.py
@@ -564,7 +564,11 @@ class JabberClient(jabber.Client):
log_debug(5, "Attempting to connect")
for retry in range(0,3):
- jabber.Client.connect(self)
+ try:
+ jabber.Client.connect(self)
+ except except socket.error, e:
+ log_error("Error connecting to jabber server: %s" % e)
+ raise JabberConnectionError(e)
log_debug(5, "Connected")
10 years, 5 months
Changes to 'refs/tags/spacecmd-2.1.13-1'
by Milan Zazrivec
Tag 'spacecmd-2.1.13-1' created by Milan Zazrivec <mzazrivec(a)redhat.com> at 2013-11-08 14:39 +0000
Tagging package [spacecmd] version [2.1.13-1] in directory [spacecmd/].
Changes since spacewalk-java-2.1.68-1:
Milan Zazrivec (2):
835979 - system_runscript: convert date/time to iso-8601
Automatic commit of package [spacecmd] release [2.1.13-1].
Tomas Lestach (1):
1021552 - point to channel architecture listing API in channel.software.create APIs
---
java/code/src/com/redhat/rhn/frontend/xmlrpc/channel/software/ChannelSoftwareHandler.java | 57 +---------
rel-eng/packages/spacecmd | 2
spacecmd/spacecmd.spec | 5
spacecmd/src/lib/system.py | 1
4 files changed, 12 insertions(+), 53 deletions(-)
---
10 years, 5 months
rel-eng/packages spacecmd/spacecmd.spec
by Milan Zazrivec
rel-eng/packages/spacecmd | 2 +-
spacecmd/spacecmd.spec | 5 ++++-
2 files changed, 5 insertions(+), 2 deletions(-)
New commits:
commit 9868ff38b4f082a88604be8fd8312ff4d1eeafcd
Author: Milan Zazrivec <mzazrivec(a)redhat.com>
Date: Fri Nov 8 15:39:28 2013 +0100
Automatic commit of package [spacecmd] release [2.1.13-1].
diff --git a/rel-eng/packages/spacecmd b/rel-eng/packages/spacecmd
index 053c50e..41ad321 100644
--- a/rel-eng/packages/spacecmd
+++ b/rel-eng/packages/spacecmd
@@ -1 +1 @@
-2.1.12-1 spacecmd/
+2.1.13-1 spacecmd/
diff --git a/spacecmd/spacecmd.spec b/spacecmd/spacecmd.spec
index 58cc9e4..1b42435 100644
--- a/spacecmd/spacecmd.spec
+++ b/spacecmd/spacecmd.spec
@@ -4,7 +4,7 @@
%endif
Name: spacecmd
-Version: 2.1.12
+Version: 2.1.13
Release: 1%{?dist}
Summary: Command-line interface to Spacewalk and Satellite servers
@@ -64,6 +64,9 @@ touch %{buildroot}/%{python_sitelib}/spacecmd/__init__.py
%doc %{_mandir}/man1/spacecmd.1.gz
%changelog
+* Fri Nov 08 2013 Milan Zazrivec <mzazrivec(a)redhat.com> 2.1.13-1
+- 835979 - system_runscript: convert date/time to iso-8601
+
* Mon Oct 14 2013 Michael Mraka <michael.mraka(a)redhat.com> 2.1.12-1
- fix typo in a comment
10 years, 5 months