EE4 compatibility updates:

  • Publisher is EE4 and EE5 compatible, but it does not currently support the Fluid field.
  • Reel is EE4 and EE5 compatible, but it does not currently support the Fluid field.

Ticket: Exception Caught – SQLSTATE[42000]: Syntax error or access violation

Status Client Wait
Add-on / Version Publisher 2.10.3
Severity
EE Version 5.0.1

Matthias Ballmann

Nov 24, 2018

hi brian,

since my ticket didn’t show up in your site’s list, I did this one. I installed the 2.10.3 update, but the error persits:

Exception Caught

SQLSTATE[42000]
Syntax error or access violation1118 Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may helpIn current row formatBLOB prefix of 768 bytes is stored inline.:
UPDATE `exp_publisher_dataSET `field_id_11` = 'Facebook|https://www.facebook.com/KunstvereinHamburg|1|Twitter|https://twitter.com/KunstvereinHH|1|Instagram|https://www.instagram.com/kunstvereinhh|1' WHERE `entry_id` = 1537 AND `lang_id` = AND `status` = 'open'

ee/legacy/database/drivers/mysqli/mysqli_connection.php:117

Stack Trace
Please include when reporting this error

#0 ee/legacy/database/drivers/mysqli/mysqli_driver.php(112): CI_DB_mysqli_connection->query('UPDATE `exp_pub...')
#1 ee/legacy/database/DB_driver.php(270): CI_DB_mysqli_driver->_execute('UPDATE `exp_pub...')
#2 ee/legacy/database/DB_driver.php(180): CI_DB_driver->simple_query('UPDATE `exp_pub...')
#3 ee/legacy/database/DB_active_rec.php(1477): CI_DB_driver->query('UPDATE `exp_pub...')
#4 user/addons/publisher/legacy/libraries/Publisher_searchable.php(232): CI_DB_active_record->update('publisher_data', Array)
#5 user/addons/publisher/legacy/libraries/Publisher_searchable.php(183): Publisher_searchable->addSearchableData()
#6 user/addons/publisher/Service/Field/Type/GridType.php(56): Publisher_searchable->saveEntry(1537, 11, 'channel_grid_fi...')
#7 [internal function]: BoldMinded\Publisher\Service\Field\Type\GridType->afterChannelEntrySave(Array)
#8 user/addons/publisher/Service/Handler/FieldHandler.php(231): call_user_func_array(Array, Array)
#9 user/addons/publisher/ext.publisher.php(513): BoldMinded\Publisher\Service\Handler\FieldHandler->call('afterChannelEnt...', Array)
#10 ee/legacy/libraries/Extensions.php(222): Publisher_ext->after_channel_entry_save(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)
#11 ee/legacy/libraries/Extensions.php(117): EE_Extensions->call_class('Publisher_ext', 'after_channel_e...', Array, Array)
#12 [internal function]: EE_Extensions->call('after_channel_e...', Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)
#13 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(635): call_user_func_array(Array, Array)
#14 [internal function]: EllisLab\ExpressionEngine\Service\Model\Model->EllisLab\ExpressionEngine\Service\Model\{closure}('after_channel_e...', Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry), Array)
#15 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(608): call_user_func_array(Object(Closure), Array)
#16 [internal function]: EllisLab\ExpressionEngine\Service\Model\Model->EllisLab\ExpressionEngine\Service\Model\{closure}()
#17 ee/EllisLab/ExpressionEngine/Service/Event/Emitter.php(141): call_user_func_array(Object(Closure), Array)
#18 [internal function]: EllisLab\ExpressionEngine\Service\Event\Emitter->emit('afterSave')
#19 ee/EllisLab/ExpressionEngine/Library/Data/Entity.php(654): call_user_func_array(Array, Array)
#20 [internal function]: EllisLab\ExpressionEngine\Library\Data\Entity->emit('afterSave')
#21 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(828): call_user_func_array('parent::emit', Array)
#22 ee/EllisLab/ExpressionEngine/Service/Model/Query/Update.php(51): EllisLab\ExpressionEngine\Service\Model\Model->emit('afterSave')
#23 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(282): EllisLab\ExpressionEngine\Service\Model\Query\Update->run()
#24 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(248): EllisLab\ExpressionEngine\Service\Model\DataStore->runQuery('Update', Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))
#25 ee/EllisLab/ExpressionEngine/Service/Model/Query/Builder.php(71): EllisLab\ExpressionEngine\Service\Model\DataStore->updateQuery(Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))
#26 ee/EllisLab/ExpressionEngine/Service/Model/Model.php(361): EllisLab\ExpressionEngine\Service\Model\Query\Builder->update()
#27 ee/EllisLab/ExpressionEngine/Model/Content/ContentModel.php(225): EllisLab\ExpressionEngine\Service\Model\Model->save()
#28 ee/EllisLab/ExpressionEngine/Controller/Publish/AbstractPublish.php(370): EllisLab\ExpressionEngine\Model\Content\ContentModel->save()
#29 ee/EllisLab/ExpressionEngine/Controller/Publish/Edit.php(527): EllisLab\ExpressionEngine\Controller\Publish\AbstractPublish->saveEntryAndRedirect(Object(EllisLab\ExpressionEngine\Model\Channel\ChannelEntry))
#30 [internal function]: EllisLab\ExpressionEngine\Controller\Publish\Edit->entry('1537')
#31 ee/EllisLab/ExpressionEngine/Core/Core.php(241): call_user_func_array(Array, Array)
#32 ee/EllisLab/ExpressionEngine/Core/Core.php(110): EllisLab\ExpressionEngine\Core\Core->runController(Array)
#33 ee/EllisLab/ExpressionEngine/Boot/boot.php(151): EllisLab\ExpressionEngine\Core\Core->run(Object(EllisLab\ExpressionEngine\Core\Request))
#34 kvh.php(147): require_once('...')
#34 kvh.php(147): require_once('...') 

 

 

 

#1

BoldMinded (Brian)

Nov 25, 2018

Matthias, run the following query on your database and share the results with me. It should look something like this: https://d.pr/i/SD3hpS

SELECT
  COLUMN_NAME
DATA_TYPE 
FROM
  INFORMATION_SCHEMA
.COLUMNS 
WHERE
  TABLE_SCHEMA 
'YOUR_TABLE_NAME_HERE'
AND
  
TABLE_NAME 'exp_publisher_data'
#2

BoldMinded (Brian)

Nov 25, 2018
#3

Matthias Ballmann

Nov 25, 2018

hi brian,

the query says “No rows returned” with no results.

#4

BoldMinded (Brian)

Nov 25, 2018

Did you change YOUR TABLE NAME HERE to your database name? It should be database name not table name… I incorrectly typed it earlier.

#5

Matthias Ballmann

Nov 26, 2018

ups, no…
but now.

and I uploaded the results as a screenshot.

Strangely enough, the query displays a total of 83 results in a paginated list… but if I want to scroll to page 2 or 3, I return to the original query form.
If it helps you, I can set up an admin login for you.

#6

BoldMinded (Brian)

Nov 26, 2018

What is the field id of your Bloqs field? Is it field_id_46? Or a different one? Instead of running that query, if you know the field id of the Bloqs field, just look at that column alone in the database to get the type. Something like this should work:

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_publisher_data' AND COLUMN_NAME 'field_id_46'
#7

Matthias Ballmann

Nov 26, 2018

mmh, it’s not about bloqs – that’s not installed on this website.

#8

BoldMinded (Brian)

Nov 26, 2018

Ok, disregard that comment then. The query should be the same… it looks like field_id_46 is the one that it’s having trouble with, so run these 3 queries and share the results of each.

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_channel_data' AND COLUMN_NAME 'field_id_46'

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_channel_data_field_46' AND COLUMN_NAME 'field_id_46'

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_publisher_data' AND COLUMN_NAME 'field_id_46'
#9

Matthias Ballmann

Nov 26, 2018

these are the results:

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_channel_data' AND COLUMN_NAME 'field_id_46'

No rows returned

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_channel_data_field_46' AND COLUMN_NAME 'field_id_46'

DATA_TYPE
text
text

SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
  WHERE table_name 
'exp_publisher_data' AND COLUMN_NAME 'field_id_46'

DATA_TYPE
text
text

#10

BoldMinded (Brian)

Nov 26, 2018

Can you edit the ticket and provide FTP info to a dev site, and make sure that the publisher files are writable. Provide entry_id of an entry that I can use to replicate the issue.

#11

Matthias Ballmann

Nov 26, 2018

sure, but it seems I cannot edit the ticket…?

#12

BoldMinded (Brian)

Nov 26, 2018

Do you not see an Edit button or do you get an error when you click the Edit button?

https://boldminded.com/support/edit/1879

#13

Matthias Ballmann

Nov 26, 2018

Comment has been marked private.

#14

Matthias Ballmann

Nov 26, 2018

Comment has been marked private.

#15

BoldMinded (Brian)

Nov 26, 2018

Matthias, in order to simplify this, b/c there are a ton of fields in that entry, can you do the following:

1) backup your database
2) on a dev server, delete all custom fields not assigned to that channel/entry then see if the entry saves fine.
3) If it does not save correctly, then delete a field, doesn’t matter which
4) Save the entry. If it throws an error again, repeat step 3 and delete another field.
5) If it saves correctly, then we know that the last field that was deleted was the problem, then I can look into that more. Right now there are too many things going on, I need a simplified test.

#16

BoldMinded (Brian)

Nov 26, 2018

Comment has been marked private.

#17

Matthias Ballmann

5 days ago

hi brian,

Since our customer wanted to make some changes to the corresponding channel and the assigned fields anyway, I assigned some fields to another channel and this error has now disappeared.

Could it be that publishers can only process a maximum number of fields per channel? Or does it matter?

#18

BoldMinded (Brian)

5 days ago

The only limit to Publisher is if you’re running into the total number of database columns, which is a lot. How many custom fields do you have? I have Publisher running on a site with 150 custom fields just fine.

#19

BoldMinded (Brian)

5 days ago

FWIW Publisher 3 won’t have any limits as I’m re-organizing the database structure to be similar to how EE handles each custom field to have it’s own table.

Login to reply

Contact

For add-on support, please use the Support section. General inquries and pre-sale questions can be sent to support@boldminded.com.