EE compatibility updates:

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

ExpressionEngine.com licenses:

  • If you purchased an add-on from expressionengine.com, be sure to visit boldminded.com/claim to add the license to your account here on boldminded.com.

Ticket: Dependency Injection: Unregistered service “publisher:Cache”

Status Resolved
Add-on / Version Publisher 2.7.9
Severity
EE Version 4

Jef Roode

Apr 06, 2018

Description:
While upgrading from EE3 to EE4 I got the following error:

—-
Exception Caught
Dependency Injection: Unregistered service “publisher:Cache”
InjectionContainer.php:171
—-

When I tried to install again, I didn’t get that error and went through the whole upgrading proces (EE3—> EE4).
However, after this proces was done I got another error that may or may not relate to Publisher:

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'dataBaseName.exp_member_data_field_1' doesn't exist:
SELECT exp_members.member_id as Member__member_id, Member_field_id_1.m_field_id_1 as Member__m_field_id_1, Member_field_id_1.m_field_ft_1 as Member__m_field_ft_1 FROM (`exp_members`) LEFT JOIN `exp_member_data_field_1` AS Member_field_id_1 ON `Member_field_id_1`.`member_id` = `exp_members`.`member_id` WHERE `exp_members`.`member_id` IN (1)
ee/legacy/database/drivers/mysqli/mysqli_connection.php:116

Before upgrading to EE4, I upgraded from EE2 to EE3 without any major problems.
However, I can’t make EE4 run the way it should. Do you have any suggestions?

 

#1

BoldMinded (Brian)

Apr 06, 2018

Hi, Jef. Is there more to the SQL error? It should have a stack trace below it, I need to see that.

#2

BoldMinded (Brian)

Apr 06, 2018

Same for the first error, hopefully there is a stack trace for that as well.

#3

BoldMinded (Brian)

Apr 06, 2018

Nevermind, I just saw the attacked image for the SQL error. Did you get a similar one for the publisher:Cache error?

#4

BoldMinded (Brian)

Apr 06, 2018

The SQL error stack trace doesn’t have anything Publisher related in it, so I’m not sure that is a Publisher related issue during the upgrade.

#5

Jef Roode

Apr 06, 2018

No, the publisher:Cache error was exactly what I just posted.

#6

BoldMinded (Brian)

Apr 06, 2018

Do you get the publisher:Cache error just during the upgrade? Did it prevent the upgrade from completing? Just trying to understand if the site is in a non-working state and you’re continually getting that error, or if it just appeared once and is fine now?

#7

BoldMinded (Brian)

Apr 06, 2018

Not sure what is happening with that member query, Publisher doesn’t modify the members table or really care about member data other when you’re picking which members get to receive approval emails or which ones are considered Editors or Publishers. Its all read only.

#8

Jef Roode

Apr 06, 2018

I will downgrade to EE3 and will prepare everything to do the upgrade to EE4 again. I will let you know when I’m ready, so you’ll see what’s happening with publisher the first time you try to upgrade.

#9

BoldMinded (Brian)

Apr 06, 2018

Try recording a screencast of the upgrade process.

FWIW, I did a test upgrade of a very large site in 3 to 4 last week and didn’t encounter this error, or any other error. That leads me to believe its something specific with your environment.

#10

Jef Roode

Apr 06, 2018

Comment has been marked private.

#11

BoldMinded (Brian)

Apr 06, 2018

What version of PHP are you using?

I just upgraded from 3 to 4 again successfully, no errors. That member error occurred for me to, but it was b/c the ee/installer directory did not exist. Double check that your folders are correct before performing the upgrade.

#12

BoldMinded (Brian)

Apr 06, 2018

Comment has been marked private.

#13

Jef Roode

Apr 06, 2018

It was set at 5.6 cause ‘Channel videos’ gave me some errors. I switched to 7.1 and did the upgrade with the files you just sent me.
The install proces went fine.. however, after I login to the CMS, I get the ‘Exception Caught’ error again.
Perhaps this doesn’t have much to do with Publisher.

#14

Jef Roode

Apr 09, 2018

Comment has been marked private.

#15

BoldMinded (Brian)

Apr 09, 2018

That Publisher error seems unrelated to the upgrade. If reloading continues the upgrade, then its probably fine. I’ve done 2 upgrades to test to replicate that error and I can’t… the upgrade works fine for me, and I haven’t seen any other similar reports.

The sql error is probably b/c one of EE’s upgrade script didn’t do its thing. Even if Publisher stopped that upgrade initially, EE should pick up where it left off. Did you try backing up your db, uninstalling Publisher, then trying the upgrade to see if the sql error still happens?

#16

David Clough

Apr 09, 2018

Comment has been marked private.

#17

BoldMinded (Brian)

Apr 09, 2018

David, thanks for finding this. I’ll work on getting an official fix in for the next release. I do find it strange that I wasn’t able to replicate it though.

#18

BoldMinded (Brian)

Apr 09, 2018

I feel like I may add a fix in the custom_field_modify_data hook call though if that is the source of the problem instead of shutting down Publisher entirely. Since Publisher doesn’t care about member fields, perhaps I should return early when that hook is called if its a member field being edited.

#19

BoldMinded (Brian)

Apr 09, 2018

Comment has been marked private.

#20

Jef Roode

Apr 10, 2018

Hi there!
Thanks for the new build! The update went fine without any errors. However, when I want to create of edit an entry I do get an error. I have no idea if this is related to Publisher. Perhaps you can check?

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'ChannelEntry_channel_titles.status_id' in 'field list':
SELECT ChannelEntry_channel_titles.entry_id as ChannelEntry__entry_id, ChannelEntry_channel_titles.site_id as ChannelEntry__site_id, ChannelEntry_channel_titles.channel_id as ChannelEntry__channel_id, ChannelEntry_channel_titles.author_id as ChannelEntry__author_id, ChannelEntry_channel_titles.title as ChannelEntry__title, ChannelEntry_channel_titles.status as ChannelEntry__status, ChannelEntry_channel_titles.status_id as ChannelEntry__status_id, ChannelEntry_channel_titles.entry_date as ChannelEntry__entry_date, ChannelEntry_channel_titles.comment_total as ChannelEntry__comment_total, ChannelEntry_channel_data.entry_id as ChannelEntry__entry_id, ChannelEntry_channel_data.channel_id as ChannelEntry__channel_id, ChannelEntry_channel_data.site_id as ChannelEntry__site_id, ChannelEntry_channel_data.entry_id as ChannelEntry__entry_id, ChannelEntry_channel_data.site_id as ChannelEntry__site_id, ChannelEntry_channel_data.channel_id as ChannelEntry__channel_id, Channel_channels.channel_id as Channel__channel_id, Channel_channels.site_id as Channel__site_id, Channel_channels.channel_title as Channel__channel_title, Channel_channels.search_excerpt as Channel__search_excerpt, Channel_channels.preview_url as Channel__preview_url, Author_members.member_id as Author__member_id, Author_members.group_id as Author__group_id, Author_members.username as Author__username, Author_members.screen_name as Author__screen_name, Author_member_data.member_id as Author__member_id, Author_member_data.member_id as Author__member_id, Autosaves_channel_entries_autosave.entry_id as Autosaves__entry_id, Autosaves_channel_entries_autosave.original_entry_id as Autosaves__original_entry_id, Autosaves_channel_entries_autosave.channel_id as Autosaves__channel_id, Autosaves_channel_entries_autosave.author_id as Autosaves__author_id FROM (`exp_channel_titles` as ChannelEntry_channel_titles, `exp_channel_data` as ChannelEntry_channel_data) LEFT JOIN `exp_channels` AS Channel_channels ON `Channel_channels`.`channel_id` = `ChannelEntry_channel_titles`.`channel_id` LEFT JOIN `exp_members` AS Author_members ON `Author_members`.`member_id` = `ChannelEntry_channel_titles`.`author_id` LEFT JOIN `exp_member_data` as Author_member_data ON `Author_member_data`.`member_id` = `Author_members`.`member_id` LEFT JOIN `exp_channel_entries_autosave` AS Autosaves_channel_entries_autosave ON `Autosaves_channel_entries_autosave`.`original_entry_id` = `ChannelEntry_channel_titles`.`entry_id` WHERE ChannelEntry_channel_data.entry_id = ChannelEntry_channel_titles.entry_id AND ( `ChannelEntry_channel_data`.`site_id` = 1 AND `ChannelEntry_channel_data`.`channel_id` = '19' ) ORDER BY `ChannelEntry_channel_titles`.`entry_date` desc LIMIT 25
ee/legacy/database/drivers/mysqli/mysqli_connection.php:116

Stack Trace: Please include when reporting this error
#0 ee/legacy/database/drivers/mysqli/mysqli_driver.php(111): CI_DB_mysqli_connection->query('SELECT ChannelE…')
#1 ee/legacy/database/DB_driver.php(269): CI_DB_mysqli_driver->_execute('SELECT ChannelE…')
#2 ee/legacy/database/DB_driver.php(179): CI_DB_driver->simple_query('SELECT ChannelE…')
#3 ee/legacy/database/DB_active_rec.php(1137): CI_DB_driver->query('SELECT ChannelE…')
#4 ee/EllisLab/ExpressionEngine/Service/Model/Query/Select.php(48): CI_DB_active_record->get()
#5 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(281): EllisLab\ExpressionEngine\Service\Model\Query\Select->run()
#6 ee/EllisLab/ExpressionEngine/Service/Model/DataStore.php(227): EllisLab\ExpressionEngine\Service\Model\DataStore->runQuery('Select', Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))
#7 ee/EllisLab/ExpressionEngine/Service/Model/Query/Builder.php(143): EllisLab\ExpressionEngine\Service\Model\DataStore->selectQuery(Object(EllisLab\ExpressionEngine\Service\Model\Query\Builder))
#8 ee/EllisLab/ExpressionEngine/Service/Model/Query/Builder.php(62): EllisLab\ExpressionEngine\Service\Model\Query\Builder->fetch()
#9 ee/EllisLab/ExpressionEngine/Controller/Publish/Edit.php(146): EllisLab\ExpressionEngine\Service\Model\Query\Builder->all()
#10 [internal function]: EllisLab\ExpressionEngine\Controller\Publish\Edit->index()
#11 ee/EllisLab/ExpressionEngine/Core/Core.php(240): call_user_func_array(Array, Array)
#12 ee/EllisLab/ExpressionEngine/Core/Core.php(109): EllisLab\ExpressionEngine\Core\Core->runController(Array)
#13 ee/EllisLab/ExpressionEngine/Boot/boot.php(146): EllisLab\ExpressionEngine\Core\Core->run(Object(EllisLab\ExpressionEngine\Core\Request))
#14 admin.php(147): require_once('...')
#14 admin.php(147): require_once('...')
#21

BoldMinded (Brian)

Apr 10, 2018

Yeah, not sure that one is a Publisher thing. It doesn’t care about the status_id column. Did you do a fresh upgrade to 4 with the latest build I sent?

#22

Jef Roode

Apr 10, 2018

The last error indeed didn’t have much to with Publisher. Found the solution here:
https://www.barberriley.com/expression-engine/solved-column-not-found-1054-unknown-column-channelentry-channel-titles.sta

Everything seem to run fine with your last build. Thank you so much for you wonderful support!

#23

BoldMinded (Brian)

Apr 10, 2018

Glad you got it sorted out, and you’re welcome!

Login to reply

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