3.4.4 Matrix Installer Errors

We are experiencing unforseen issues with the installation of the application on a virtual host.


Also would like to know if installation with installer requires access to the root.



On step 13 from 15 we got everytime this error message:



—[quote]------------------------------------------------------------------

MySource Warning

Error text not found for this code and locale [SYS0209]

array (

0 => 'public_user',

)





PHP Warning

Cannot modify header information - headers already sent by (output started at [SYSTEM_ROOT]/core/include/general.inc:174)





MySource Error

Error text not found for this code and locale [SYS0270] array ( 0 => 'DB Error: unknown error

– creates a function that grants access to the secondary user. – This function should be called after all the tables in the system – have been created CREATE OR REPLACE FUNCTION sq_grant_access(character varying) RETURNS TEXT AS \' DECLARE user_name ALIAS FOR $1; table RECORD; tablename TEXT; BEGIN FOR table IN SELECT c.relname AS name FROM pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace WHERE c.relkind IN (\'\'r\'\',\'\'v\'\',\'\'S\'\',\'\'\'\') AND n.nspname NOT IN (\'\'pg_catalog\'\', \'\'pg_toast\'\') AND pg_catalog.pg_table_is_visible(c.oid) LOOP tablename=table.name; RAISE NOTICE \'\'tablename is %\'\', tablename; EXECUTE \'\'GRANT ALL ON \'\' || quote_ident(tablename) || \'\' TO \'\' || quote_ident(user_name::text); END LOOP; RETURN \'\'access granted.\'\'; END; \' LANGUAGE plpgsql; [nativecode=ERROR:

—[quote]------------------------------------------------------------------



and we still cannot find a solution for it.



We are looking forward to your reply.

You're trying to install v3.6 with the v3.4 web-based installer. You can only install v3.6 with the CLI scripts.

[quote]You’re trying to install v3.6 with the v3.4 web-based installer. You can only install v3.6 with the CLI scripts.
[right][post=“7417”]<{POST_SNAPBACK}>[/post][/right][/quote]





This may be true since my host provider asked if they could try the install for me… they may have changed to v3.6.



I was trying the install with v3.4 when I handed it over to them and I could not get past step 10 - Could not connect to the database.



Thank you.

Kevin Spriggs

Dear Matrix Gurus and Squiz,


Well, we managed to get a little further in the installation using version 3.4.4 of the base files and the web-installer. On step 14 i got the following error:



File: [SYSTEM_ROOT]/core/include/assertions.inc Line: 479

Message: [ASSERT EXCEPTION] DB Error: syntax error

CREATE INDEX sq_ast_attr_val_concat ON sq_ast_attr_val ((assetid || '~' || attrid)) [nativecode=ERROR: parser: parse error at or near "(" at character 57] (LINE 263 IN [SYSTEM_ROOT]/core/lib/db_install/db_install.inc)



Here is the backtrace:



0 => array (

"function" => "sq_error_handler",

"args" => array (

0 => 256,

1 => "[ASSERT EXCEPTION] DB Error: syntax error<br/>CREATE INDEX sq_ast_attr_val_concat ON sq_ast_attr_val ((assetid || \'~\' || attrid)) [nativecode=ERROR: parser: parse error at or near \"(\" at character 57] (LINE 263 IN [SYSTEM_ROOT]/core/lib/db_install/db_install.inc)",

2 => "[SYSTEM_ROOT]/core/include/assertions.inc",

3 => 479,

4 => array (

[Max Depth Reached]

)

)

),

1 => array (

"file" => "[SYSTEM_ROOT]/core/include/assertions.inc",

"line" => 479,

"function" => "trigger_error",

"args" => array (

0 => "[ASSERT EXCEPTION] DB Error: syntax error<br/>CREATE INDEX sq_ast_attr_val_concat ON sq_ast_attr_val ((assetid || \'~\' || attrid)) [nativecode=ERROR: parser: parse error at or near \"(\" at character 57] (LINE 263 IN [SYSTEM_ROOT]/core/lib/db_install/db_install.inc)",

1 => 256

)

),

2 => array (

"file" => "[SYSTEM_ROOT]/core/include/assertions.inc",

"line" => 411,

"function" => "trigger_exception",

"args" => array (

0 => "DB Error: syntax error<br/>CREATE INDEX sq_ast_attr_val_concat ON sq_ast_attr_val ((assetid || \'~\' || attrid)) [nativecode=ERROR: parser: parse error at or near \"(\" at character 57]",

1 => ,

2 => 1

)

),

3 => array (

"file" => "[SYSTEM_ROOT]/core/lib/db_install/db_install.inc",

"line" => 263,

"function" => "assert_valid_db_result",

"args" => array (

0 => new db_error Object (

[Max Depth Reached]

)

)

),

4 => array (

"file" => "[SYSTEM_ROOT]/install/step_02.php",

"line" => 75,

"function" => "db_install",

"args" => array (

0 => "[SYSTEM_ROOT]/core/assets/tables.xml"

)

),

5 => array (

"file" => "[SYSTEM_ROOT].installer/steps/databasecreate.inc",

"line" => 112,

"args" => array (

0 => "[SYSTEM_ROOT]/install/step_02.php"

),

"function" => "require_once"

),

6 => array (

"file" => "[SYSTEM_ROOT].installer/step.inc",

"line" => 182,

"function" => "processaction",

"class" => "dbcreateaction",

"type" => "->",

"args" => array (

[Empty]

)

),

7 => array (

"file" => "[SYSTEM_ROOT].installer/wizard.inc",

"line" => 338,

"function" => "process",

"class" => "databasecreate",

"type" => "->",

"args" => array (

[Empty]

)

),

8 => array (

"file" => "[SYSTEM_ROOT].installer/wizard.inc",

"line" => 309,

"function" => "_processstep",

"class" => "installwizard",

"type" => "->",

"args" => array (

[Empty]

)

),

9 => array (

"file" => "[SYSTEM_ROOT].installer/wizard.inc",

"line" => 133,

"function" => "_processpost",

"class" => "installwizard",

"type" => "->",

"args" => array (

[Empty]

)

),

10 => array (

"file" => "[SYSTEM_ROOT].installer/index.php",

"line" => 39,

"function" => "run",

"class" => "installwizard",

"type" => "->",

"args" => array (

[Empty]

)

)



I am not into Postgre proramming, so debugging this is beyond the scope of my possibilities.



Any assistance would be appreciated.



Thanks,

Kevin

You're trying to install on PostgreSQL v7.3. The indexes we use are designed for 7.4 and higher. There are several posts here in the Installation forum on the modification you need to make to disable the one incompatible index.

I am posting what I believe to be the posts referenced above, so that the next poor soul that needs this info, will not have to go through what I did to find them.


Here is what I think is the instructions for this…

http://forums.matrix.squiz.net/index.php?showtopic=763&hl=



Additional insight at…

http://forums.matrix.squiz.net/index.php?showtopic=763&hl=

http://forums.matrix.squiz.net/index.php?showtopic=763&hl=





DO NOT FORGET…

"Once you’ve commented it out, you’ll have to reset your installation by dropping and recreating the database (don’t forget to add PL/pgSQL!) and by erasing the file system and unpacking it again. "



I will return to post the results of these changes.



kspriggs

Now, that those three links came handy, another error poped up after successfully fixing the asserts file and the database. Here is the output:


— Start —>



MySource Warning

Error text not found for this code and locale [SYS0209]

array (

0 => ‘public_user’,

)





PHP Warning

Cannot modify header information - headers already sent by (output started at [SYSTEM_ROOT]/core/include/general.inc:174)





MySource Warning

Error text not found for this code and locale [SYS0267]

array (

0 => ‘System Config’,

)





Installing package_manager_core:

0 => page

Fatal error: Call to undefined function: copy_file() in /home/glenrose/public_html/matrix/core/include/asset_management.inc on line 189



<— End -----



I found these posts but I’m not sure they apply directly:



http://forums.matrix.squiz.net/index.php?showtopic=1408&hl=



http://forums.matrix.squiz.net/index.php?showtopic=1408&hl=



http://forums.matrix.squiz.net/index.php?showtopic=1408&hl=





Will return to post progress and results. Any insights you have would be appreciated. I can almost taste success…



kspriggs

This time the installation went through … but (of course) another error came up at:


http://www.myDomain.com/matrix/core/web/index.php



The error is as follows:



"MySource Notice

URL “www.myDomain.com/matrix/core/web/index.php” not found "



I am researching the problem in the forum. The only thing I have found so far is that it could be the aliases.



Not exactly the same but…



See http://www.myDomain.com/matrix/core/web/index.php



and



http://www.myDomain.com/matrix/core/web/index.php





Feel free to post if you know what is going on here. I will post any resolution that I find.



kspriggs

Have you added the appropriate aliases to Apache’s httpd.conf and restarted Apache? Also, you don’t need to reference the core/web/index.php location, the aliases do this for you.


You should just visit http://www.yourdomain.com/_admin and you should get the Administration Interface login dialog box.

Well… we gave it a go anyway.


We have reached the end of our Virtual Hosts patience and will not be able to install the script.



Their last communication to me was…

[quote]I've managed to install it, however the rewrite rule provided doesn't seem to be working. I have set the aliases in the httpd.conf, but this is not working either. The error which we are getting is:



either 404 not found at index.php/ or Internal Server Error. Both are not giving any more information in the error_log file.



Unfortunately, I have no other Ideas and give up :slight_smile: I'm sorry.[/quote]





I was convinced from the documentation and the flash that this script met all our expectations for a cms. We are going to put a server together to try and install locally, but this script will do me no good commercially unless I can install it on a remote server.



I envy all who have had success with this script. I only wish I could join you!



Thanks Squiz for your assistance. I genuinely appreciate it.



kspriggs

[quote]We have reached the end of our Virtual Hosts patience and will not be able to install the script.
[right][post=“7490”]<{POST_SNAPBACK}>[/post][/right][/quote]





The fix for this is to set: AcceptPathInfo On in httpd.conf. If your virtual host is running on RHEL3 (or a clone), this is disabled by default and prevents Apache from sending the Path information to PHP correctly.



Alternatively, you can change the last Alias line to this:


    AliasMatch "^(/.*)?$" "/var/www/matrix/core/web/index.php"

Hi!
Im trying to install 3.4.4 with the webinstaller.

Im using winXP, apache 1.3, php 4.3.11 and postgres 8.1.



I’ve installed matrix on local machine, e.g. localhost.

The webinstaller completes with no warning, and I have added the recommended alias, and restartet apache.



The problem is I cant reach the index page, or the /_admin.

If I try http://localhost/__data I reach the public folder containing assets, asset_types, why cant I reach admin?.



It seems like there is something wrong in the alias list.

The source is installed out of the webroot, as recommended.



Alias “/__data” “c:\matrix\data\public”

Alias “/__lib” “c:\matrix\core\lib”

Alias “/__fudge” “c:\matrix\fudge”

Alias “/” “c:\matrix\core\web\index.php\”



I’ve also tried the aliasmatch with no luck.

It seems that there is a problem with the trailing /

        Alias "/"              "c:\matrix\core\web\index.php\"
        
            Options Indexes FollowSymlinks
            AllowOverride None
            Order allow,deny
            Allow from all
        


When I look at the Apache error log, it seems like the trailing / is missing:
    [error] [client 127.0.0.1] Filename is not valid: c:/matrix/core/web/index.php"_admin


Doesn't anybody have an idea?

If I can't get this up and running, the company I work for will choose another system. :angry:

Try using the / character instead. :slight_smile:

Thanks!


What do you mean? Replacing the \ with / in the alias list?

It didn’t make any difference.



When I access the http://localhost/ I get the message


    MySource Notice  
    File: [SYSTEM_ROOT]\core\include\mysource.inc Line: 315 
    Message: URL "localhost" not found


When I try http://localhost/ I get "page not found".

:huh:

You don't need that <directory> block in httpd.conf. All I ever use is:


Alias "/__fudge" c:/path/to/matrix/fudge

Alias "/__data" c:/path/to/matrix/data/public

Alias "/__lib" c:/path/to/matrix/core/lib

Alias "/" c:/path/to/matrix/core/web/index.php/



If it still doesn't work, try adding "AcceptPathInfo On" into httpd.conf (just before the alias entries should be fine).



Also, you should be aware that Squiz do not support production installation of MySource Matrix on the Windows platform, though it should be fine for basic testing.

Thanks!


As I said, I was using Apache 1.3, and AcceptPathInfo is not supported until Apache 2.0.30.



I tried Apache 2.0.50, and now it works like as a charm. :slight_smile:

There is an alternative syntax for the Apache 1.3 family. You can replace that last Alias line with:

    AliasMatch "^(/.*)?$" "/path/to/matrix/core/web/index.php"


Just FYI. :)

[quote]The fix for this is to set: AcceptPathInfo On in httpd.conf. If your virtual host is running on RHEL3 (or a clone), this is disabled by default and prevents Apache from sending the Path information to PHP correctly.


Alternatively, you can change the last Alias line to this:


    AliasMatch "^(/.*)?$" "/var/www/matrix/core/web/index.php"

[right][post=“7494”]<{POST_SNAPBACK}>[/post][/right][/quote]





Dear Squiz - SUCCESSSSSS!!!!! Yay!!!! Thanks for putting up with me.



kspriggs

Yay! Glad to hear it. :slight_smile: