[Support] cheesemarathons repo


Recommended Posts

@cheesemarathon I just updated the Ghost docker and it won't start, getting a "wrong name for index" error.

 

I'm pasting this from the log:

 

[2021-03-19 16:08:49] [36mINFO[39m Ghost is running in production...
[2021-03-19 16:08:49] [36mINFO[39m Your site is now available on https://my.domain/ghost/
[2021-03-19 16:08:49] [36mINFO[39m Ctrl+C to shut down
[2021-03-19 16:08:49] [36mINFO[39m Ghost server started in 0.981s
[2021-03-19 16:08:49] [31mERROR[39m alter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
[31m
[31malter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'[39m

[1m[37mError ID:[39m[22m
[90m6447c370-88cd-11eb-955f-6b297b56d303[39m

[1m[37mError Code: [39m[22m
[90mER_WRONG_NAME_FOR_INDEX[39m

[90m----------------------------------------[39m

[90mInternalServerError: alter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
at new GhostError (/var/lib/ghost/versions/4.1.0/node_modules/@tryghost/errors/lib/errors.js:10:26)
at DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:63:32)
at processTicksAndRejections (internal/process/task_queues.js:97:5)

Error: ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
at Query.Sequence._packetToError (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)
at Query.ErrorPacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/sequences/Query.js:79:18)
at Protocol._parsePacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:291:23)
at Parser._parsePacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Parser.js:433:10)
at Parser.write (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Parser.js:43:10)
at Protocol.write (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:38:16)
at Socket.<anonymous> (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:88:28)
at Socket.<anonymous> (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:526:10)
at Socket.emit (events.js:314:20)
at addChunk (_stream_readable.js:297:12)
at readableAddChunk (_stream_readable.js:272:9)
at Socket.Readable.push (_stream_readable.js:213:10)
at TCP.onStreamRead (internal/stream_base_commons.js:188:23)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Connection.query (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:198:25)
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/dialects/mysql/index.js:134:18
at new Promise (<anonymous>)
at Client_MySQL._query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/dialects/mysql/index.js:128:12)
at Client_MySQL.query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/client.js:168:17)
at Runner.query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:151:36)
at Runner.queryArray (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:243:19)
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:38:25
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:277:24
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.0/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.0/core/boot.js:277:9)[39m
[39m
[2021-03-19 16:08:49] [35mWARN[39m Ghost is shutting down
[2021-03-19 16:08:49] [35mWARN[39m Ghost has shut down
[2021-03-19 16:08:49] [35mWARN[39m Your site is now offline
[2021-03-19 16:08:49] [35mWARN[39m Ghost was running for a few seconds

 

Link to comment
18 hours ago, vurt said:

@cheesemarathon I just updated the Ghost docker and it won't start, getting a "wrong name for index" error.

 

I'm pasting this from the log:

 


[2021-03-19 16:08:49] [36mINFO[39m Ghost is running in production...
[2021-03-19 16:08:49] [36mINFO[39m Your site is now available on https://my.domain/ghost/
[2021-03-19 16:08:49] [36mINFO[39m Ctrl+C to shut down
[2021-03-19 16:08:49] [36mINFO[39m Ghost server started in 0.981s
[2021-03-19 16:08:49] [31mERROR[39m alter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
[31m
[31malter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'[39m

[1m[37mError ID:[39m[22m
[90m6447c370-88cd-11eb-955f-6b297b56d303[39m

[1m[37mError Code: [39m[22m
[90mER_WRONG_NAME_FOR_INDEX[39m

[90m----------------------------------------[39m

[90mInternalServerError: alter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
at new GhostError (/var/lib/ghost/versions/4.1.0/node_modules/@tryghost/errors/lib/errors.js:10:26)
at DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:63:32)
at processTicksAndRejections (internal/process/task_queues.js:97:5)

Error: ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
at Query.Sequence._packetToError (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)
at Query.ErrorPacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/sequences/Query.js:79:18)
at Protocol._parsePacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:291:23)
at Parser._parsePacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Parser.js:433:10)
at Parser.write (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Parser.js:43:10)
at Protocol.write (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:38:16)
at Socket.<anonymous> (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:88:28)
at Socket.<anonymous> (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:526:10)
at Socket.emit (events.js:314:20)
at addChunk (_stream_readable.js:297:12)
at readableAddChunk (_stream_readable.js:272:9)
at Socket.Readable.push (_stream_readable.js:213:10)
at TCP.onStreamRead (internal/stream_base_commons.js:188:23)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Connection.query (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:198:25)
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/dialects/mysql/index.js:134:18
at new Promise (<anonymous>)
at Client_MySQL._query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/dialects/mysql/index.js:128:12)
at Client_MySQL.query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/client.js:168:17)
at Runner.query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:151:36)
at Runner.queryArray (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:243:19)
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:38:25
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:277:24
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.0/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.0/core/boot.js:277:9)[39m
[39m
[2021-03-19 16:08:49] [35mWARN[39m Ghost is shutting down
[2021-03-19 16:08:49] [35mWARN[39m Ghost has shut down
[2021-03-19 16:08:49] [35mWARN[39m Your site is now offline
[2021-03-19 16:08:49] [35mWARN[39m Ghost was running for a few seconds

 

 
I’m not 100% sure what’s going on, but it looks like ghost is trying to modify a database and a key that already exists. I don’t know how to fix this unfortunately and a quick google didn’t turn up anyone else having the same issue. I suggest you ask for help at https://forum.ghost.org/

 

If you link your post here I will keep an eye on it.

Thanks and sorry I couldn’t help more

  • Like 1
Link to comment
On 3/19/2021 at 12:19 PM, vurt said:

@cheesemarathon I just updated the Ghost docker and it won't start, getting a "wrong name for index" error.

 

I'm pasting this from the log:

 




[2021-03-19 16:08:49] [36mINFO[39m Ghost is running in production...
[2021-03-19 16:08:49] [36mINFO[39m Your site is now available on https://my.domain/ghost/
[2021-03-19 16:08:49] [36mINFO[39m Ctrl+C to shut down
[2021-03-19 16:08:49] [36mINFO[39m Ghost server started in 0.981s
[2021-03-19 16:08:49] [31mERROR[39m alter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
[31m
[31malter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'[39m

[1m[37mError ID:[39m[22m
[90m6447c370-88cd-11eb-955f-6b297b56d303[39m

[1m[37mError Code: [39m[22m
[90mER_WRONG_NAME_FOR_INDEX[39m

[90m----------------------------------------[39m

[90mInternalServerError: alter table `migrations_lock` add primary key `migrations_lock_pkey`(`lock_key`) - ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
at new GhostError (/var/lib/ghost/versions/4.1.0/node_modules/@tryghost/errors/lib/errors.js:10:26)
at DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:63:32)
at processTicksAndRejections (internal/process/task_queues.js:97:5)

Error: ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'
at Query.Sequence._packetToError (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)
at Query.ErrorPacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/sequences/Query.js:79:18)
at Protocol._parsePacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:291:23)
at Parser._parsePacket (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Parser.js:433:10)
at Parser.write (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Parser.js:43:10)
at Protocol.write (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:38:16)
at Socket.<anonymous> (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:88:28)
at Socket.<anonymous> (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:526:10)
at Socket.emit (events.js:314:20)
at addChunk (_stream_readable.js:297:12)
at readableAddChunk (_stream_readable.js:272:9)
at Socket.Readable.push (_stream_readable.js:213:10)
at TCP.onStreamRead (internal/stream_base_commons.js:188:23)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Connection.query (/var/lib/ghost/versions/4.1.0/node_modules/mysql/lib/Connection.js:198:25)
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/dialects/mysql/index.js:134:18
at new Promise (<anonymous>)
at Client_MySQL._query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/dialects/mysql/index.js:128:12)
at Client_MySQL.query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/client.js:168:17)
at Runner.query (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:151:36)
at Runner.queryArray (/var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:243:19)
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:38:25
at /var/lib/ghost/versions/4.1.0/node_modules/knex/lib/runner.js:277:24
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.0/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.0/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.0/core/boot.js:277:9)[39m
[39m
[2021-03-19 16:08:49] [35mWARN[39m Ghost is shutting down
[2021-03-19 16:08:49] [35mWARN[39m Ghost has shut down
[2021-03-19 16:08:49] [35mWARN[39m Your site is now offline
[2021-03-19 16:08:49] [35mWARN[39m Ghost was running for a few seconds

 

It seems like that it's trying to create an index but there is already one there, so it doesn't create the one it expects. And in the later step when its looking for the index, it doesn't find it and bombs.

 

Drop the key on the migrations_lock table and restart it.

It'll do the rest of the update and work again.

 

That's what I did with my test sites which doesn't have a lot of content and it seems to work.

But I *would* recommend a backup of what you have first though, include the db, just in case it updates something you don't want.

 

GL!

 

P.S. Ghost 4.0 is very different... You might want to check that out before you fully upgrade.

Edited by katadare
Added clarification. Added note about 4.0
  • Like 1
  • Thanks 1
Link to comment
On 3/20/2021 at 7:18 AM, cheesemarathon said:

 
I’m not 100% sure what’s going on, but it looks like ghost is trying to modify a database and a key that already exists. I don’t know how to fix this unfortunately and a quick google didn’t turn up anyone else having the same issue. I suggest you ask for help at https://forum.ghost.org/

 

If you link your post here I will keep an eye on it.

Thanks and sorry I couldn’t help more

No worries, I appreciate you for providing the docker already, I'm sure this is some code change with Ghost, it seems to have gotten a significant update to v4.

 

@cheesemarathon is there a way to roll back to a previous version?

Edited by vurt
Link to comment
6 hours ago, katadare said:

It seems like that it's trying to create an index but there is already one there, so it doesn't create the one it expects. And in the later step when its looking for the index, it doesn't find it and bombs.

 

Drop the key on the migrations_lock table and restart it.

It'll do the rest of the update and work again.

 

That's what I did with my test sites which doesn't have a lot of content and it seems to work.

But I *would* recommend a backup of what you have first though, include the db, just in case it updates something you don't want.

 

GL!

 

P.S. Ghost 4.0 is very different... You might want to check that out before you fully upgrade.

 

Sorry I'm not familiar with "drop the key", do you mean delete "migrations_lock_lock_key_unique" from the database?

Link to comment
5 hours ago, vurt said:

No worries, I appreciate you for providing the docker already, I'm sure this is some code change with Ghost, it seems to have gotten a significant update to v4.

 

@cheesemarathon is there a way to roll back to a previous version?

Yes in the docker settings where it says repository change it from ghost to ghost:4.0

 

4.1.0 is the latest so that should roll you back a bit.

 

Link to comment
On 3/21/2021 at 8:51 PM, vurt said:

 

Sorry I'm not familiar with "drop the key", do you mean delete "migrations_lock_lock_key_unique" from the database?

 

Yup, delete the index with that name on the migrations_lock table.

You can get to it via mysql-workbench and delete it from there.

 

It might be better to roll back to 4.0 as @cheesemarathon suggested above.

Link to comment

Anyone know what happened here? Site was up for about 4 or so days and then some random database issue caused it to shut down? I haven't changed anything with the DB or anything. This just happened without my knowing or touching anything:

 

[2021-03-28 22:01:00] [36mINFO[39m Ghost is running in production...
[2021-03-28 22:01:00] [36mINFO[39m Your site is now available on http://******.******.download/
[2021-03-28 22:01:00] [36mINFO[39m Ctrl+C to shut down
[2021-03-28 22:01:00] [36mINFO[39m Ghost server started in 2.247s
[2021-03-28 22:01:01] [36mINFO[39m Database is in a ready state.
[2021-03-28 22:01:01] [36mINFO[39m Ghost database ready in 3.364s
[2021-03-28 22:01:06] [36mINFO[39m Ghost booted in 8.348s
[2021-03-29 00:00:27] [35mWARN[39m Ghost is shutting down
[2021-03-29 00:00:27] [35mWARN[39m Ghost has shut down
[2021-03-29 00:00:27] [35mWARN[39m Your site is now offline
[2021-03-29 00:00:27] [35mWARN[39m Ghost was running for 2 hours
[2021-03-29 00:05:51] [36mINFO[39m Ghost is running in production...
[2021-03-29 00:05:51] [36mINFO[39m Your site is now available on http://******.*******.download/
[2021-03-29 00:05:51] [36mINFO[39m Ctrl+C to shut down
[2021-03-29 00:05:51] [36mINFO[39m Ghost server started in 4.826s
[2021-03-29 00:05:51] [31mERROR[39m connect ECONNREFUSED 192.168.1.50:3306
[31m
[31mconnect ECONNREFUSED 192.168.1.50:3306[39m

[33m"Unknown database error"[39m

[1m[37mError ID:[39m[22m
[90m500[39m

[1m[37mError Code: [39m[22m
[90mECONNREFUSED[39m

[90m----------------------------------------[39m

[90mDatabaseError: connect ECONNREFUSED 192.168.1.50:3306
at DatabaseError.KnexMigrateError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:7:26)
at new DatabaseError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:55:26)
at /var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/database.js:48:19
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.2/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.2/core/boot.js:277:9)

Error: connect ECONNREFUSED 192.168.1.50:3306
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1144:16)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Protocol.handshake (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:51:23)
at Connection.connect (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/Connection.js:116:18)
at /var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:68:18
at new Promise (<anonymous>)
at Client_MySQL.acquireRawConnection (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:63:12)
at create (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/client.js:290:39)[39m
[39m
[2021-03-29 00:05:51] [35mWARN[39m Ghost is shutting down
[2021-03-29 00:05:52] [35mWARN[39m Ghost has shut down
[2021-03-29 00:05:52] [35mWARN[39m Your site is now offline
[2021-03-29 00:05:52] [35mWARN[39m Ghost was running for a few seconds

 

Link to comment
On 3/29/2021 at 11:03 AM, plantsandbinary said:

Anyone know what happened here? Site was up for about 4 or so days and then some random database issue caused it to shut down? I haven't changed anything with the DB or anything. This just happened without my knowing or touching anything:

 


[2021-03-28 22:01:00] [36mINFO[39m Ghost is running in production...
[2021-03-28 22:01:00] [36mINFO[39m Your site is now available on http://******.******.download/
[2021-03-28 22:01:00] [36mINFO[39m Ctrl+C to shut down
[2021-03-28 22:01:00] [36mINFO[39m Ghost server started in 2.247s
[2021-03-28 22:01:01] [36mINFO[39m Database is in a ready state.
[2021-03-28 22:01:01] [36mINFO[39m Ghost database ready in 3.364s
[2021-03-28 22:01:06] [36mINFO[39m Ghost booted in 8.348s
[2021-03-29 00:00:27] [35mWARN[39m Ghost is shutting down
[2021-03-29 00:00:27] [35mWARN[39m Ghost has shut down
[2021-03-29 00:00:27] [35mWARN[39m Your site is now offline
[2021-03-29 00:00:27] [35mWARN[39m Ghost was running for 2 hours
[2021-03-29 00:05:51] [36mINFO[39m Ghost is running in production...
[2021-03-29 00:05:51] [36mINFO[39m Your site is now available on http://******.*******.download/
[2021-03-29 00:05:51] [36mINFO[39m Ctrl+C to shut down
[2021-03-29 00:05:51] [36mINFO[39m Ghost server started in 4.826s
[2021-03-29 00:05:51] [31mERROR[39m connect ECONNREFUSED 192.168.1.50:3306
[31m
[31mconnect ECONNREFUSED 192.168.1.50:3306[39m

[33m"Unknown database error"[39m

[1m[37mError ID:[39m[22m
[90m500[39m

[1m[37mError Code: [39m[22m
[90mECONNREFUSED[39m

[90m----------------------------------------[39m

[90mDatabaseError: connect ECONNREFUSED 192.168.1.50:3306
at DatabaseError.KnexMigrateError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:7:26)
at new DatabaseError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:55:26)
at /var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/database.js:48:19
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.2/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.2/core/boot.js:277:9)

Error: connect ECONNREFUSED 192.168.1.50:3306
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1144:16)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Protocol.handshake (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:51:23)
at Connection.connect (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/Connection.js:116:18)
at /var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:68:18
at new Promise (<anonymous>)
at Client_MySQL.acquireRawConnection (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:63:12)
at create (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/client.js:290:39)[39m
[39m
[2021-03-29 00:05:51] [35mWARN[39m Ghost is shutting down
[2021-03-29 00:05:52] [35mWARN[39m Ghost has shut down
[2021-03-29 00:05:52] [35mWARN[39m Your site is now offline
[2021-03-29 00:05:52] [35mWARN[39m Ghost was running for a few seconds

 

Looks like Ghost can't connect to your db. Check it's running and available from another service.

Link to comment
16 hours ago, cheesemarathon said:

Looks like Ghost can't connect to your db. Check it's running and available from another service.

 

Why would it suddenly not be able to connect to the DB all of a sudden? No other apps are having any problem with my DB.

 

Here's another log of it dying again for no conceivable reason:

 

[2021-04-03 14:48:14] �[36mINFO�[39m "GET /favicon.png" �[32m200�[39m 6ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /playstation-5/" �[32m200�[39m 500ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /assets/built/screen.css?v=a5ff9c7929" �[32m200�[39m 13ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /assets/built/casper.js?v=a5ff9c7929" �[32m200�[39m 9ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /content/images/size/w100/2021/03/1-1.png" �[32m200�[39m 10ms
[2021-04-05 00:00:28] �[35mWARN�[39m Ghost is shutting down
[2021-04-05 00:00:28] �[35mWARN�[39m Ghost has shut down
[2021-04-05 00:00:28] �[35mWARN�[39m Your site is now offline
[2021-04-05 00:00:28] �[35mWARN�[39m Ghost was running for 3 days
[2021-04-05 00:04:46] �[36mINFO�[39m Ghost is running in production...
[2021-04-05 00:04:46] �[36mINFO�[39m Your site is now available on http://blog.********.********/
[2021-04-05 00:04:46] �[36mINFO�[39m Ctrl+C to shut down
[2021-04-05 00:04:46] �[36mINFO�[39m Ghost server started in 4.835s
[2021-04-05 00:04:47] �[31mERROR�[39m connect ECONNREFUSED 192.168.1.50:3306
�[31m
�[31mconnect ECONNREFUSED 192.168.1.50:3306�[39m

�[33m"Unknown database error"�[39m

�[1m�[37mError ID:�[39m�[22m
�[90m500�[39m

�[1m�[37mError Code: �[39m�[22m
�[90mECONNREFUSED�[39m

�[90m----------------------------------------�[39m

�[90mDatabaseError: connect ECONNREFUSED 192.168.1.50:3306
at DatabaseError.KnexMigrateError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:7:26)
at new DatabaseError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:55:26)
at /var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/database.js:48:19
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.2/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.2/core/boot.js:277:9)

Error: connect ECONNREFUSED 192.168.1.50:3306
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1144:16)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Protocol.handshake (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:51:23)
at Connection.connect (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/Connection.js:116:18)
at /var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:68:18
at new Promise (<anonymous>)
at Client_MySQL.acquireRawConnection (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:63:12)
at create (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/client.js:290:39)�[39m
�[39m
[2021-04-05 00:04:47] �[35mWARN�[39m Ghost is shutting down
[2021-04-05 00:04:47] �[35mWARN�[39m Ghost has shut down
[2021-04-05 00:04:47] �[35mWARN�[39m Your site is now offline
[2021-04-05 00:04:47] �[35mWARN�[39m Ghost was running for a few seconds

 

Here's my DB log:

 

-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 40-initialise-db: executing...
[cont-init.d] 40-initialise-db: exited 0.
[cont-init.d] 90-warning: executing...

******************************************************
******************************************************
* *
* *
* This image will soon be rebased *
* from ubuntu to alpine. *
* Please be aware, this may cause issues *
* It is strongly recommended to make backups *
* of your config and databases before *
* updating your image to the alpine base. *
* *
* *
******************************************************
******************************************************
[cont-init.d] 90-warning: exited 0.
[cont-init.d] 99-custom-scripts: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
210405 03:04:51 mysqld_safe Logging to syslog.
210405 03:04:51 mysqld_safe Starting mysqld daemon with databases from /config/databases

 

I can't find any problems with the DB, nor can I find any other apps that are logging any DB connection issues. I'm just using the plain ole' MariaDB container from Linuxserver.io

Link to comment
5 hours ago, plantsandbinary said:

 

Why would it suddenly not be able to connect to the DB all of a sudden? No other apps are having any problem with my DB.

 

Here's another log of it dying again for no conceivable reason:

 


[2021-04-03 14:48:14] �[36mINFO�[39m "GET /favicon.png" �[32m200�[39m 6ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /playstation-5/" �[32m200�[39m 500ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /assets/built/screen.css?v=a5ff9c7929" �[32m200�[39m 13ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /assets/built/casper.js?v=a5ff9c7929" �[32m200�[39m 9ms
[2021-04-03 14:48:14] �[36mINFO�[39m "GET /content/images/size/w100/2021/03/1-1.png" �[32m200�[39m 10ms
[2021-04-05 00:00:28] �[35mWARN�[39m Ghost is shutting down
[2021-04-05 00:00:28] �[35mWARN�[39m Ghost has shut down
[2021-04-05 00:00:28] �[35mWARN�[39m Your site is now offline
[2021-04-05 00:00:28] �[35mWARN�[39m Ghost was running for 3 days
[2021-04-05 00:04:46] �[36mINFO�[39m Ghost is running in production...
[2021-04-05 00:04:46] �[36mINFO�[39m Your site is now available on http://blog.********.********/
[2021-04-05 00:04:46] �[36mINFO�[39m Ctrl+C to shut down
[2021-04-05 00:04:46] �[36mINFO�[39m Ghost server started in 4.835s
[2021-04-05 00:04:47] �[31mERROR�[39m connect ECONNREFUSED 192.168.1.50:3306
�[31m
�[31mconnect ECONNREFUSED 192.168.1.50:3306�[39m

�[33m"Unknown database error"�[39m

�[1m�[37mError ID:�[39m�[22m
�[90m500�[39m

�[1m�[37mError Code: �[39m�[22m
�[90mECONNREFUSED�[39m

�[90m----------------------------------------�[39m

�[90mDatabaseError: connect ECONNREFUSED 192.168.1.50:3306
at DatabaseError.KnexMigrateError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:7:26)
at new DatabaseError (/var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/errors.js:55:26)
at /var/lib/ghost/versions/4.1.2/node_modules/knex-migrator/lib/database.js:48:19
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at async DatabaseStateManager.getState (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:39:13)
at async DatabaseStateManager.makeReady (/var/lib/ghost/versions/4.1.2/core/server/data/db/state-manager.js:72:25)
at async initDatabase (/var/lib/ghost/versions/4.1.2/core/boot.js:49:5)
at async bootGhost (/var/lib/ghost/versions/4.1.2/core/boot.js:277:9)

Error: connect ECONNREFUSED 192.168.1.50:3306
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1144:16)
--------------------
at Protocol._enqueue (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:144:48)
at Protocol.handshake (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/protocol/Protocol.js:51:23)
at Connection.connect (/var/lib/ghost/versions/4.1.2/node_modules/mysql/lib/Connection.js:116:18)
at /var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:68:18
at new Promise (<anonymous>)
at Client_MySQL.acquireRawConnection (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/dialects/mysql/index.js:63:12)
at create (/var/lib/ghost/versions/4.1.2/node_modules/knex/lib/client.js:290:39)�[39m
�[39m
[2021-04-05 00:04:47] �[35mWARN�[39m Ghost is shutting down
[2021-04-05 00:04:47] �[35mWARN�[39m Ghost has shut down
[2021-04-05 00:04:47] �[35mWARN�[39m Your site is now offline
[2021-04-05 00:04:47] �[35mWARN�[39m Ghost was running for a few seconds

 

Here's my DB log:

 


-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 40-initialise-db: executing...
[cont-init.d] 40-initialise-db: exited 0.
[cont-init.d] 90-warning: executing...

******************************************************
******************************************************
* *
* *
* This image will soon be rebased *
* from ubuntu to alpine. *
* Please be aware, this may cause issues *
* It is strongly recommended to make backups *
* of your config and databases before *
* updating your image to the alpine base. *
* *
* *
******************************************************
******************************************************
[cont-init.d] 90-warning: exited 0.
[cont-init.d] 99-custom-scripts: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
210405 03:04:51 mysqld_safe Logging to syslog.
210405 03:04:51 mysqld_safe Starting mysqld daemon with databases from /config/databases

 

I can't find any problems with the DB, nor can I find any other apps that are logging any DB connection issues. I'm just using the plain ole' MariaDB container from Linuxserver.io

Have you checked you can connect to the db with the same username and password? I agree it's very strange but the only error it is reporting is connection refused.

Link to comment

Hey, I've been using CloudCommander reverse proxied with NginxProxyManager. However, BOTH panes seem to always be the same. So moving into one directory means BOTH panes show the content of that directory.

 

If I open the webui locally via eg. 192.168.1.100, it works normally.

 

Is there some way to fix it so it works properly via a reverse proxy?

Link to comment
On 4/9/2021 at 9:28 AM, plantsandbinary said:

Hey, I've been using CloudCommander reverse proxied with NginxProxyManager. However, BOTH panes seem to always be the same. So moving into one directory means BOTH panes show the content of that directory.

 

If I open the webui locally via eg. 192.168.1.100, it works normally.

 

Is there some way to fix it so it works properly via a reverse proxy?

My nginx config is below. I also use oauth2 proxy so you will need to remove those sections.

 

server {
	listen 80;
	server_name cloudcmd.MYDOMAIN.com;
	return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;
  server_name cloudcmd.MYDOMAIN.com;
  
  ssl_certificate /config/keys/letsencrypt/fullchain.pem;
  ssl_certificate_key /config/keys/letsencrypt/privkey.pem;
  ssl_prefer_server_ciphers on;
  add_header Strict-Transport-Security max-age=2592000;

  location /oauth2/ {
    proxy_pass       http://UNRAID_IP:4180;
    proxy_set_header Host                    $host;
    proxy_set_header X-Real-IP               $remote_addr;
    proxy_set_header X-Scheme                $scheme;
    proxy_set_header X-Auth-Request-Redirect $request_uri;
  }
  location = /oauth2/auth {
    proxy_pass       http://UNRAID_IP:4180;
    proxy_set_header Host             $host;
    proxy_set_header X-Real-IP        $remote_addr;
    proxy_set_header X-Scheme         $scheme;
    # nginx auth_request includes headers but not body
    proxy_set_header Content-Length   "";
    proxy_pass_request_body           off;
  }

  location / {
    auth_request /oauth2/auth;
    error_page 401 = /oauth2/sign_in;

    # pass information via X-User and X-Email headers to backend,
    # requires running with --set-xauthrequest flag
    auth_request_set $user   $upstream_http_x_auth_request_user;
    auth_request_set $email  $upstream_http_x_auth_request_email;
    proxy_set_header X-User  $user;
    proxy_set_header X-Email $email;

    # if you enabled --cookie-refresh, this is needed for it to work with auth_request
    auth_request_set $auth_cookie $upstream_http_set_cookie;
    add_header Set-Cookie $auth_cookie;

    proxy_pass http://UNRAID_IP:8765/;
  }
}

 

Edited by cheesemarathon
Link to comment
On 4/4/2021 at 12:10 PM, cheesemarathon said:

Have you tried removing the index as mentioned earlier?

I am not sure how to do that. I installed mysql-workbench but it doesnt seem to play nicely with mariadb. Also per the same suggesiton you are mentioning above, the revert to 4.0 was suggested *instead of* touching the database. It would be greatly appreciated if you would provide the command(s) needed to remove the index.

 

edit: when i asked a friend to take a look he wondered if there was an issue with the container provided by you since it "upgrades the base image when pulling a new version". Is this something of concern?

Edited by hmoney007
Link to comment
On 4/15/2021 at 9:56 PM, cheesemarathon said:

My nginx config is below. I also use oauth2 proxy so you will need to remove those sections.

 


server {
	listen 80;
	server_name cloudcmd.MYDOMAIN.com;
	return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;
  server_name cloudcmd.MYDOMAIN.com;
  
  ssl_certificate /config/keys/letsencrypt/fullchain.pem;
  ssl_certificate_key /config/keys/letsencrypt/privkey.pem;
  ssl_prefer_server_ciphers on;
  add_header Strict-Transport-Security max-age=2592000;

  location /oauth2/ {
    proxy_pass       http://UNRAID_IP:4180;
    proxy_set_header Host                    $host;
    proxy_set_header X-Real-IP               $remote_addr;
    proxy_set_header X-Scheme                $scheme;
    proxy_set_header X-Auth-Request-Redirect $request_uri;
  }
  location = /oauth2/auth {
    proxy_pass       http://UNRAID_IP:4180;
    proxy_set_header Host             $host;
    proxy_set_header X-Real-IP        $remote_addr;
    proxy_set_header X-Scheme         $scheme;
    # nginx auth_request includes headers but not body
    proxy_set_header Content-Length   "";
    proxy_pass_request_body           off;
  }

  location / {
    auth_request /oauth2/auth;
    error_page 401 = /oauth2/sign_in;

    # pass information via X-User and X-Email headers to backend,
    # requires running with --set-xauthrequest flag
    auth_request_set $user   $upstream_http_x_auth_request_user;
    auth_request_set $email  $upstream_http_x_auth_request_email;
    proxy_set_header X-User  $user;
    proxy_set_header X-Email $email;

    # if you enabled --cookie-refresh, this is needed for it to work with auth_request
    auth_request_set $auth_cookie $upstream_http_set_cookie;
    add_header Set-Cookie $auth_cookie;

    proxy_pass http://UNRAID_IP:8765/;
  }
}

 

 

Couldn't get this to even load after removing the oauth2 stuff. :(

Link to comment
On 4/18/2021 at 1:59 AM, hmoney007 said:

I am not sure how to do that. I installed mysql-workbench but it doesnt seem to play nicely with mariadb. Also per the same suggesiton you are mentioning above, the revert to 4.0 was suggested *instead of* touching the database. It would be greatly appreciated if you would provide the command(s) needed to remove the index.

 

edit: when i asked a friend to take a look he wondered if there was an issue with the container provided by you since it "upgrades the base image when pulling a new version". Is this something of concern?

Have you tried reverting to version 4.0? You can do this by opening the container settings in the unRAID UI and then changing the repository value from "ghost" to "ghost:4"

 

With regards to your friends question, I do not provide the container image. The ghost organisation builds and manages the image. I just provide a template for unRAID. This template will automatically use the latest image provided by the ghost organisation. There should be no issue with this but if you are concerned you can fix the version you run the same way I describe in the previous paragraph or you can turn off automatic updates for the ghost container and just run them manually when you are happy the update is stable.

 

As for removing the index, if your having the same issue as one of the other commenters (I've not seen your logs so I can't be sure) then running the below should remove the index causing issues. I would backup your db before touching it however. Make sure that the ghost container is not running whilst you make changes.

 

alter table `migrations_lock` drop key migrations_lock_lock_key_unique

 

As for the issues with mysql-workbench I would recommend HeidiSQL for Windows and DBeaver for Mac. Both work well with Maria/MySQL databases. Failing this, ask for help at the Ghost forum where this issue may have been seen before.

Link to comment
5 hours ago, plantsandbinary said:

 

Couldn't get this to even load after removing the oauth2 stuff. :(

Like i said before I don't run Nginx proxy manager I run SWAG by linuxserver, but that uses nginx so my configs should work for you. I just wrote the one below and it loads fine on my server and domain. Just don't forget to change the XXX.XXX bit for your IP and change yourdomain for your domain. Also if your running cloudcmd on a different port to 8765 then you will have to change that also. This config assumes that you run cloudcmd as a sub domain rather than a sub directory e.g. cloudcmd.mydomain.com not mydomain.com/cloudcmd

 

I hope that all makes sense 🙂  just shout if not.

 

server {
	listen 80;
	server_name cloudcmd.mydomain.com;
	return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;
  server_name cloudcmd.mydomain.com;
  
  ssl_certificate /config/keys/letsencrypt/fullchain.pem;
  ssl_certificate_key /config/keys/letsencrypt/privkey.pem;
  ssl_prefer_server_ciphers on;
  add_header Strict-Transport-Security max-age=2592000;

  location / {
    proxy_pass http://XXX.XXX.XXX.XXX:8765/;
  }
}

 

Link to comment
On 4/19/2021 at 2:05 PM, cheesemarathon said:

Have you tried reverting to version 4.0? You can do this by opening the container settings in the unRAID UI and then changing the repository value from "ghost" to "ghost:4"

 

With regards to your friends question, I do not provide the container image. The ghost organisation builds and manages the image. I just provide a template for unRAID. This template will automatically use the latest image provided by the ghost organisation. There should be no issue with this but if you are concerned you can fix the version you run the same way I describe in the previous paragraph or you can turn off automatic updates for the ghost container and just run them manually when you are happy the update is stable.

 

As for removing the index, if your having the same issue as one of the other commenters (I've not seen your logs so I can't be sure) then running the below should remove the index causing issues. I would backup your db before touching it however. Make sure that the ghost container is not running whilst you make changes.

 


alter table `migrations_lock` drop key migrations_lock_lock_key_unique

 

As for the issues with mysql-workbench I would recommend HeidiSQL for Windows and DBeaver for Mac. Both work well with Maria/MySQL databases. Failing this, ask for help at the Ghost forum where this issue may have been seen before.

 

 

Thanks for the detailed response. Yes I did attempt forcing the 4.0 branch but the errors from db were still present. I will do as you suggested and take a fresh backup of the db prior to attempting the fix and report back. I'll also take a look at your suggested replacements for mysql-workbench.

 

On another note i am curious if there would be a major downside to baking mariadb into the container. I noticed my mariadb container uses like 30mb of ram and cpu sits at 0% usage with multiple containers writing to it. Either way, thanks again for the response!

Link to comment
  • 2 weeks later...
12 hours ago, frakman1 said:

For those suffering from the recent error:

 


Error: ER_WRONG_NAME_FOR_INDEX: Incorrect index name 'migrations_lock_lock_key_unique'

 

I was able to recover by droping the two tables migrations and migrations_lock tables as mentioned in the ghost user forum

I used the adminer docker that lets you do it easily via a web UI.

 

Thanks for the update! @hmoney007 try frankman's suggestion.

Link to comment

Hi @cheesemarathon,

 

The icon for Oauth Proxy sticks for a while when update it by editing the docker but it keeps loosing it.

Looks like the icon url in the template

 

https://raw.githubusercontent.com/oauth2-proxy/oauth2-proxy/master/docs/logos/OAuth2_Proxy_icon.png 

 

has moved and is now

https://github.com/oauth2-proxy/oauth2-proxy/raw/master/docs/static/img/logos/OAuth2_Proxy_icon.png

 

can you please update the template to include it?

Apologies if you have already updated it and I am probably somehow still on old template. In that case can you suggest how to update it :)

Thanks.

Link to comment
  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.