Forum OpenACS Q&A: Installing Packages in new OACS 4.5

After getting to the OpenACS screen for the first time finally, I went ahead and pushed the button. The datamodel loaded smoothly, although I had to run it a second time to get to the next "Next" button.

Loading the packages results in this displayed onscreen:

OpenACS Installation: Installing OpenACS Core Services


  • Completing Install sequence.

    CREATE
    CREATE
    CREATE
     id 
    ----
    (0 rows)
    UPDATE 0
    DROP
    DROP
    DROP
    There is no closing HTML ever created, and it never gets me to the next step, Create Administrator. The same displays again when I hit reload, while the console displays this:
     NOTICE:  Adding missing FROM-clause entry for table "acs_object_id_seq"
    NOTICE:  identifier "acs_object__initialize_attributes" will be truncated to "acs_object__initialize_attribut"
    NOTICE:  identifier "apm_package__initialize_parameters" will be truncated to "apm_package__initialize_paramet"
    NOTICE:  identifier "acs_permission__grant_permission" will be truncated to "acs_permission__grant_permissio"
    ERROR:  apm_packages_package_key_fk referential integrity violation - key referenced from apm_packages not found in apm_package_types
    NOTICE:  identifier "acs_permission__grant_permission" will be truncated to "acs_permission__grant_permissio"
    ERROR:  ExecAppend: Fail to add null value in not null attribute object_id
    NOTICE:  Error occurred while executing PL/pgSQL function acs_permission__grant_permissio
    NOTICE:  line 17 at SQL statement

    Now what have I done?

    Van

  • Collapse
    Posted by Robert Locke on
    Hi Van,

    I think installation can be very sensitive to reloading pages and the like. You have to be very patient while going through the initial screens, some of them can take a while to load.

    Since this is a new install, rather than trying to debug the problem, you don't have much to lose by recreating the database as follows:

    dropdb
    createdb
    createlang pgplsql

    Then start the installation sequence again, waiting patiently for the pages to load. Also, double check that there weren't any additional instructions to be followed on the first screen, which is sometimes the case if certain things haven't been properly configured.

    Good luck!

    Collapse
    Posted by Robert Locke on
    Yikes... I meant:

    dropdb <dbname>
    createdb <dbname>
    createlang pgplsql <dbname>

    Collapse
    Posted by G. Armour Van Horn on

    Hope springs eternal, but that sequence doesn't get me home. In fact, I reinstalled AOLServer (make clean, then repeated the install), double checked all users, .bash_profiles, repeated the PostgreSQL install (still 7.2), and got to the AOLServer page. The datamodel loaded, although I didn't get the "Next" button until I went back to the root and hit Next again, at which point I had the Next button to install the packages.

    However, again it only went through one screen's worth and stopped. I backed up and tried it again, this time I went to lunch but it only ended up with a dozen lines or so.

    If I go to http://209.166.88.49:8000/doc/ the right column has some code in it rather than a list of packages. Everything on the left side works except for the "API Browser for this ACS Instance." That goes back to the startup screen and hitting Next tries to install packages again.

    In the wimls-error.log I see a number of errors that look like

    The error: Invalid database type "oracle"
    (along with one that said "postgresql")

    The first instance of the word fail (searching the last 2000 lines of the wimls-error.log) is right at the end:

    [06/Mar/2002:13:11:25][17637.5126][-conn2-] Error: Error sourcing /web/wimls/packages/acs-bootstrap-installer/in$
    psql:acs-install.sql:247: ERROR:  apm_packages_package_key_fk referential integrity violation - key referenced f$
    psql:acs-install.sql:254: ERROR:  ExecAppend: Fail to add null value in not null attribute object_id
    
        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 "  <p><li> Completing Install sequence.<p>
        <blockquote><pre>"
        cd [file join [acs_root_dir] packages..."
        (file "/web/wimls/packages/acs-bootstrap-installer/installer/packages-install.tcl" line 34)
        invoked from within
    "source $__file "
    I put the last 2000 lines of the error log up at http://www.domainvanhorn.com/dropbox/NWMLS/wimlstail.txt in case anyone can make any sense out of it.

    It feels like I'm getting close, but maybe I'm just getting closer - as in six inches closer but still five miles away?

    Van

    Collapse
    Posted by Don Baccus on
    Something's getting messed up, certainly.  The "Invalid database type" errors you're getting are because of an earlier failure, further back than the 2000 line dump on your site (boy, that log gets big if you enable debug level logging!).

    So the table of valid database types hasn't been initialized.  This table isn't initialized until all of the datamodel create files in acs-kernel have completed.

    Which is an indication that you gave up to soon?  Or that something broke earlier and you didn't notice the error message in your browser?

    Here's the flow:

    1. The installer detects which database you've configured in AOLserver (PG, Oracle).

    2. Some basic sanity checks are run to make sure you've got a reasonably recent version of the DB.

    3. If so, you get the welcome screen that tells you everything's hunky-dory with the first "Next" button inviting you to load the datamodel.

    4. All of the datamodel create files in packages/acs-kernel/sql/postgresql are run.

    5. Then the database types table is populated (can't do it earlier as it is created by step #4).

    6. Then the package .info files are read - this is where it's failing in the log you put up at the website.  This step fails because step #5 never ran because step #4 failed or stalled or otherwise screwed up.

    7. Then you're presented the "Next" button to continue onwards.

    So ... the magic question is "why did step #4 fail/hang/etc?"  It only takes a few minutes to load the kernel datamodel so I assume you didn't just give up too soon.

    What you should do, perhaps, is recycle the database again (drop/create), fire up, hit the first "next" button.

    Then, when it stalls, don't hit "back" and try again.  Rather, kill AOLserver, snarf the log, and post it to your website.

    Then we can take a look and perhaps can figure out why step #4 failed.

    Unfortunately PSQL doesn't report errors in an exec-friendly way so we detect them by trying to tease them out from the log file that's being generated.  Not very successfully in some cases.

    Collapse
    Posted by G. Armour Van Horn on
    OK, here's the slice where the Installing Kernel Data Model fails, I'll go put a larger chunk on the website (same URL as above) in a few minutes in case this isn't enough.
    [06/Mar/2002:17:15:16][18089.4101][-conn1-] Debug:  acs_object__new
    
    [06/Mar/2002:17:15:16][18089.4101][-conn1-] Debug: -----------------
    
    [06/Mar/2002:17:15:16][18089.4101][-conn1-] Debug:               -3
    
    [06/Mar/2002:17:15:16][18089.4101][-conn1-] Debug: (1 row)
    
    [06/Mar/2002:17:15:16][18089.4101][-conn1-] Debug: INSERT 23790 1
    
    [06/Mar/2002:17:15:16][18089.4101][-conn1-] Error: Error sourcing /web/wimls/packages/acs-bootstrap-installer/installer/install-data-model.tcl:
    psql:postgresql.sql:538: ERROR:  No such attribute or function 'oid'
    psql:acs-create.sql:312: ERROR:  Cannot insert a duplicate key into unique index group_rels_group_rel_id_pk
    
        invoked from within
    "db_source_sql_file -callback apm_ns_write_callback "acs-kernel-create.sql""
        (file "/web/wimls/packages/acs-bootstrap-installer/installer/install-data-model.tcl" line 31)
        invoked from within
    "source $__file "
    Van
    Collapse
    Posted by G. Armour Van Horn on
    By the way, Don, I did not specify the debug level that is generating these monster error logs. Should the beta be configured for a less aggressive posture and allow the user to jack the logging up if needed?

    Van

    Collapse
    Posted by Vinod Kurup on
    Hi Van,

    This problem was fixed a while ago - see this thread for details.

    You could try loading the latest code from CVS or using a recent nightly tarball.

    Right now the docs point to downloading the alpha2 tarball, but we'll adjust this to point to the beta tarball when it's released.

    Collapse
    Posted by Vinod Kurup on
    By the way, Don, I did not specify the debug level that is generating these monster error logs

    --

    Yeah, right now the openacs4.tcl file in the install guide is set with all debugging turned on. But, I added a variable near the top called 'debug' that you can set to false to turn off all configurable debugging.

    Collapse
    10: Breaking the rules... (response to 1)
    Posted by G. Armour Van Horn on
    I know, I know, we're specifically enjoined from discussing the nightly tarballs on the bboard, but I'm too damned happy to care! Using nightly-2002-03-06.tar.gz and the things I learned from several of you while fighting through the Alpha2 tarball, I now have a bewildering page displayed on my server that asserts the following:

    You have successfully installed the OpenACS Community System version development.

    And it's almost true, the daemontools setup must be screwed up as it doesn't start automatically, but I can live with that for now.

    Hoo boy!

    Van

    Collapse
    Posted by Don Baccus on
    Well ... yeah, but our telling folks to not bitch about the nightly tarballs predated our slothful slog towards beta :(

    Much has improved since then, especially in PG land, and of course when the alpha2 tarball was released PG 7.2 didn't exist unless you were a CVS early achiever willing to deal with db-crashing experimental behavior.

    In the upcoming months I hope we can see all this get more organized.

    Collapse
    Posted by Tom Jackson on

    I have some daemontools help for aolserver at: http://zmbh.com/

    Collapse
    Posted by G. Armour Van Horn on
    For purposes of the documentation, I would like to say that Don's Step 1 to Step 7 sequence above was incredibly helpful to me, and I would like to suggest that some form of that be included in the final docs.

    Page: https://openacs.org/doc/openacs-4/openacs.html
    Section: Using the OpenACS Installer

    Van

    Collapse
    Posted by Polawat Ouilapan on
    For those who keeps getting this same error, this link may be helpful.