[Resolved] Install Error

10 years 5 months ago - 10 years 5 months ago #1 by supoeric
HI, I install "Issue Tracker 1.3.4" and got the following error.
"JInstaller: :Install: Error SQL DB function failed with error number 1356
View 'ngallery_myinno.oxs6m_it_project_view1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them SQL=CREATE VIEW `oxs6m_it_project_view2` AS SELECT id, GROUP_CONCAT(title ORDER BY level ASC SEPARATOR ' - ') AS title, access FROM `oxs6m_it_project_view1` GROUP BY id;
SQL =

CREATE VIEW `#__it_project_view2` AS
SELECT id, GROUP_CONCAT(title ORDER BY level ASC SEPARATOR ' - ') AS title, access
FROM `#__it_project_view1` GROUP BY id;

Component Install: SQL error file DB function failed with error number 1356
View 'ngallery_myinno.oxs6m_it_project_view1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them SQL=CREATE VIEW `oxs6m_it_project_view2` AS SELECT id, GROUP_CONCAT(title ORDER BY level ASC SEPARATOR ' - ') AS title, access FROM `oxs6m_it_project_view1` GROUP BY id;
SQL =

CREATE VIEW `#__it_project_view2` AS
SELECT id, GROUP_CONCAT(title ORDER BY level ASC SEPARATOR ' - ') AS title, access
FROM `#__it_project_view1` GROUP BY id;"

Please help to fix.

Best Regards
Eric Lin
The topic has been locked.
10 years 5 months ago #2 by geoffc
Replied by geoffc on topic Re: Install Error
The problem is caused by the database connection user (the user that Joomla use to connect to the database) not having the permissions to create view. I have not seen the message expressed in quite the way seen but that is probably database dependant.

Some hosting providers do not grant this privilege by default.

Some hosting providers do however permit users to grant the privilege through the control panel. Alternatively some grant the permissions upon request. It all depends upon the hosting provider.

Issue tracker requires the following privileges granted to the database connect user: CREATE VIEW, TRIGGER and CREATE ROUTINE.

Release 1.3.4 requires these privileges. I have recently created a change for this problem with release 1.4.2 for Joomla 3.1 which removes these dependancies but did not have time to back port the change to 1.3.4. This is schedules for 1.3.5 (or 1.5 which ever come first.)

If you feel confident to change the code I can tell you the appropriate lines to change to get it installed, but you will not have access to 1) the back up audit capture, 2) sample data and 3) the finder search plugin may not be as efficient. All three of these can reasonably safely be ignored/removed.

=================
If you can wait until mid week I may be able to spin off a 'special' installable zip for you with the changes.

Edited by geoffc - 12.10.2013 17:34

Regards
Geoff
The topic has been locked.
10 years 5 months ago #3 by supoeric
Replied by supoeric on topic Re: Install Error
HI, thx, Please update the install script, and let me try again. thx!
The topic has been locked.
10 years 5 months ago #4 by geoffc
Replied by geoffc on topic Re: Install Error
I have made the changes and will test them today. Unfortunately they are a little more extensive than just the install script, but I will email you separately a link where you may download it after my testing.

====================

Download details sent by email.

Edited by geoffc - 21.10.2013 16:46

Regards
Geoff
The topic has been locked.
10 years 5 months ago #5 by cirrlusemail
Replied by cirrlusemail on topic Re: Install Error
Hi there, I have just installed your app, and encounter this error when I attempt to create an issue on the front end.

If I leave out the field "Identified by" then it works OK.

Paul


Cannot add or update a child row: a foreign key constraint fails (`myglidingclub_db`.`glide_it_issues`,
CONSTRAINT `glide_it_issues_identified_by_fk` FOREIGN KEY (`identified_by_person_id`)
REFERENCES `glide_it_people` (`id`))
SQL=INSERT INTO `glide_it_issues` (`alias`,`issue_summary`,`issue_description`,`identified_by_person_id`,
`identified_date`,`related_project_id`,`issue_type`,`status`,`state`,`ordering`,`priority`,`progress`,
`actual_resolution_date`,`created_on`,`created_by`,`modified_on`,`modified_by`,`access`)
VALUES ('ZKF93RQ7H4','My Issue','Myu Issue 2','PLB',
'2013-10-25 22:35:13','10','1','4','0','3','2','',
'','2013-10-25 22:35:35','cgc','2013-10-25 22:35:35','cgc','1')


Edited by cirrlusemail - 26.10.2013 00:38
The topic has been locked.
10 years 5 months ago #6 by geoffc
Replied by geoffc on topic Re: Install Error
Hmmm. This is the second report of this within the past 24 hours. The problem is caused by the 'identified_by_person_id' field being a character string, whereas it should be an integer.

I assume that this is Issue Tracker version 1.3.4?

Can I ask a few questions?

Have there been any modifications to the form where the issue is entered?
Was the 'Identified by' field displayed on the form?
This is a 'guest' user (not logged in) raising the issue?

This will assist me in fixing the cause of the problem.
What I do not understand currently is how the field has been populated.

================
I think I have found it.
Can you just confirnm that the person raising the Issue is already logged into the site, and are themsleves populating the 'identified_by' field?

Edited by geoffc - 26.10.2013 12:14

============
The fix is as follows:

The problem is that the person raising the issue is already logged into the site. Then they fill in their name in the identified_by field.
This is something they shouldn't be able to do.

The fix is a couple of lines and is that they shouldn't see the field to be able to fill it in in the first place. The field should only be shown in the form when/if they are editing it, NOT when raising it.
In the file site/components/com_issuetracker/views/form/tmpl/edit.php

After line 36 add the following two lines.

$isadmin = $parameters->get('issues_admin',0);
$isstaff = $parameters->get('issues_staff',0);


Then change line 142

FROM

<?php if ($parameters->get('show_identified_by', 0) ) : ?>

TO
<?php if ($parameters->get('show_identified_by', 0) && !(empty($this->item->id) && !($isadmin || $isstaff)) ) : ?>


If you could confim this it would be helpful.

Edited by geoffc - 26.10.2013 12:37

Edited by geoffc - 26.10.2013 13:09

Regards
Geoff
The topic has been locked.
Time to create page: 0.133 seconds
Go To Top

Joomla! Debug Console

Session

Profile Information

Memory Usage

Database Queries