Forum OpenACS Q&A: XML support for OpenNSD is problematic

Hi!
I have this error "XML support for OpenNSD is problematic:" while
installing openacs4, with aolserver "aolserver-3.2-
4_ad12_nsxml.i386.rpm" and postgresql 7.1.3, in RedHat 7.1.
After this message, in the "OpenACS Installation: Welcome" page, it
hangs in the "OpenACS Installation: Installing OpenACS Core Services"
page.
I read that this is a bug (#1123), but I also read the patch is
refused by Don Baccus. I reinstalled the ns_xml module (What I did
was update the libraries "libxml2-2.4.3-1.i386.rpm", "libxml2-devel-
2.4.3-1.i386.rpm", "libxslt-1.0.3-1.i386.rpm" and "libxslt-devel-
1.0.3-1.i386.rpm", wich I found were the latest versions).
What I'm doing wrong? Does anyone has an idea of what is happening?
This is how you update the ns_xml module, or I'm totally wrong? Are
these not the latest versions?
Any help would be highly apprecciated. Thanks!!!!!!
(happy holidays everyone!)
Collapse
Posted by Don Baccus on
I didn't really refuse the patch, it wasn't submitted in the "one right way" that the current SDM requires for automatic application.

So I had to cut and paste the patch and apply it separately.  More recently when I do this I do accept the patch and just ignore the errors, but back then I wasn't sure this was safe to do so would refuse patches I apply manually.

(Yes, we should fix the SDM, but that's another story).

As far as the "hanging" goes, how long did you wait?  Did you get as far as the "loading .xml files this will take a few minutes" message?

If so, did you wait a few minutes?  It really *does* take a few minutes and will appear to hang (Joel's patch was to add the warning to the installer so people would know to wait).

Collapse
Posted by Daryl Biberdorf on

Continuing this thread, I'm receiving a similar error message, although my system isn't hanging:

   XML support for OpenNSD is problematic:

   Your ns_xml doesn't support XML comments correctly. This issue
   is currently handled smoothly by some internal work-arounds, but you
   might want to upgrade ns_xml to the latest version ASAP.

   Your ns_xml doesn't correctly return the root XML node. This issue is
   currently handled smoothly by some internal work-arounds, but you
   might want to upgrade ns_xml to the latest version ASAP.

I'm using the nsxml module from the AOLserver site, ftp://ftp.aolserver.com/modules/.

I grabbed RPMs for libxml2 from www.xmlsoft.org.

basil:/web/openacs-4/# rpm -qa | grep libxml
libxml-1.8.10-32
libxml2-2.4.12-1
libxml2-devel-2.4.12-1                                                            

So...what version is needed? My AOLserver machine runs SuSE 7.1 for Intel.

Collapse
Posted by Vinod Kurup on
Hi Daryl, The most current version (1.4) of ns_xml is available at http://acs-misc.sourceforge.net/nsxml.html You may need to futz with the Makefile to get it to compile. I set my MODLIBS and CFLAGS as follows:
MODLIBS = $(shell xml2-config --libs) CFLAGS = $(shell xml2-config --cflags)
Collapse
Posted by Daryl Biberdorf on
Thanks, Vinod. It could be worth pointing out the special location in text in the OpenACS 4 install guide. (The URL to the sourceforge site is part of a link, so it doesn't appear when you print the document. I make notes when I do a big install, like OpenACS, for future reference. That makes having a printed copy of the notes handy.)
Collapse
Posted by Don Baccus on
Daryl, as the message, we're currently working around the fact that the older libxml doesn't correctly return the root node.  We suggest people upgrade because we might not work around the problem in the future.  But  at the moment things do work OK with the old library.

If we add code in the future that absolutely requires upgrading we'll change the error message and force you to upgrade, rather than just suggest you upgrade.

Collapse
Posted by Daryl Biberdorf on

My only thinking is that it would be helpful for the message to mention the minimum working version, or where to get it. I'm sure Vinod's solution will be perfect once I try it out tonight.

Collapse
Posted by Don Baccus on
You mean maybe it could  mention that you need lib_xml2 rather than just  wave its hands?  Good point ...

It can also be more clear on the fact that you don't really need to upgrade in order to successfully install.

Collapse
Posted by Daryl Biberdorf on
That, and to say which version of nsxml (minimum version) needed and where to get it (from acs-misc.sourceforge.net, not aolserver.com).
Collapse
Posted by Lorna Sanchez M. on
Hello!
Thanks for the help!
Answering Don's first message, I waited for 15 minutes (really), and nothing happened! And it is not that the installation "hangs", it stops. The "next" button that should appear never appears! And you may be right, maybe the XML module isn't the problem; in the log file, I tracked the problem down to /web/openacs4/packages/acs-kernel/sql/postgresql/acs-install.sql,that have trouble with a function, named acs__magic_object_id. The error in the log file is this:
[30/Dec/2001:17:18:58][27407.14341][-conn10-] Error: Error sourcing /web/openacs4/packages/acs-bootstrap-
installer/installer/packages-install.tcl:
psql:acs-install.sql:247: ERROR:  Function 'acs__magic_object_id(unknown)' does
not exist
        Unable to identify a function that satisfies the given argument types
        You may need to add explicit typecasts
psql:acs-install.sql:254: ERROR:  Function 'acs__magic_object_id(unknown)' does not exist
        Unable to identify a function that satisfies the given argument types
        You may need to add explicit typecasts

    invoked from within
"db_source_sql_file -callback apm_ns_write_callback acs-install.sql"
    invoked from within
"if { ![ad_acs_admin_node] } {
    ns_write "  Completing Install sequence.

"
    cd [file join [acs_root_dir] packages..."
    (file "/web/openacs4/packages/acs-bootstrap-
installer/installer/packages-ins
tall.tcl" line 34)
    invoked from within
"source $__file "

acs-install.sql is invoked from whithin /web/openacs4/packages/acs-bootstrap/installer/packeges-install.tcl.
Is this getting ugly or what?
Thanks for your help! (I think I really need it now!)
Collapse
Posted by Lorna Sanchez M. on
Can this be an error of plpgsql not understanding what acs__magic_object_id means, or I'm totally wrong?<br>
How can I test plpgsql?<br>
When OpenACS4 is going up, in the log file I have these lines, that are the only lines that mention plpgsql:<br>
<pre>
[01/Jan/2002:23:24:48][1768.1024][-main-] Notice: Querying 'create
function __test__() returns integer as 'begin
end;' language 'plpgsql';'
[01/Jan/2002:23:24:48][1768.1024][-main-] Notice: dbinit: sql
(localhost::openacs4): 'create function __test__()
returns integer as 'begin end;' language 'plpgsql''</pre>
<br>
That means that plpgsql is OK? Or not always? What do u think?
Collapse
Posted by Don Baccus on
Yes, that test function call verifies that PL/pgSQL has been installed and is working.  If it fails that test it tells you to do a "createlang' on your database.

I'm somewhat stymied by your problem.  How did you get your OpenACS 4 sources?  One of the nightly tarballs?  The alpha2 tarball?  From CVS directly?

Collapse
Posted by Lorna Sanchez M. on
Hello!
First it was a .tar.gz, and then a friend advised the CVS. The actual installation is CVS.
Collapse
Posted by Michael Feldstein on
While we're on the topic of OpenNSD, could somebody please
give the community a brief update on the OpenNSD/AOLServer
schism? Am I correct in understanding that the split is largely
healed, and that AOLServer is the version that will continue to be
the basis of OpenACS in the future?
Collapse
Posted by Janine Ohmer on
The OpenNSD project is a bit dormant right now.  In part we're waiting to see what AOLserver 4's final form will be, but mostly those of us involved are just too busy to do much with it right now.

I expect that every effort will be made not to do a fork, but whether we can manage that remains to be seen.