Ghost 3.22.0 doesn't refresh settings correctly

Created on 1 Jul 2020  路  9Comments  路  Source: TryGhost/Ghost

Following the update of Ghost to version 3.22.0, no more data recorded!

image

api bug server / core

Most helpful comment

Hi @naz I also have the same problem. After clicking on Labs >> Enable members a message appears on top and the data is being cleaned.

Zrzut ekranu 2020-07-1 o 12 27 53

There is no problem with fresh installation (with empty database).

All 9 comments

Hey @pirmax. Could you please provide more information about the environment you've been upgrading with and the version of Ghost you've migrated from? As much information as possible would be great to be able to help you out.

Note: before each migration there's a backup done in Ghost, stored in /content/data folder as a .json export file. The information should not be lost completely!

The information should not be lost completely!

Yes sorry, I was in emergency. I thought it was the same for all users.

I updated Ghost from version 3.21.1 to 3.22.0 and all the information contained in the config is lost.
All inputs are clean and empty.

I just used the ghost update command from my DigitalOcean droplet.

Thanks.

@pirmax is this a "one-click-install" Ghost droplet or a generic DO droplet where you've set up the environment?

Hi @naz I also have the same problem. After clicking on Labs >> Enable members a message appears on top and the data is being cleaned.

Zrzut ekranu 2020-07-1 o 12 27 53

There is no problem with fresh installation (with empty database).

It's one-click-installation of Ghost, but it doesn't change much, it comes down to the same thing.

I see my data in the database (settings table), nothing is lost but nothing is displayed in the administration forms.

It's one-click-installation of Ghost, but it doesn't change much, it comes down to the same thing.

I see my data in the database (settings table), nothing is lost but nothing is displayed in the administration forms.

In my case, the "Publication logo" and the "Desing Navigation" menus data were lost. I had to add them again because they were not showing on the principal page of my website. The "Code injection" section is not shown but it does apply in the website.

Anyone encountering this issue should please leave their admin panels well alone until we release a patch. As far as we can tell at the moment, the data is not lost, it's just how the data is reloaded into Ghost Admin that is a problem.

Saving over the top could cause data loss (but will more likely cause errors).

Best to just leave it alone in the meantime.

Noticed this too, when trying to update the Code Injection tab. Noticed this was the error in the logs when trying to save

`[2020-07-01 17:45:30] ERROR "PUT /ghost/api/v3/admin/settings/" 500 24ms

NAME: InternalServerError
MESSAGE: The server has encountered an error.

level: normal

InternalServerError: The server has encountered an error.
    at new GhostError (/var/www/ghost/versions/3.22.0/node_modules/@tryghost/errors/lib/errors.js:10:26)
    at permsPromise.then.catch (/var/www/ghost/versions/3.22.0/core/server/api/canary/utils/permissions.js:69:31)
    at tryCatcher (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:547:31)
    at Promise._settlePromise (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:604:18)
    at Promise._settlePromise0 (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:649:10)
    at Promise._settlePromises (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:725:18)
    at _drainQueueStep (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:93:12)
    at _drainQueue (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:86:9)
    at Async._drainQueues (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:102:5)
    at Immediate.Async.drainQueues [as _onImmediate] (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:15:14)
    at runCallback (timers.js:705:18)
    at tryOnImmediate (timers.js:676:5)
    at processImmediate (timers.js:658:5)
    at process.topLevelDomainCallback (domain.js:126:23)

TypeError: Cannot read property 'members' of null
    at isChangingMembers (/var/www/ghost/versions/3.22.0/core/server/models/settings.js:312:33)
    at Function.permissible (/var/www/ghost/versions/3.22.0/core/server/models/settings.js:320:23)
    at /var/www/ghost/versions/3.22.0/core/server/services/permissions/can-this.js:97:40
    at tryCatcher (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:547:31)
    at Promise._settlePromise (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:604:18)
    at Promise._settlePromise0 (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:649:10)
    at Promise._settlePromises (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:729:18)
    at Promise._fulfill (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:673:18)
    at Promise._resolveCallback (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:466:57)
    at Promise._settlePromiseFromHandler (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:559:17)
    at Promise._settlePromise (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:604:18)
    at Promise._settlePromise0 (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:649:10)
    at Promise._settlePromises (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:729:18)
    at Promise._fulfill (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:673:18)
    at PromiseArray._resolve (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise_array.js:127:19)
    at PromiseArray._promiseFulfilled (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise_array.js:145:14)
    at Promise._settlePromise (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:609:26)
    at Promise._settlePromise0 (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:649:10)
    at Promise._settlePromises (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/promise.js:729:18)
    at _drainQueueStep (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:93:12)
    at _drainQueue (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:86:9)
    at Async._drainQueues (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:102:5)
    at Immediate.Async.drainQueues [as _onImmediate] (/var/www/ghost/versions/3.22.0/node_modules/bluebird/js/release/async.js:15:14)
    at runCallback (timers.js:705:18)
    at tryOnImmediate (timers.js:676:5)
    at processImmediate (timers.js:658:5)
    at process.topLevelDomainCallback (domain.js:126:23)

I have just updated to 3.22.1 and the issue has gone away. I can see and save the data as expected.

The issue has been fixed with this commit and released in 3.22.1 :tada: Please let us know if there are further issues with the new version.

Was this page helpful?
0 / 5 - 0 ratings