I think I remember Rob making this point in Miami, but all of TMs APIs (REST, 
CRConfig, Health.json, etc…) are identical between the Java and Golang version, 
right?

What about compatibility with earlier versions of TC?

For example:
- Can a TC1.7 traffic ops configure a Golang TM?
- Does the Golang TM have any dependencies on a certain version of 
TrafficServer or astats?
- Whats the minimum required version of Traffic Router to use the Golang TM?
- I know Golang TMs can gossip with Java TMs, but can we mix versions here too? 
(i.e. TC1.7 Java TM with TC2.1 Golang TM)?

—Eric


> On Jul 14, 2017, at 1:00 PM, Jeff Elsloo <els...@apache.org> wrote:
> 
> Hi all,
> 
> We currently have two versions of Traffic Monitor: Java and golang.
> When we build all components, as far as I know, it results in a race
> condition between the two, as the resulting RPMs have the same
> filename. A PR[1] was opened to address the issue and the approach was
> to add `_go` to the version string used for the golang version's RPM.
> 
> Rob and I both think we (Comcast) have enough experience running the
> golang version that we have identified and corrected any major issues
> and that it is stable enough to be the preferred Traffic Monitor hence
> forth.
> 
> Therefore, I propose that within the project's directory structure, we:
>  1) rename traffic_monitor to traffic_monitor_legacy
>  2) rename traffic_monitor_golang to traffic_monitor
> 
> ..then work with the person that submitted the PR to take the same
> approach, except change the Java version's RPM name to contain
> `_legacy`.
> 
> I realize that this is a fairly significant change, the type that we
> typically reserve for major releases. The next major release, 3.0.0,
> is likely to be some time out in the future, and I don't know that we
> need to wait for it in order to make this change.
> 
> How does the group feel about the above proposal, and executing on it
> prior to the 3.0.0 release (i.e.: for 2.1.0)? Then, when we do
> actually prepare the 3.0.0 release, we can remove the Java version
> from the codebase entirely. Obviously this could impact anyone that
> has automated CI systems building components, in addition to the
> Apache CI we use ourselves.
> 
> Thoughts?
> 
> [1] https://github.com/apache/incubator-trafficcontrol/pull/731
> --
> Thanks,
> Jeff

Reply via email to