cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot process definition to array for type set

SOLVED

Cannot process definition to array for type set

I am running into the following error when running setup:upgrade:

Cache cleared successfully
File system cleanup:


Updating modules:
Schema creation/updates:

Cannot process definition to array for type set



Tried to debug and  possibly find a bad table type with 

/usr/share/www/project/vendor/magento/framework/Setup/Declaration/Schema/Db/DefinitionAggregator.php

 

public function fromDefinition(array $data)
{
$type = $data['type'];
if (!isset($this->definitionProcessors[$type])) {
/* Add Code for Debug */

echo "<pre>";
print_r($data); exit();

/* Code End */
throw new \InvalidArgumentException(
sprintf("Cannot process definition to array for type %s", $type)
);
}

$definitionProcessor = $this->definitionProcessors[$type];
return $definitionProcessor->fromDefinition($data);
}
}
 
The output was not what I expected:
 
<pre>Array
(
   [name] => tracking
   [default] => NULL
   [type] => set
   [nullable] => 1
   [definition] => set('UPDATE','REPLACE','INSERT','DELETE','TRUNCATE','CREATE DATABASE','ALTER DATABASE','DROP DATABASE','CREATE TABLE','ALTER
TABLE','RENAME TABLE','DROP TABLE','CREATE INDEX','DROP INDEX','CREATE VIEW','ALTER VIEW','DROP VIEW')
   [extra] =>  
   [comment] =>  
)
 
What could be causing this, this shop is fairly fresh with minimal extension installed, but has migrated data from 1.9.4 and has been moved around (import/export) a few times. How can I locate the issue?

 

1 ACCEPTED SOLUTION

Accepted Solutions

Re: Cannot process definition to array for type set

The debug output was referring to pma_tracking table, which is part of phpmyadmin, which got installed on my main DB and caused issues.

 

Removing all pma_ tables solved my issue.

View solution in original post

3 REPLIES 3

Re: Cannot process definition to array for type set

The debug output was referring to pma_tracking table, which is part of phpmyadmin, which got installed on my main DB and caused issues.

 

Removing all pma_ tables solved my issue.

Re: Cannot process definition to array for type set

I do not have any pma_tables and hence not able to solve the issue. please suggest an alternate.

Re: Cannot process definition to array for type set

Hello @sssaisrinu12d1,

 

you got the column name that is tracking, now you need to check that column in which table it exists and remove the table.

 

Thanks & Regards