You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficcontrol.apache.org by GitBox <gi...@apache.org> on 2018/09/05 22:24:59 UTC
[GitHub] ajschmidt opened a new pull request #2785: In Traffic Router
Support Snapshots which only update Delivery Services
ajschmidt opened a new pull request #2785: In Traffic Router Support Snapshots which only update Delivery Services
URL: https://github.com/apache/trafficcontrol/pull/2785
Added support for individual Delivery Service updates from a new snapshot
(cherry picked from commit ad31d744e265be62841ef7c9cd7228c62f2f8a14)
Replaced config handling with new SnapshotEventsProcessor
(cherry picked from commit 029be7f4fad50164a988213e9977a5d1d4612d60)
removed debugging logs and config
added support for individual delivery serivce updates on snapshot
added support for individual delivery serivce updates on snapshot
#### What does this PR do?
Allows TR to compare the existing CR Config with a new snapshot and only load the changes instead of the entire CR Config. Only changes to Delivery Services and/or the mappings between Delivery Services and Caches are considered. If any other changes are found in the snapshot then the entire CR Config is loaded. Any Zone changes resulting from a DS change are also reloaded. This feature is only available with snapshots created by TO version 1.4+. Older versions snapshots will cause a full reload of the CR Config if there are any changes detected.
Fixes #(issue_number)
#### Which TC components are affected by this PR?
- [ ] Documentation
- [ ] Grove
- [ ] Traffic Analytics
- [ ] Traffic Monitor
- [ ] Traffic Ops
- [ ] Traffic Ops ORT
- [ ] Traffic Portal
- [ X] Traffic Router
- [ ] Traffic Stats
- [ ] Traffic Vault
- [ ] Other _________
#### What is the best way to verify this PR?
This PR is best verified by running the test cases triggered by the Maven Verify target:
mvn -X clean verify -Djava.library.path=[local path to tc_native lib]
Manual testing can be performed by creating a customized crconfig in JSON format. TR assumes that the new snapshot crconfig is complete representation of the CDN and not just a delta. It compares the current crconfig it is using with the new snapshot. Modified Delivery Services must be marked with a new field 'anyModified' and changes to the Cache mappings must also have a new 'lastModified' field. Use traffic_router/core/src/test/resources/unit/UpdateDsSnap.json as an example.
#### Check all that apply
- [ X] This PR includes tests
- [ ] This PR includes documentation updates
- [ ] This PR includes an update to CHANGELOG.md
- [ X] This PR includes all required license headers
- [ ] This PR includes a database migration (ensure that migration sequence is correct)
- [ ] This PR fixes a serious security flaw. Read more: [www.apache.org/security](http://www.apache.org/security/)
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services