You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Quick repair and rebuild is not able to complete as there is error on comapring vardefs:
[20-Jan-2025 14:02:51 Asia/Kuwait] PHP Warning: Array to string conversion in C:\CRM\SuiteCRM-7.14.6\include\database\MssqlManager.php on line 2145 [20-Jan-2025 14:02:51 Asia/Kuwait] PHP Warning: foreach() argument must be of type array|object, string given in C:\CRM\SuiteCRM-7.14.6\include\utils\array_utils.php on line 273 [20-Jan-2025 14:02:51 Asia/Kuwait] PHP Fatal error: Uncaught TypeError: array_map(): Argument #2 ($array) must be of type array, string given in C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php:1048 Stack trace: #0 C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php(1048): array_map('strtolower', 'Array') #1 C:\CRM\SuiteCRM-7.14.6\include\database\SqlsrvManager.php(326): DBManager->compareVarDefs(Array, Array) #2 C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php(991): SqlsrvManager->compareVarDefs(Array, Array) #3 C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php(765): DBManager->repairTableParams('acl_actions', Array, Array, false, NULL) #4 C:\CRM\SuiteCRM-7.14.6\modules\Administration\repairDatabase.php(121): DBManager->repairTable(Object(ACLAction), false) #5 C:\CRM\SuiteCRM-7.14.6\modules\Administration\QuickRepairAndRebuild.php(140): include_once('C:\\CRM\\SuiteCRM...') #6 C:\CRM\SuiteCRM-7.14.6\modules\Administration\QuickRepairAndRebuild.php(122): RepairAndClear->repairDatabase() #7 C:\CRM\SuiteCRM-7.14.6\modules\Administration\views\view.repair.php(56): RepairAndClear->repairAndClearAll(Array, Array, false, true) #8 C:\CRM\SuiteCRM-7.14.6\include\MVC\View\SugarView.php(210): ViewRepair->display() #9 C:\CRM\SuiteCRM-7.14.6\include\MVC\Controller\SugarController.php(432): SugarView->process() #10 C:\CRM\SuiteCRM-7.14.6\include\MVC\Controller\SugarController.php(363): SugarController->processView() #11 C:\CRM\SuiteCRM-7.14.6\include\MVC\SugarApplication.php(101): SugarController->execute() #12 C:\CRM\SuiteCRM-7.14.6\index.php(52): SugarApplication->execute() #13 {main} thrown in C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php on line 1048
Possible Fix
Reason of this is string "Array" goes into function instead of actaull array.
Steps to Reproduce the Issue
1. SuiteCRM 7.14.6, PHP 8.2.9 nts x64, mssql 2019, IIS 10
2. Try Quick repair and rebuild
3. There will be info "Processing database and vardef comparison..." at repair page but actually it throws posted error with DBManager.php
...
Context
After upgrading from 7.12.x it is impossible to repair DB from interface.
Tried with fresh install of 7.14.6 on same env but error stays for clean install.
Tried with PHP 8.1.9 and also tried with 7.4.9 - the thing is that on php 7.4 it doesn't throw an error, but db script is wrong as it puts string "Array" instead of values:
/*INDEX MISMATCH WITH DATABASE - idx_del_user - ROW <name> idx_del_user <type> index <fields>[0] => 'deleted' [1] => 'assigned_user_id' */ /* VARDEF - idx_del_user - ROW<name> idx_del_user <type> index <fields>*/ DROP INDEX idx_del_user ON leads;; CREATE INDEX idx_del_user ON leads (Array);;
Version
7.14.6
What browser are you currently using?
Chrome
Browser Version
131.0.6778.265 (Official Build) (64-bit)
Environment Information
MSSQL 2019, PHP 8.2.9, IIS 10
Operating System and Version
Windows Server 2022
The text was updated successfully, but these errors were encountered:
Issue
Quick repair and rebuild is not able to complete as there is error on comapring vardefs:
[20-Jan-2025 14:02:51 Asia/Kuwait] PHP Warning: Array to string conversion in C:\CRM\SuiteCRM-7.14.6\include\database\MssqlManager.php on line 2145 [20-Jan-2025 14:02:51 Asia/Kuwait] PHP Warning: foreach() argument must be of type array|object, string given in C:\CRM\SuiteCRM-7.14.6\include\utils\array_utils.php on line 273 [20-Jan-2025 14:02:51 Asia/Kuwait] PHP Fatal error: Uncaught TypeError: array_map(): Argument #2 ($array) must be of type array, string given in C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php:1048 Stack trace: #0 C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php(1048): array_map('strtolower', 'Array') #1 C:\CRM\SuiteCRM-7.14.6\include\database\SqlsrvManager.php(326): DBManager->compareVarDefs(Array, Array) #2 C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php(991): SqlsrvManager->compareVarDefs(Array, Array) #3 C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php(765): DBManager->repairTableParams('acl_actions', Array, Array, false, NULL) #4 C:\CRM\SuiteCRM-7.14.6\modules\Administration\repairDatabase.php(121): DBManager->repairTable(Object(ACLAction), false) #5 C:\CRM\SuiteCRM-7.14.6\modules\Administration\QuickRepairAndRebuild.php(140): include_once('C:\\CRM\\SuiteCRM...') #6 C:\CRM\SuiteCRM-7.14.6\modules\Administration\QuickRepairAndRebuild.php(122): RepairAndClear->repairDatabase() #7 C:\CRM\SuiteCRM-7.14.6\modules\Administration\views\view.repair.php(56): RepairAndClear->repairAndClearAll(Array, Array, false, true) #8 C:\CRM\SuiteCRM-7.14.6\include\MVC\View\SugarView.php(210): ViewRepair->display() #9 C:\CRM\SuiteCRM-7.14.6\include\MVC\Controller\SugarController.php(432): SugarView->process() #10 C:\CRM\SuiteCRM-7.14.6\include\MVC\Controller\SugarController.php(363): SugarController->processView() #11 C:\CRM\SuiteCRM-7.14.6\include\MVC\SugarApplication.php(101): SugarController->execute() #12 C:\CRM\SuiteCRM-7.14.6\index.php(52): SugarApplication->execute() #13 {main} thrown in C:\CRM\SuiteCRM-7.14.6\include\database\DBManager.php on line 1048
Possible Fix
Reason of this is string "Array" goes into function instead of actaull array.
Steps to Reproduce the Issue
1. SuiteCRM 7.14.6, PHP 8.2.9 nts x64, mssql 2019, IIS 10 2. Try Quick repair and rebuild 3. There will be info "Processing database and vardef comparison..." at repair page but actually it throws posted error with DBManager.php ...
Context
After upgrading from 7.12.x it is impossible to repair DB from interface.
Tried with fresh install of 7.14.6 on same env but error stays for clean install.
Tried with PHP 8.1.9 and also tried with 7.4.9 - the thing is that on php 7.4 it doesn't throw an error, but db script is wrong as it puts string "Array" instead of values:
/*INDEX MISMATCH WITH DATABASE - idx_del_user - ROW <name> idx_del_user <type> index <fields>[0] => 'deleted' [1] => 'assigned_user_id' */ /* VARDEF - idx_del_user - ROW<name> idx_del_user <type> index <fields>*/ DROP INDEX idx_del_user ON leads;; CREATE INDEX idx_del_user ON leads (Array);;
Version
7.14.6
What browser are you currently using?
Chrome
Browser Version
131.0.6778.265 (Official Build) (64-bit)
Environment Information
MSSQL 2019, PHP 8.2.9, IIS 10
Operating System and Version
Windows Server 2022
The text was updated successfully, but these errors were encountered: