[Spacewalk-list] Spacewalk, PostgreSQL 9.6, SQL reserved words
Ree, Jan-Albert van
J.A.v.Ree at marin.nl
Thu Feb 23 13:32:03 UTC 2017
Just use the stock CentOS7 PostgreSQL 9.2 , which works flawless out of the box.
And as a tip : also use the same PostgreSQL database for your jabberd database, this for us has finally completely fixed all OSAD problems.
Been running over a month without any machine losing connection through OSAD.
--
Jan-Albert
Jan-Albert van Ree | Linux System Administrator | MARIN Support Group
MARIN | T +31 317 49 35 48 | mailto:J.A.v.Ree at marin.nl | http://www.marin.nl
MARIN news: http://www.marin.nl/web/News/News-items/Few-places-left-for-Offshore-and-Ship-hydrodynamics-courses.htm
________________________________________
From: spacewalk-list-bounces at redhat.com <spacewalk-list-bounces at redhat.com> on behalf of Rob Sterenborg <r.sterenborg at netmatch.nl>
Sent: Thursday, February 23, 2017 14:14
To: spacewalk-list at redhat.com
Subject: [Spacewalk-list] Spacewalk, PostgreSQL 9.6, SQL reserved words
Hi,
We currently use Spacewalk 2.2 with PostgreSQL 8.4 on CentOS 6 and we have problems with it (TRACEBACK emails), so I want to replace these old servers. I'm now setting up Spacewalk 2.6 with PostgreSQL 9.6 on CentOS 7.
Installing and importing the database seems to have worked, however..
Now I get a different "TRACEBACK" error email from Spacewalk, and my eye fell on this:
==========
Extra information about this error:
SQL Error generated: ('ERROR: syntax error at or near "method"\nLINE 3: ... sa.remaining_tries, at.label method,\n ^\n', <connection object at 0x7f8d7b8271e0; dsn: 'port=5432 host=nmo\-spd\-001\.netmatch\.local password=xxxxxxx dbname=spaceschema user=spaceuser', closed: 0>, '\n select sa.action_id id, a.version,\n sa.remaining_tries, at.label method,\n at.unlocked_only,\n a.prerequisite\n from rhnServerAction sa,\n rhnAction a,\n rhnActionType at\n where sa.server_id = %(server_id)s\n and sa.action_id = a.id\n and a.action_type = at.id\n and sa.status in (0, 1) -- Queued or picked up\n and a.earliest_action <= curren
t_timest
amp -- Check earliest_action\n and not exists (\n select 1\n from rhnServerAction sap\n where sap.server_id = %(server_id)s\n and sap.action_id = a.prerequisite\n and sap.status != 2 -- completed\n )\n order by a.earliest_action, a.prerequisite nulls first, a.id\n ')
==========
Searching for this error I found these:
http://git.net/ml/spacewalk-devel/2016-11/msg00004.html
https://github.com/spacewalkproject/spacewalk/blob/master/backend/server/handlers/xmlrpc/queue.py
In /usr/share/rhn/server/handlers/xmlrpc/queue.py, "def _future_actions_enabled(self):" reads from line 229:
==========
_query_queue_future = rhnSQL.Statement("""
select sa.action_id id, a.version,
sa.remaining_tries, at.label method,
at.unlocked_only,
a.prerequisite
from rhnServerAction sa,
rhnAction a,
rhnActionType at
where sa.server_id = :server_id
and sa.action_id = a.id
and a.action_type = at.id
and sa.status in (0, 1) -- Queued or picked up
and a.earliest_action <= current_timestamp + numtodsinterval(:time_window * 3600, 'second') -- Check earliest_action
and at.label in ('packages.update', 'errata.update',
'packages.runTransaction', 'packages.fullUpdate')
order by a.earliest_action, a.prerequisite nulls first, a.id
""")
==========
I tried this query manually and it failed on "at" and "method". Both look like reserved words to me (my SQL editor agrees in this), and when I replace those with "atype" and "method1" the query works.
Of course this is not *the* solution, because my Python-fu isn't that great and I haven't looked where this "method" is being used. However, I do think that this needs to be fixed.
When I read about installing Spacewalk[1] I found that I can use PostgreSQL > 8.4, so I thought 9.6 should be fine. Now I'm not so sure anymore. Do I need to downgrade PostgreSQL for this to work, and if yes, to which version?
[1] https://fedorahosted.org/spacewalk/wiki/PostgreSQLServerSetup
--
Thanks,
Rob
_______________________________________________
Spacewalk-list mailing list
Spacewalk-list at redhat.com
https://www.redhat.com/mailman/listinfo/spacewalk-list
More information about the Spacewalk-list
mailing list