Hi.
It would be really nice to be able to update only selected lists. Something like this:
Regards.
Hi.
It would be really nice to be able to update only selected lists. Something like this:
Regards.
It's for development to ponder this, but I think that's unlikely to happen.
We've put in quite some effort to make gravity updates as fast as possible, which involves creating a complete shadow gravity database from scratch that only will be swapped in as active once creation has finished.
The advantage of that approach is twofold: DNS resolution can continue unhindered until the actual swap happens, and creation from scratch is considerably faster than removing outdated entries and adding new entries individually, as that would not only require additional logic to determine removals, but also rearrangement of db indices for each and any such single operation.
Trying to do the latter in order to only partially update an existing gravity database may well end up being slower than a complete gravity update, unless the blocklist's relative size would be really small.
But let's see how the development team regards this.
Ok I got it. But this isn't unachievable, right?
I understand that I should be patient and wait for someone from the development team to come here and write something about my "Feature request", right?
Best regards.
It would require quite a bit of additional code in a few places as well as database structure changes to gravity.db
as already explained by @Bucking_Horn. However, what is not clear to me is the why that is behind this feature request.
I don't think it is really advantageous as gravity updating happens in the background and you won't have any net benefit from updating only list A and D but not B, C, and E. Without a convincing background, I don't see any chance for this request.
Hello!
I've tried to explain that in that thread -> [Solved] Update only selected lists
Long story short. I've got several addresses that are updated daily, hence the need.
Considering the number of votes for the idea, maybe it's not worth it. Maybe in the future, sometime, you'll write an additional code (that would be great!)
Either way. Keep up with the great work! Thanks a lot !
Best regards
The majority of work goes into computing the lookup tree. Even if only a few items are changed, the entire tree needs to be rebuilt, so there is little gain in a feature to update only partially. What you may see a gain in is that we would not even try to download the deselected lists but immediately use a local copy of them.
However, in reality, Pi-hole already has a mechanism builtin to detect if a list has changed upstream (and, hence, needs re-downloading at all) using HTTP entity tags which most webservers support. You will see this when sudo pihole -g
outputs:
[✓] Status: No changes detected
I did just check again and see that this is not working reliably on raw.githubcontent.com URLs as their webserver does not seem to handle the If-Not-Modified
HTTP header. However, I do already have an idea and will propose a solution soon. With this, you should get what you are asking for but even in a fully automated way
edit done: