Hi,

After updating to the latest revision from trunk I couldn't build Pig due to the issue described in PIG-4019. The parameter list of org.apache.tez.dag.api.VertexManagerPluginContext#setVertexParallelism has changed and however Daniel's patch fixed it, my build still failed. I found, that it's because of the Tez SNAPSHOT dependencies. The ivy resolver for apache-snapshots sets checkModified="true" which updates the metadata of Tez dependencies if there are modifications, but since the intermediary Tez builds are published under the same revision (0.5.0-incubating-SNAPSHOT) the local cache will only be populated for the first time with the jars but won't get updated afterwards. So API changes at Tez side which affects Pig, will result in build error.
Am I the only one with this issue? Or am I missing something?

A solution would be to set 'changing="true"' for the Tez dependencies in ivy.xml. Thus ivy would always look up the repository to check whether there are changes and would download the most recent timestamped 0.5.0 snapshot jars. There are, however couple of issues with this:

- Resolution of Tez jars will fail during offline builds, when one sets usecacheonly="true" for ivy:resolve. Since by
  default it's not the case, I wouldn't worry about this.
- This attribute definitely needs to be removed once Tez dependencies evolve from SNAPSHOT

Please let me know what you think and I'll file a JIRA if necessary.

Thanks,
Lorand

Reply via email to