G'day,
This might not be the right spot but I'm hoping you'll either have an idea, or be able to point me in the right direction.
I use DSLR pretty extensively on a lot of my projects and it works like a charm. Super quick to take & restore snapshots while making the whole thing easy to manage.
I have one particular DB which is significantly larger than the rest, some 130GB+.
I have two versions of postgres running on my local machine, 13 & 17. (95% of my time is on v17 projects)
Loading the dump of the 130GB+ DB from the production server (which is running postgres 12 currently) to my local machine via pg_restore takes some 80-95 minutes, which is fine. It's around the same time regardless of if I load it into v13 or v17, which is good.
Taking or restoring a snapshot of the DB via DSLR in v13 takes ~80 seconds, which is fantastic and as expected for a DB of this size.
However, taking or restoring a snapshot of the same DB via DSLR in v17 takes ~36 minutes, which is less than great.
(if I trim some old data out of the DB and get it down to ~82GB, it reduces the snapshot/restore time to ~24 minutes)
I've had a squiz through what DSLR's actually doing under the hood and there isn't anything I could spy here that would be the culprit so it'll be something at the postgres level - but I can't find any clue on exactly what it might be. I haven't noticed this at all in any of my other projects (all others are running v17).
Do you know how I could dig into this deeper and figure out what's going on?
The config of my local postgres installations are off-the-shelf (nothing custom tweaked in either installation).
At the end of the day it's still significantly faster than pg_dump/pg_restore, but seeing the huge difference of ~80 seconds in v13 compared to 24-36 minutes in v17 with the same database dump has me a bit alarmed. (if it was slower in v13 but faster in v17 then I wouldn't mind 😁)
G'day,
This might not be the right spot but I'm hoping you'll either have an idea, or be able to point me in the right direction.
I use DSLR pretty extensively on a lot of my projects and it works like a charm. Super quick to take & restore snapshots while making the whole thing easy to manage.
I have one particular DB which is significantly larger than the rest, some 130GB+.
I have two versions of postgres running on my local machine, 13 & 17. (95% of my time is on v17 projects)
Loading the dump of the 130GB+ DB from the production server (which is running postgres 12 currently) to my local machine via
pg_restoretakes some 80-95 minutes, which is fine. It's around the same time regardless of if I load it into v13 or v17, which is good.Taking or restoring a snapshot of the DB via DSLR in v13 takes ~80 seconds, which is fantastic and as expected for a DB of this size.
However, taking or restoring a snapshot of the same DB via DSLR in v17 takes ~36 minutes, which is less than great.
(if I trim some old data out of the DB and get it down to ~82GB, it reduces the snapshot/restore time to ~24 minutes)
I've had a squiz through what DSLR's actually doing under the hood and there isn't anything I could spy here that would be the culprit so it'll be something at the postgres level - but I can't find any clue on exactly what it might be. I haven't noticed this at all in any of my other projects (all others are running v17).
Do you know how I could dig into this deeper and figure out what's going on?
The config of my local postgres installations are off-the-shelf (nothing custom tweaked in either installation).
At the end of the day it's still significantly faster than
pg_dump/pg_restore, but seeing the huge difference of ~80 seconds in v13 compared to 24-36 minutes in v17 with the same database dump has me a bit alarmed. (if it was slower in v13 but faster in v17 then I wouldn't mind 😁)