Forum OpenACS Q&A: macosx and no fullquery

Collapse
Posted by bill kellerman on
Really...  when I get this running I promise I'll actually start helping...

macosx10.2.6 postgres3.4 aolserver4beta10
nsxml1-5

I've installed openacs4.6.3final.  Basic functionality works, but I get errors through various loaded packages about "No fullquery for dbqd.xxxxxx..."  For example, after mounting forums, I get the following error:

---

No fullquery for dbqd.forums.www.index.select_forums and default SQL empty - query for statement missing
    while executing
"error "No fullquery for $statement_name and default SQL empty - query for statement missing""
    (procedure "db_qd_replace_sql" line 10)
    invoked from within
"db_qd_replace_sql $statement_name $pre_sql"
    (procedure "db_exec" line 5)
    invoked from within
"db_exec select $db $full_statement_name $sql"
    invoked from within
"set selection [db_exec select $db $full_statement_name $sql]"
    ("uplevel" body line 2)
    invoked from within
"uplevel 1 $code_block "
    invoked from within
"db_with_handle db {
    set selection [db_exec select $db $full_statement_name $sql]
        set local_counter 0

    while { [db_getrow $db $selection] } {..."
    (procedure "db_multirow" line 40)
    invoked from within
"db_multirow forums select_forums {}"
    ("uplevel" body line 27)
    invoked from within
"uplevel {
          ad_page_contract {

    top level list of forums

    @author Ben Adida (mailto:ben@openforce.net)
    @creation-date 2002-05-24
    @cvs-id..."
    (procedure "code::tcl::/usr/local/aolserver/web/openacs/packages/forums/..." line 2)
    invoked from within
"code::tcl::$__adp_stub"
    invoked from within
"if { [file exists $__adp_stub.tcl] } {

      # ensure that data source preparation procedure exists and is up-to-date
      adp_init tcl $__adp_stub
..."
    ("uplevel" body line 3)
    invoked from within
"uplevel {

    if { [file exists $__adp_stub.tcl] } {

      # ensure that data source preparation procedure exists and is up-to-date
      adp_init t..."
    (procedure "adp_prepare" line 2)
    invoked from within
"adp_prepare "
    (procedure "template::adp_parse" line 30)
    invoked from within
"template::adp_parse [file root [ad_conn file]] {}"
    (procedure "adp_parse_ad_conn_file" line 7)
    invoked from within
"$handler"
    ("uplevel" body line 2)
    invoked from within
"uplevel $code"
    invoked from within
"ad_try {
    $handler
      } ad_script_abort val {
    # do nothing
      }"
    invoked from within
"rp_serve_concrete_file [ad_conn file]"
    (procedure "rp_serve_abstract_file" line 60)
    invoked from within
"rp_serve_abstract_file "$root/$path""
    ("uplevel" body line 2)
    invoked from within
"uplevel $code"
    invoked from within
"ad_try {
    rp_serve_abstract_file "$root/$path"
    set tcl_url2file([ad_conn url]) [ad_conn file]
    set tcl_url2path_info([ad_conn url]) [ad_conn path_inf..."

---

The only thing I could find on this was a post by Roberto Mello about a namespace bug, but that appears to be patched.

Again, I appreciate any help.  If I can give more information, let me know.

Collapse
Posted by Jade Rubick on
I'm not totally sure that Aolserver 4 will work yet.

You might need to go back to Aolserver 3.3ad+13.

That's what I'd try at least.

Aolserver 4 support is coming, but I don't think it's fully tested yet?

Collapse
Posted by bill kellerman on
you mean aolserver 4 and openacs may not work on os x?

i've installed the same setup on linux and freebsd without any problems.  just os x is giving me all these headaches...  i've read other people have gotten it to work, so i don't know if it's something i'm doing wrong specifically or what.

i'll try the older version though, just to see if it works.

by the way -- the docs on your site are very helpful.

Collapse
Posted by Vinod Kurup on
I just installed OpenACS on AOLServer4 on my Mac, but I used OpenACS HEAD and therefore tDOM, not nsxml.

Did you restart the server after installing forums?

Collapse
Posted by Jade Rubick on
I'm not totally confident about my comments on Aolserver. Perhaps you can ask on IRC?
Collapse
Posted by bill kellerman on
It's not just the forums.

I chunked the installation and started over, recompiling everything to make sure there weren't any error messages I missed.  Still didn't notice anything, but when I get to the point of starting aolserver for the first time to begin the bootstrap process for openacs, the "no fullquery" message was in the log on startup.

The portion of the log where it occurs:

[17/Sep/2003:14:51:51][8701.2684358124][-main-] Notice: Loading packages/acs-tcl/tcl/xml-2-procs.tcl...
[17/Sep/2003:14:51:52][8701.2684358124][-main-] Debug: NO FULLQUERY FOR dbqd.acs-tcl.tcl.00-database-procs-postgresql.db_table_exists.table_count --> using default SQL
[17/Sep/2003:14:51:52][8701.2684358124][-main-] Notice: Querying '
        select count(*) from pg_class
        where relname = lower('apm_packages') and
            relname !~ '^pg_' and relkind = 'r';'

No other wierd messages that I haven't seen on working installations.

From that point, openacs will install through the web interface.  Once I install and enable packages, I get the other errors when going to their url's (for example, forums).

I'm trying the install with aolserver3.3ad13 just to see if I can tell a difference and what might be causing the problem.

Otherwise, I'll try opeancs head.  Thanks for the link.

Collapse
Posted by bill kellerman on
oh.  for aolserver 4, there is another entry in the startup log:

17/Sep/2003:14:51:52][8701.2684358124][-main-] Debug: QD=Postload files to load: /usr/local/aolserver/web/openacs/www/index-oracle.xql /usr/local/aolserver/web/openacs/www/index-postgresql.xql /usr/local/aolserver/web/openacs/www/index.xql
[17/Sep/2003:14:51:52][8701.2684358124][-main-] Warning: Query dbqd.www.index-oracle.site_nodes has rdbms info oracle 8.1.6 which is not compatible with system rdbms postgresql 7.3

i don't know if this has anything to do with the problem?  because i don't really know what this means.

Collapse
Posted by Jade Rubick on
Make sure in your config.tcl you've specified you're using Postgres. For some reason, it seems to think you're using Oracle.
Collapse
Posted by bill kellerman on
yup.
Collapse
Posted by Vinod Kurup on
actually, I get the complaint about the oracle/pg incompatibility as well, but it doesn't seem to break anything. I haven't investigated why it happens.

When I see the 'default SQL empty' error message, I think of a couple things:

  1. Did I restart the server after installing any new packages?
  2. Is the XQL file actually there? e.g. forums/www/index-postgresql.xql
  3. Does it contain the query in question? e.g. select_forums
  4. Is the XQL malformed in any way (missing brackets,etc)? Shouldn't be the case since you haven't edited anything.
  5. Is the XML parsing screwed up? Did ns_xml load properly, without errors?
If none of that is helpful, you might next try posting a log of your OpenACS startup somewhere so we could take a look.
Collapse
Posted by Randy O'Meara on
Derek,

I don't believe that the "...NO FULLQUERY ...db_table_exists.table_count..." message is an error. If I recall from perusal of my (HEAD based) error log over the weekend, there is no .xql file for that tcl page. I got the impression that it was intentional (no separate xql file, that is). It simply uses the sql defined inline. BTW, the compatibility message has been there for some time. I haven't investigated either.

If you're not seeing other problems related to the QD (query dispatcher) during the installation phase, I believe you can rule that out as the root cause of your problems.

If I were in your position, I would drop back to the supported version of aolserver and oacs, reinstall, and then pick *a* package (forums would do), and trace the steps of a single operation on that package with debug logging enabled.

Randy

Collapse
Posted by Barry Books on
One other problem I've had on the mac is with vacuum. I had to run ulimit -n 1024 before starting postgres other wise I run out of file descriptors.
Collapse
Posted by bill kellerman on
Okay -- concerning oacs463...

1. I did restart the server.
2. 3. 4. Shouldn't be the any of these things as the same installation works on other os's. I'm not modifying any code.
5. I thought maybe nsxml was broken, but I ran this test from this page on fifthgate.com and everything seemed to be working. No error log entries on nsxml.

I'm going to see how much debugging I can do and then I will post the logs.

Thanks for the help everyone.
Collapse
Posted by Andrew Piskorski on
I found back in Dec. 2002 that on my Debian 3.0 (Woody) box, compiling nsxml with any optimization at all made it fail. "-g -O0", and it worked ok. That was with AOLserver 3.3+ad13. My failure mode looked kind of different than yours, so I don't think you have the same problem, espeically since you seem pretty sure that nsxml is working ok. But I figured it's worth mentioning...

Since Vinod says OpenACS head is known to work on OS X, I'd probably try that and see if you get any different results... If yes, then you know the problem your seeing is either in your OpenACS code or in nsxml. If no, then you know something else on your system is broken.

Collapse
Posted by bill kellerman on
hmm...

i just tried everything one more time.  the only thing i did differently was download the newest versions of libxml2 (2.5.11) and libxslt (1.0.33) from ftp://xmlsoft.org to recompile nsxml-1.5.  after i proved it worked with the script from fifthgate, reinstalled.

everything now seems to be working as it does on any of my  installations.  i've been able to enable and mount packages with no problem.  i still get the "no fullquery" all over the logs, but i guess those are normal as it doesn't seem to have an effect.

i guess either i botched the original libxml/xslt/nsxml stuff, or there were version problems.  on a related note, i'm not sure the /tests/ files in the nsxml source work for testing.  the script above did.

thanks to everyone for your time and help.

i'm so happy that it's finally up and running, i'm going to let it sit for a while and stare at it.  but soon i'll go through the process again, write everything down, and make sure there is nothing to add to the various install on xxx platform docs.