I log in as admin and click on the Test Project Management link (Desktop), and I get the following error:
==============================================================================
DB Access Error - debug_print_backtrace() OUTPUT START
==============================================================================
==============================================================================
There are no entries in the backtrace as you can see. No information in the logs either. Not sure what is going on.
I can work within the existing projects, but cannot create any new ones.
Using TestLink 1.9.8 after having upgraded from 1.9.3. Using Ubuntu 11.04, mySQL 5.1.54
DB Access Error when accessing Test Project Management
Moderators: Amaradana, TurboPT, TL Developers
Re: DB Access Error when accessing Test Project Management
Additional Information: Error is occurring in projectView.php, function call:
$gui->tprojects = $tproject_mgr->get_accessible_for_user($args->userID,$opt);
$gui->tprojects = $tproject_mgr->get_accessible_for_user($args->userID,$opt);
Re: DB Access Error when accessing Test Project Management
Additional Information: I printed this when error occured in database.class.php:
ERROR ON exec_query() - database.class.php
1146 - Table 'testlink198.testproject_reqmgrsystem' doesn't exist - /* Class:testproject - Method: get_accessible_for_user */ SELECT TPROJ.*,NHTPROJ.name,COALESCE(UTR.role_id,U.role_id) AS effective_role ,ITMD.name AS itname,ITMD.type AS ittype ,RMSMD.name AS rmsname,RMSMD.type AS rmstype FROM nodes_hierarchy NHTPROJ JOIN testprojects TPROJ ON NHTPROJ.id=TPROJ.id JOIN users U ON U.id = 2 LEFT OUTER JOIN user_testproject_roles UTR ON TPROJ.id = UTR.testproject_id AND UTR.user_id =2 LEFT OUTER JOIN testproject_issuetracker AS TIT ON TIT.testproject_id = TPROJ.id LEFT OUTER JOIN issuetrackers AS ITMD ON ITMD.id = TIT.issuetracker_id LEFT OUTER JOIN testproject_reqmgrsystem AS TRMS ON TRMS.testproject_id = TPROJ.id LEFT OUTER JOIN reqmgrsystems AS RMSMD ON RMSMD.id = TRMS.reqmgrsystem_id WHERE 1=1 ORDER BY name THE MESSAGE : /* Class:testproject - Method: get_accessible_for_user */ SELECT TPROJ.*,NHTPROJ.name,COALESCE(UTR.role_id,U.role_id) AS effective_role ,ITMD.name AS itname,ITMD.type AS ittype ,RMSMD.name AS rmsname,RMSMD.type AS rmstype FROM nodes_hierarchy NHTPROJ JOIN testprojects TPROJ ON NHTPROJ.id=TPROJ.id JOIN users U ON U.id = 2 LEFT OUTER JOIN user_testproject_roles UTR ON TPROJ.id = UTR.testproject_id AND UTR.user_id =2 LEFT OUTER JOIN testproject_issuetracker AS TIT ON TIT.testproject_id = TPROJ.id LEFT OUTER JOIN issuetrackers AS ITMD ON ITMD.id = TIT.issuetracker_id LEFT OUTER JOIN testproject_reqmgrsystem AS TRMS ON TRMS.testproject_id = TPROJ.id LEFT OUTER JOIN reqmgrsystems AS RMSMD ON RMSMD.id = TRMS.reqmgrsystem_id WHERE 1=1 ORDER BY name
Query failed: errorcode[1146]
errormsg:Table 'testlink198.testproject_reqmgrsystem' doesn't exist ERRORDATABASE
ERROR ON exec_query() - database.class.php
1146 - Table 'testlink198.testproject_reqmgrsystem' doesn't exist - /* Class:testproject - Method: get_accessible_for_user */ SELECT TPROJ.*,NHTPROJ.name,COALESCE(UTR.role_id,U.role_id) AS effective_role ,ITMD.name AS itname,ITMD.type AS ittype ,RMSMD.name AS rmsname,RMSMD.type AS rmstype FROM nodes_hierarchy NHTPROJ JOIN testprojects TPROJ ON NHTPROJ.id=TPROJ.id JOIN users U ON U.id = 2 LEFT OUTER JOIN user_testproject_roles UTR ON TPROJ.id = UTR.testproject_id AND UTR.user_id =2 LEFT OUTER JOIN testproject_issuetracker AS TIT ON TIT.testproject_id = TPROJ.id LEFT OUTER JOIN issuetrackers AS ITMD ON ITMD.id = TIT.issuetracker_id LEFT OUTER JOIN testproject_reqmgrsystem AS TRMS ON TRMS.testproject_id = TPROJ.id LEFT OUTER JOIN reqmgrsystems AS RMSMD ON RMSMD.id = TRMS.reqmgrsystem_id WHERE 1=1 ORDER BY name THE MESSAGE : /* Class:testproject - Method: get_accessible_for_user */ SELECT TPROJ.*,NHTPROJ.name,COALESCE(UTR.role_id,U.role_id) AS effective_role ,ITMD.name AS itname,ITMD.type AS ittype ,RMSMD.name AS rmsname,RMSMD.type AS rmstype FROM nodes_hierarchy NHTPROJ JOIN testprojects TPROJ ON NHTPROJ.id=TPROJ.id JOIN users U ON U.id = 2 LEFT OUTER JOIN user_testproject_roles UTR ON TPROJ.id = UTR.testproject_id AND UTR.user_id =2 LEFT OUTER JOIN testproject_issuetracker AS TIT ON TIT.testproject_id = TPROJ.id LEFT OUTER JOIN issuetrackers AS ITMD ON ITMD.id = TIT.issuetracker_id LEFT OUTER JOIN testproject_reqmgrsystem AS TRMS ON TRMS.testproject_id = TPROJ.id LEFT OUTER JOIN reqmgrsystems AS RMSMD ON RMSMD.id = TRMS.reqmgrsystem_id WHERE 1=1 ORDER BY name
Query failed: errorcode[1146]
errormsg:Table 'testlink198.testproject_reqmgrsystem' doesn't exist ERRORDATABASE
Re: DB Access Error when accessing Test Project Management
OK. I figured it out. When upgrading from 1.9.3 I neglected to do the step from 1.9.4/5 to 1.9.7. This step creates the missing table.
To fix it I just ran the upgrade script in
install/sql/alter_tables/1.9.6/<your_db>/DB.1.6/step1/db_schema_update.sql
While it meant that I ran the script out of order (I had already run the script from 1.9.7 to 1.9.8 ), the DB.1.6 script simply creates some new tables and adds some additional columns and values to existing tables. Everything appears to work now.
To fix it I just ran the upgrade script in
install/sql/alter_tables/1.9.6/<your_db>/DB.1.6/step1/db_schema_update.sql
While it meant that I ran the script out of order (I had already run the script from 1.9.7 to 1.9.8 ), the DB.1.6 script simply creates some new tables and adds some additional columns and values to existing tables. Everything appears to work now.