)]}'
{"specs/mitaka/alias-records.rst":[{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":10,"context_line":"https://blueprints.launchpad.net/designate/+spec/alias-records"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ALIAS records (aka ANAME\u0027s, root CNAME\u0027s, root domain redirect, zone apex"},{"line_number":13,"context_line":"CNAME\u0027s) are a relatively new \"addition\" to DNS. These pseudo RR\u0027s are used"},{"line_number":14,"context_line":"to bypass restrictions placed within the DNS protocol that forbid the presence"},{"line_number":15,"context_line":"of a CNAME RR next to any other RR. This prevents some modern usage of DNS,"},{"line_number":16,"context_line":"for example, many CDNs or other static-content hosting sites like GitHub"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_d106cd1f","line":13,"updated":"2015-08-27 16:17:39.000000000","message":"This is not a deal breaker, but can you add a \"pseudo Resource Records (RR)\" before using RR as an abbreviation? It just reduces potential confusion for folks that may not automatically make the replacement.","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":10,"context_line":"https://blueprints.launchpad.net/designate/+spec/alias-records"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ALIAS records (aka ANAME\u0027s, root CNAME\u0027s, root domain redirect, zone apex"},{"line_number":13,"context_line":"CNAME\u0027s) are a relatively new \"addition\" to DNS. These pseudo RR\u0027s are used"},{"line_number":14,"context_line":"to bypass restrictions placed within the DNS protocol that forbid the presence"},{"line_number":15,"context_line":"of a CNAME RR next to any other RR. This prevents some modern usage of DNS,"},{"line_number":16,"context_line":"for example, many CDNs or other static-content hosting sites like GitHub"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_970bc9d5","line":13,"in_reply_to":"da20952f_d106cd1f","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"  example.com IN CNAME example.github.com"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"As a result, this capability is not widely supported by DNS backends. "},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_e420ec9d","line":36,"updated":"2015-08-27 16:17:39.000000000","message":"Trailing whitespace","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"  example.com IN CNAME example.github.com"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"As a result, this capability is not widely supported by DNS backends. "},{"line_number":37,"context_line":""},{"line_number":38,"context_line":""},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_370e7de5","line":36,"in_reply_to":"da20952f_e420ec9d","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":13997,"name":"SHIGEMATSU Mitsuhiro","email":"shigematsu.mitsuhiro@lab.ntt.co.jp","username":"pshige"},"change_message_id":"98245e4ba767c44bff67af771daa8ba62f28a76b","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Designate will expose a new \"ALIAS\" record set type via API; the record set will"},{"line_number":44,"context_line":"be flattened on a periodic basis into an \"A\" or \"AAAA\" record set for"},{"line_number":45,"context_line":"propagation to DNS backends. This solution is backend-independant and complies"},{"line_number":46,"context_line":"with RFCs implementations."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Acceptance Criteria"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_ae1d8f63","line":45,"updated":"2015-08-30 04:47:20.000000000","message":"s/independant/independent/","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Designate will expose a new \"ALIAS\" record set type via API; the record set will"},{"line_number":44,"context_line":"be flattened on a periodic basis into an \"A\" or \"AAAA\" record set for"},{"line_number":45,"context_line":"propagation to DNS backends. This solution is backend-independant and complies"},{"line_number":46,"context_line":"with RFCs implementations."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Acceptance Criteria"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_5711b102","line":45,"in_reply_to":"da20952f_ae1d8f63","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":48,"context_line":"Acceptance Criteria"},{"line_number":49,"context_line":"-------------------"},{"line_number":50,"context_line":"- An end user can create an \"ALIAS\" record set in the API and see that record"},{"line_number":51,"context_line":"  set through all other API requests (e.g. get record sets, export zone, import "},{"line_number":52,"context_line":"  zone)"},{"line_number":53,"context_line":"- All \"ALIAS\" records will be flattened to \"A/AAAA\" record sets for all"},{"line_number":54,"context_line":"  backends."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_4451980d","line":51,"updated":"2015-08-27 16:17:39.000000000","message":"Trailing whitespace","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":48,"context_line":"Acceptance Criteria"},{"line_number":49,"context_line":"-------------------"},{"line_number":50,"context_line":"- An end user can create an \"ALIAS\" record set in the API and see that record"},{"line_number":51,"context_line":"  set through all other API requests (e.g. get record sets, export zone, import "},{"line_number":52,"context_line":"  zone)"},{"line_number":53,"context_line":"- All \"ALIAS\" records will be flattened to \"A/AAAA\" record sets for all"},{"line_number":54,"context_line":"  backends."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_f7fc85b9","line":51,"in_reply_to":"da20952f_4451980d","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  resolution and flattening of ALIAS record sets."},{"line_number":59,"context_line":"- Operators can set the polling interval for the flattening process."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"**CDN Note**"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Not recommended for use with CDN implementations."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_e10c5e96","line":61,"updated":"2015-08-27 16:17:39.000000000","message":"You can use .. note:: here to get better formatting.","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":58,"context_line":"  resolution and flattening of ALIAS record sets."},{"line_number":59,"context_line":"- Operators can set the polling interval for the flattening process."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"**CDN Note**"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"Not recommended for use with CDN implementations."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_17f819c2","line":61,"in_reply_to":"da20952f_e10c5e96","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":13997,"name":"SHIGEMATSU Mitsuhiro","email":"shigematsu.mitsuhiro@lab.ntt.co.jp","username":"pshige"},"change_message_id":"98245e4ba767c44bff67af771daa8ba62f28a76b","unresolved":false,"context_lines":[{"line_number":120,"context_line":"We extend the `designate-zone-manager` service with an additional periodic"},{"line_number":121,"context_line":"task which identifies all ALIAS RRs within the zones it is responsible for."},{"line_number":122,"context_line":"Once these  RRs are identified, a periodic A/AAAA query will be issued for the"},{"line_number":123,"context_line":"ALIAS target. Upon reciept of a NOERROR response containing at least one A or"},{"line_number":124,"context_line":"AAAA RR, Designate\u0027s database will be updated to the \"real\" values,"},{"line_number":125,"context_line":"incrementing the SOA serial to trigger an AXFR towards the public facing"},{"line_number":126,"context_line":"nameservers."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_2e32dff2","line":123,"updated":"2015-08-30 04:47:20.000000000","message":"s/reciept/receipt/","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":120,"context_line":"We extend the `designate-zone-manager` service with an additional periodic"},{"line_number":121,"context_line":"task which identifies all ALIAS RRs within the zones it is responsible for."},{"line_number":122,"context_line":"Once these  RRs are identified, a periodic A/AAAA query will be issued for the"},{"line_number":123,"context_line":"ALIAS target. Upon reciept of a NOERROR response containing at least one A or"},{"line_number":124,"context_line":"AAAA RR, Designate\u0027s database will be updated to the \"real\" values,"},{"line_number":125,"context_line":"incrementing the SOA serial to trigger an AXFR towards the public facing"},{"line_number":126,"context_line":"nameservers."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_37251d5b","line":123,"in_reply_to":"da20952f_2e32dff2","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":126,"context_line":"nameservers."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"The flattened A and AAAA RRSet\u0027s will be created within the recordsets table"},{"line_number":129,"context_line":"as visible\u003d\u0027mdns\u0027, managed\u003dTrue, managed_resource_id\u003d\u003cALIAS RRSet ID\u003e. This"},{"line_number":130,"context_line":"prevents them from being visible to end users to avoid confusion, and provides"},{"line_number":131,"context_line":"for traceability of pseudo RRSets to their matching ALIAS RRSets."},{"line_number":132,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_c1acba37","line":129,"updated":"2015-08-27 16:17:39.000000000","message":"You can add backticks (`) to format this with a monospaced font, which helps communicate it is data.","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":126,"context_line":"nameservers."},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"The flattened A and AAAA RRSet\u0027s will be created within the recordsets table"},{"line_number":129,"context_line":"as visible\u003d\u0027mdns\u0027, managed\u003dTrue, managed_resource_id\u003d\u003cALIAS RRSet ID\u003e. This"},{"line_number":130,"context_line":"prevents them from being visible to end users to avoid confusion, and provides"},{"line_number":131,"context_line":"for traceability of pseudo RRSets to their matching ALIAS RRSets."},{"line_number":132,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_f7232554","line":129,"in_reply_to":"da20952f_c1acba37","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":128,"context_line":"The flattened A and AAAA RRSet\u0027s will be created within the recordsets table"},{"line_number":129,"context_line":"as visible\u003d\u0027mdns\u0027, managed\u003dTrue, managed_resource_id\u003d\u003cALIAS RRSet ID\u003e. This"},{"line_number":130,"context_line":"prevents them from being visible to end users to avoid confusion, and provides"},{"line_number":131,"context_line":"for traceability of pseudo RRSets to their matching ALIAS RRSets."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"The interval at which ALIAS records are flattened will be configurable,"},{"line_number":134,"context_line":"defaulting to 1800 seconds (30 minutes)."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_04af2095","line":131,"updated":"2015-08-27 16:17:39.000000000","message":"Could this be clarified a bit? It sounds like the zone manager\u0027s periodic task will be querying for records with visible\u003d\u0027mdns\u0027, managed\u003dTrue and using the managed_resource_id to do the work. \n\nIf that sounds about right, I think that could be clarified here, pointing out how the zone manager uses the new enum value (mdns) to find managed zones. \n\nAlso, since I\u0027m assuming the zone manager is only updates zones partitioned to it, is it safe to say that the periodic process should update all ALIAS records for that zone for each execution?","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":128,"context_line":"The flattened A and AAAA RRSet\u0027s will be created within the recordsets table"},{"line_number":129,"context_line":"as visible\u003d\u0027mdns\u0027, managed\u003dTrue, managed_resource_id\u003d\u003cALIAS RRSet ID\u003e. This"},{"line_number":130,"context_line":"prevents them from being visible to end users to avoid confusion, and provides"},{"line_number":131,"context_line":"for traceability of pseudo RRSets to their matching ALIAS RRSets."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"The interval at which ALIAS records are flattened will be configurable,"},{"line_number":134,"context_line":"defaulting to 1800 seconds (30 minutes)."}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_171fb908","line":131,"in_reply_to":"da20952f_04af2095","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"f16b0d01b5bcb4fbf62f5a87858f47e0327649ab","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Alternatives"},{"line_number":184,"context_line":"------------"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"Some DNS backends support flattening processes (e.g. PowerDNS). An alternative "},{"line_number":187,"context_line":"implementation is to create a new record set type called \"ALIAS\" that integrates"},{"line_number":188,"context_line":"with each respective backend\u0027s implementation."},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_a442f43c","line":186,"updated":"2015-08-27 16:17:39.000000000","message":"Trailing whitespace","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8098,"name":"Joe McBride","email":"jmcbride@rackspace.com","username":"mejoe"},"change_message_id":"b075747bfcf2576f8b4536f9117569f592f7e158","unresolved":false,"context_lines":[{"line_number":183,"context_line":"Alternatives"},{"line_number":184,"context_line":"------------"},{"line_number":185,"context_line":""},{"line_number":186,"context_line":"Some DNS backends support flattening processes (e.g. PowerDNS). An alternative "},{"line_number":187,"context_line":"implementation is to create a new record set type called \"ALIAS\" that integrates"},{"line_number":188,"context_line":"with each respective backend\u0027s implementation."},{"line_number":189,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"da20952f_b7192d24","line":186,"in_reply_to":"da20952f_a442f43c","updated":"2015-09-01 14:44:54.000000000","message":"Done","commit_id":"1645d87d2d96a127488b668f492f91f65eaae3f4"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"eb809df01a174874c3fe92e06d50d81225b8a096","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        Content-Type: application/json"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        {"},{"line_number":82,"context_line":"          \"recordset\" : {"},{"line_number":83,"context_line":"            \"name\" : \"example.org.\","},{"line_number":84,"context_line":"            \"description\" : \"This is an example ALIAS record set.\","},{"line_number":85,"context_line":"            \"type\" : \"ALIAS\","}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_0a07f01d","line":82,"updated":"2015-09-10 19:10:30.000000000","message":"The enclosing \u0027recordset\u0027 isn\u0027t needed/valid here anymore.","commit_id":"4241fa60a9944888d1755dc202a9cd68eb6e702d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"eb809df01a174874c3fe92e06d50d81225b8a096","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Central\u0027s create and update RecordSet methods will be updated to call a new"},{"line_number":98,"context_line":"RPC method implemented on the Zone Manager service to trigger immediate ALIAS"},{"line_number":99,"context_line":"flattening when ALIAS RRSets are created/updated."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"Central\u0027s delete RecordSet method will be updated to remove the associated"},{"line_number":102,"context_line":"flattened A and AAAA RecordSets - the mechanism for identifying these related"}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_2ab5147d","line":99,"updated":"2015-09-10 19:10:30.000000000","message":"Does this resolution happen in a synchronous fashion? ie. Before the API returns, to ensure that it is a valid recordset. Or is it simply set up, and the periodic task for the zone manager will come through and do the flattening. Or perhaps it just triggers the flattening of that recordset, but doesn\u0027t wait for it?\n\nWhat happens in the event that the hostname that a user enters can not be resolved? The zone transfer might have an issue if you have an incomplete record that is waiting for resolution. Should there be some default? Or perhaps, like other records, ensure that it is valid before returning?\n\nOr perhaps you create it, let the records/zone be PENDING, and if the resolution fails, set everything to ERROR and make the user delete/change their ALIAS record to something that resolves.","commit_id":"4241fa60a9944888d1755dc202a9cd68eb6e702d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"eb809df01a174874c3fe92e06d50d81225b8a096","unresolved":false,"context_lines":[{"line_number":118,"context_line":"First, for each zone it manages, `designate-zone-manager` service will get a `A` and `AAAA` resource recordsets that match the following columns in the recordsets table:"},{"line_number":119,"context_line":"- `visible\u003d\u0027mdns\u0027`"},{"line_number":120,"context_line":"- `managed\u003dTrue`"},{"line_number":121,"context_line":"- The `managed_resource_id` should be set and associated with an ALIAS type RR."},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"Given the resource recordsets selected above, the zone manager will get the"},{"line_number":124,"context_line":"parent ALIAS RR and issue a successful A/AAAA DNS query to get the IP address"}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_4d7e626b","line":121,"updated":"2015-09-10 19:10:30.000000000","message":"Could you not get all the ALIAS recordsets and work through them and update the A/AAAA RRset where managed_resource_id \u003d current id?","commit_id":"4241fa60a9944888d1755dc202a9cd68eb6e702d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"eb809df01a174874c3fe92e06d50d81225b8a096","unresolved":false,"context_lines":[{"line_number":124,"context_line":"parent ALIAS RR and issue a successful A/AAAA DNS query to get the IP address"},{"line_number":125,"context_line":"associated with the ALIAS target. Designate\u0027s database will be updated to the"},{"line_number":126,"context_line":"\"real\" values, incrementing the SOA serial to trigger an AXFR towards the"},{"line_number":127,"context_line":"public facing nameservers."},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"The interval at which ALIAS records are flattened will be configurable,"},{"line_number":130,"context_line":"defaulting to 1800 seconds (30 minutes)."}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_0dd86a7e","line":127,"updated":"2015-09-10 19:10:30.000000000","message":"I believe we wanted the nameserver to be queried to be configurable, it\u0027d be good to note that.","commit_id":"4241fa60a9944888d1755dc202a9cd68eb6e702d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"eb809df01a174874c3fe92e06d50d81225b8a096","unresolved":false,"context_lines":[{"line_number":162,"context_line":"+------+-----------+---------------------+-----------+-------+---------+"},{"line_number":163,"context_line":"| id   | domain_id | name                | tenant_id | type  | visible |"},{"line_number":164,"context_line":"+------+-----------+---------------------+-----------+-------+---------+"},{"line_number":165,"context_line":"| 1230 | 768       | example.github.com. | 391       | ALIAS | \u0027api\u0027   |"},{"line_number":166,"context_line":"| 0100 | 768       | example.org.        | 391       | A     | \u0027mdns\u0027  |"},{"line_number":167,"context_line":"+------+-----------+---------------------+-----------+-------+---------+"},{"line_number":168,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_2d1f6e5c","line":165,"updated":"2015-09-10 19:10:30.000000000","message":"You should add\n\n+---------+---------+-----------+---------+-------------------------------------+\n\nLines betwixt these rows to make the formatting come out right :)","commit_id":"4241fa60a9944888d1755dc202a9cd68eb6e702d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"eb809df01a174874c3fe92e06d50d81225b8a096","unresolved":false,"context_lines":[{"line_number":175,"context_line":"| 3212 | 0100         | 192.168.1.10 | 1       | ALIAS                 | 3211                |"},{"line_number":176,"context_line":"+------+--------------+--------------+---------+-----------------------+---------------------+"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"Alternatives"},{"line_number":180,"context_line":"------------"},{"line_number":181,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"da20952f_2d6d2ecc","line":178,"updated":"2015-09-10 19:10:30.000000000","message":"There are some configuration changes it might be nice to spell out, as well.","commit_id":"4241fa60a9944888d1755dc202a9cd68eb6e702d"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"cfb36bb1c9dd09f12ac76a0c6f349c1e5ece0a13","unresolved":false,"context_lines":[{"line_number":100,"context_line":"created/updated. Central will wait for the flattening process to"},{"line_number":101,"context_line":"complete before returning a response. If there is an error, the errror"},{"line_number":102,"context_line":"will be propagated accordingly for use in the API to inform the user"},{"line_number":103,"context_line":"any helpful error messages."},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Central\u0027s delete RecordSet method will be updated to remove the"},{"line_number":106,"context_line":"associated flattened A and AAAA RecordSets - the mechanism for"}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba15a1d1_7c9a1565","line":103,"updated":"2015-09-15 16:46:20.000000000","message":"I see the merits in this approach, good errors++. But we should ensure that something happening in the zone manager (some periodic task) doesn\u0027t block so long that this API call hangs. If that can be satisfied, I\u0027m ok with this synchronous approach.","commit_id":"0eaa773f66e0d40daa81b9d6aac38fd67e0576cf"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"07e3aa163611c012fa5b8632ebf50c3edfd8ff89","unresolved":false,"context_lines":[{"line_number":100,"context_line":"created/updated. Central will wait for the flattening process to"},{"line_number":101,"context_line":"complete before returning a response. If there is an error, the errror"},{"line_number":102,"context_line":"will be propagated accordingly for use in the API to inform the user"},{"line_number":103,"context_line":"any helpful error messages."},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"Central\u0027s delete RecordSet method will be updated to remove the"},{"line_number":106,"context_line":"associated flattened A and AAAA RecordSets - the mechanism for"}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba15a1d1_05505c5c","line":103,"in_reply_to":"ba15a1d1_7c9a1565","updated":"2015-09-15 17:46:52.000000000","message":"In my initial implementation the API reuqest doesn\u0027t block anyway, so I\u0027ll reword this rather than try to make the create synchronous.","commit_id":"0eaa773f66e0d40daa81b9d6aac38fd67e0576cf"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"cfb36bb1c9dd09f12ac76a0c6f349c1e5ece0a13","unresolved":false,"context_lines":[{"line_number":127,"context_line":"columns in the recordsets table:"},{"line_number":128,"context_line":"- `visible\u003d\u0027mdns\u0027`"},{"line_number":129,"context_line":"- `managed\u003dTrue`"},{"line_number":130,"context_line":"- The `managed_resource_id` should be set and associated with an ALIAS type RR."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"Given the resource recordsets selected above, the zone manager will"},{"line_number":133,"context_line":"get the parent ALIAS RR and issue a successful A/AAAA DNS query to get"}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba15a1d1_5c515161","line":130,"updated":"2015-09-15 16:46:20.000000000","message":"I\u0027m still not sure about this approach. Maybe it\u0027d be better to get the ALIAS recordsets that have type\u003dALIAS i the zone manager\u0027s shard and work through them? \n\nDoing the \n\n    The `managed_resource_id` should be set and associated with an ALIAS type RR.\n\nWould be a crazy expensive query, no?","commit_id":"0eaa773f66e0d40daa81b9d6aac38fd67e0576cf"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"07e3aa163611c012fa5b8632ebf50c3edfd8ff89","unresolved":false,"context_lines":[{"line_number":127,"context_line":"columns in the recordsets table:"},{"line_number":128,"context_line":"- `visible\u003d\u0027mdns\u0027`"},{"line_number":129,"context_line":"- `managed\u003dTrue`"},{"line_number":130,"context_line":"- The `managed_resource_id` should be set and associated with an ALIAS type RR."},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"Given the resource recordsets selected above, the zone manager will"},{"line_number":133,"context_line":"get the parent ALIAS RR and issue a successful A/AAAA DNS query to get"}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba15a1d1_e5cbe81c","line":130,"in_reply_to":"ba15a1d1_5c515161","updated":"2015-09-15 17:46:52.000000000","message":"Yes, I agree as well. I\u0027ll fix.","commit_id":"0eaa773f66e0d40daa81b9d6aac38fd67e0576cf"},{"author":{"_account_id":8174,"name":"Tim Simmons","email":"tim.r.simmons@gmail.com","username":"TimSimmons"},"change_message_id":"cfb36bb1c9dd09f12ac76a0c6f349c1e5ece0a13","unresolved":false,"context_lines":[{"line_number":189,"context_line":"| 3212 | 0100         | 192.168.1.10 | 1       | ALIAS                 | 3211                |"},{"line_number":190,"context_line":"+------+--------------+--------------+---------+-----------------------+---------------------+"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"Alternatives"},{"line_number":194,"context_line":"------------"},{"line_number":195,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba15a1d1_fc4aa5c4","line":192,"updated":"2015-09-15 16:46:20.000000000","message":"There are some configuration changes it might be nice to spell out, as well.","commit_id":"0eaa773f66e0d40daa81b9d6aac38fd67e0576cf"},{"author":{"_account_id":15171,"name":"Eric Larson","email":"eric.larson@rackspace.com","username":"elarson"},"change_message_id":"07e3aa163611c012fa5b8632ebf50c3edfd8ff89","unresolved":false,"context_lines":[{"line_number":189,"context_line":"| 3212 | 0100         | 192.168.1.10 | 1       | ALIAS                 | 3211                |"},{"line_number":190,"context_line":"+------+--------------+--------------+---------+-----------------------+---------------------+"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"Alternatives"},{"line_number":194,"context_line":"------------"},{"line_number":195,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"ba15a1d1_65ffd834","line":192,"in_reply_to":"ba15a1d1_fc4aa5c4","updated":"2015-09-15 17:46:52.000000000","message":"The biggest thing I can think of would be the time we wait between updates. I would think it should be configurable to a range such that someone could make sure we try to update the A record at least 1 every 5 minutes. I can imagine that it all depends on the backend and how often it might change.","commit_id":"0eaa773f66e0d40daa81b9d6aac38fd67e0576cf"}]}
