From abd4d9e935d576dc3cd8b2a1d18bcf0451f03c2c Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Sun, 23 Jun 2013 16:21:59 +0200 Subject: [PATCH] Make the batch nsupdate size configurable. --- itkacl-2.1/config.pm | 2 ++ itkacl-2.1/sync-itkacl.pl | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/itkacl-2.1/config.pm b/itkacl-2.1/config.pm index c5e9742..3362bda 100644 --- a/itkacl-2.1/config.pm +++ b/itkacl-2.1/config.pm @@ -22,6 +22,8 @@ our $db_name = 'itkacl'; our $db_user = 'itkacl'; our $db_pass = undef; +our $max_updates_per_transaction = 1000; + our $minimum_uid = 500; # Users that are included even though they are below $minimum_uid. diff --git a/itkacl-2.1/sync-itkacl.pl b/itkacl-2.1/sync-itkacl.pl index ccc4c56..868ee0f 100755 --- a/itkacl-2.1/sync-itkacl.pl +++ b/itkacl-2.1/sync-itkacl.pl @@ -90,20 +90,20 @@ sub update_zone { for my $entry (keys %entries) { next if (exists($current_entries{$entry})); - last if (++$num_lines == 1000); + last if (++$num_lines == $itkaclsyncconfig::max_updates_per_transaction); print NSUPDATE "update add $entry 10 A 127.0.0.1\n"; } for my $entry (keys %current_entries) { next if (exists($entries{$entry})); - last if (++$num_lines == 1000); + last if (++$num_lines == $itkaclsyncconfig::max_updates_per_transaction); print NSUPDATE "update delete $entry\n"; } print NSUPDATE "send\n"; close NSUPDATE; print "Made $num_lines updates.\n"; - if ($num_lines >= 1000) { - print "Note: Hit limit of 1000 updates, will continue in a separate transaction.\n"; + if ($num_lines >= $itkaclsyncconfig::max_updates_per_transaction) { + print "Note: Hit limit of $itkaclsyncconfig::max_updates_per_transaction updates, will continue in a separate transaction.\n"; return 0; } return 1; -- 2.39.2