google-nomulus/java/google/registry/dns/writer
larryruili fa989e754b Add sharded DNS publishing capability
This enables sharded DNS publishing on a per-TLD basis. Instead of a TLD-wide lock, the sharded scheme locks each update on the shard number, allowing parallel writes to DNS.

We allow N (the number of shards) to be 0 or 1 for no sharding, and N > 1 for an N-way sharding scheme. Unless explicitly set, all TLDs default to a numShards of 0, so we don't have to reload all registry objects explicitly.

WARNING: This will change the lock name upon deployment for the PublishDnsAction from "<TLD> Dns Updates" to "<TLD> Dns Updates shard 0". This may cause concurrency issues if the underlying DNSWriter is not parallel-write tolerant (currently all production usages are ZonemanWriter, which is parallel-tolerant, so no issues are expected).

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=187525655
2018-03-06 19:14:26 -05:00
..
clouddns Add sharded DNS publishing capability 2018-03-06 19:14:26 -05:00
dnsupdate Remove unnecessary generic type arguments 2017-11-21 18:17:31 -05:00
BaseDnsWriter.java Extract multiple commit prevention in DNS writers into a base class 2017-09-20 10:27:17 -04:00
BUILD Rationalize logging statements across codebase 2018-01-19 14:56:45 -05:00
DnsWriter.java Make DnsWriter truly atomic 2017-08-29 16:40:07 -04:00
DnsWriterZone.java Update copyright year on all license headers 2017-02-02 16:27:22 -05:00
VoidDnsWriter.java Rationalize logging statements across codebase 2018-01-19 14:56:45 -05:00
VoidDnsWriterModule.java Update copyright year on all license headers 2017-02-02 16:27:22 -05:00