Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

2.3.3 upgrade error


Go to End


5 Posts   1890 Views

Avatar
ChrisBryer

Community Member, 95 Posts

5 August 2009 at 4:53am

hi everyone,
I am trying to upgrade my multi-lingual website from 2.3.2 to 2.3.3. i swapped out the folders CMS, Sapphire, jsparty, and googlesitemaps, and receive this error on dev/build:

[Warning] call_user_func(Array) [function.call-user-func]: First argument is expected to be a valid callback
GET /mylocalhostsite/dev/build

Line 67 in C:\wamp\www\mylocalhostsite\sapphire\core\model\DataObjectDecorator.php

Trace

* call_user_func(Array)
Line 67 of DataObjectDecorator.php
* DataObjectDecorator::load_extra_statics(SiteTree,)
Line 305 of DataObject.php
* DataObject->defineMethods()
Line 500 of Object.php
* Object->__construct()
Line 209 of DataObject.php
* DataObject->__construct(,1)
* ReflectionClass->newInstanceArgs(Array)
Line 115 of Object.php
* Object::strong_create(SiteTree,,1)
Line 262 of Core.php
* singleton(SiteTree)
Line 187 of DatabaseAdmin.php
* DatabaseAdmin->doBuild(,1)
Line 100 of DatabaseAdmin.php
* DatabaseAdmin->build()
Line 135 of DevelopmentAdmin.php
* DevelopmentAdmin->build(HTTPRequest)
Line 129 of RequestHandler.php
* RequestHandler->handleRequest(HTTPRequest)
Line 122 of Controller.php
* Controller->handleRequest(HTTPRequest)
Line 277 of Director.php
* Director::handleRequest(HTTPRequest,Session)
Line 121 of Director.php
* Director::direct(/dev/build)
Line 118 of main.php

is anyone else getting this error? any idea on how to fix it?

thanks,
-Chris

Avatar
UndefinedOffset

Community Member, 30 Posts

6 August 2009 at 3:38am

Ya I'm seeing this exact error as well, just since the upgrade to 2.3.3. No multi-lingual here though just English and it's from upgrading from 2.3.2 to 2.3.3.

Avatar
UndefinedOffset

Community Member, 30 Posts

6 August 2009 at 3:47am

Edited: 06/08/2009 10:32am

Seems to be something to do with this api change

[79430] #4255 sharvey: !DataObjectDecorator::extraStatics() can no longer refer to $this because it's called staticly (Merged via: r81698)

Avatar
Sean

Forum Moderator, 922 Posts

6 August 2009 at 9:15pm

Edited: 06/08/2009 9:27pm

Hi guys,

Yes - we've noticed this too. This is something we unfortunately didn't catch before releasing SS 2.3.3.

The bug was introduced by these changesets:

http://open.silverstripe.com/changeset/79430/modules
http://open.silverstripe.com/changeset/83038/modules

The bug was fixed in these changesets for the 2.3 development branch:

http://open.silverstripe.com/changeset/83579/modules
http://open.silverstripe.com/changeset/83580/modules
http://open.silverstripe.com/changeset/83582/modules
http://open.silverstripe.com/changeset/83586/modules
http://open.silverstripe.com/changeset/83587/modules

These fixes should make the next SS release, which will be 2.3.4.

In the mean time, if you want to fix your 2.3.3 installation, simply apply the above 5 changes to the SS files where you've installed it to.

Technically speaking, the issue was caused by FilesystemPublisher that has it's own __construct() method, but it didn't call parent::__construct() - thus breaking the assumption set by DataObject that it would.

Cheers,
Sean

Avatar
ChrisBryer

Community Member, 95 Posts

7 August 2009 at 5:48am

works great! thanks Sean!