Thanks. I agree Windows -1's in test-patch should not block commits. --Matt
On Mon, Mar 4, 2013 at 2:30 PM, Konstantin Shvachko <shv.had...@gmail.com>wrote: > On Mon, Mar 4, 2013 at 12:22 PM, Matt Foley <mfo...@hortonworks.com> > wrote: > > Konstantine, you have voted -1, and stated some requirements before > you'll > > withdraw that -1. As I plan to do work to fulfill those requirements, I > > want to make sure that what I'm proposing will, in fact, satisfy you. > > That's why I'm asking, if we implement full "test-patch" integration for > > Windows, does it seem to you that that would provide adequate support? > > Yes. > > > I have learned not to presume that my interpretation is correct. My > > interpretation of item #1 is that test-patch provides pre-commit build, > so > > it would satisfy item #1. But rather than assuming that I am > interpreting > > it correctly, I simply want your agreement that it would, or if not, > > clarification why it won't. > > I agree it will satisfy my item #1. > I did not agree in my previous email, but I changed my mind based on > the latest discussion. I have to explain why now. > I was proposing nightly build because I did not want pre-commit build > for Windows block commits to Linux. But if people are fine just ignoring > -1s for the Windows part of the build it should be good. > > > Regarding item #2, it is also my interpretation that test-patch provides > an > > on-demand (perhaps 20-minutes deferred) Jenkins build and unit test, with > > logs available to the developer, so it would satisfy item #2. But rather > > than assuming that I am interpreting it correctly, I simply want your > > agreement that it would, or if not, clarification why it won't. > > It will satisfy my item #2 in the following way: > I can duplicate your pre-commit build for Windows and add an input > parameter, which would let people run the build on their patches > chosen from local machine rather than attaching them to Jiras. > > Thanks, > --Konstantin > > > In agile terms, you are the Owner of these requirements. Please give me > > owner feedback as to whether my proposed work sounds like it will satisfy > > the requirements. > > > > Thank you, > > --Matt > > > > > > On Sun, Mar 3, 2013 at 12:16 PM, Konstantin Shvachko < > shv.had...@gmail.com> > > wrote: > >> > >> Didn't I explain in details what I am asking for? > >> > >> Thanks, > >> --Konst > >> > >> On Sun, Mar 3, 2013 at 11:08 AM, Matt Foley <mfo...@hortonworks.com> > >> wrote: > >> > Hi Konstantin, > >> > I'd like to point out two things: > >> > First, I already committed in this thread (email of Thu, Feb 28, 2013 > at > >> > 6:01 PM) to providing CI for Windows builds. So please stop acting > like > >> > I'm > >> > resisting this idea or something. > >> > Second, you didn't answer my question, you just kvetched about the > >> > phrasing. > >> > So I ask again: > >> > > >> > Will providing full "test-patch" integration (pre-commit build and > unit > >> > test > >> > triggered by Jira "Patch Available" state) satisfy your request for > >> > functionality #1 and #2? Yes or no, please. > >> > > >> > Thanks, > >> > --Matt > >> > > >> > > >> > On Sat, Mar 2, 2013 at 7:32 PM, Konstantin Shvachko > >> > <shv.had...@gmail.com> > >> > wrote: > >> >> > >> >> Hi Matt, > >> >> > >> >> On Sat, Mar 2, 2013 at 12:32 PM, Matt Foley <mfo...@hortonworks.com> > >> >> wrote: > >> >> > Konstantin, > >> >> > I would like to explore what it would take to remove this perceived > >> >> > impediment -- > >> >> > >> >> Glad you decided to explore. Thank you. > >> >> > >> >> > although I reserve the right to argue that this is not > >> >> > pre-requisite to merging the cross-platform support patch. > >> >> > >> >> It's your right indeed. So as mine to question what the platform > >> >> support means for you, which I believe remained unclear. > >> >> I do not impede the change as you should have noticed. My requirement > >> >> comes from my perception of the support, which means to me exactly > two > >> >> things: > >> >> 1. The ability to recognise the code is broken for the platform > >> >> 2. The ability to test new patches on the platform > >> >> The latter is problematic, as many noticed in this thread, for those > >> >> whose customary environment does not include Windows. > >> >> > >> >> > If we implemented full "test-patch" support for Windows on trunk, > >> >> > would > >> >> > that > >> >> > fulfill both your items #1 and #2? Please note that: > >> >> > a) Pushing the "Patch Available" button in Jira shall cause a > >> >> > pre-commit > >> >> > build to start within, I believe, 20 minutes. > >> >> > b) That build keeps logs for both java build and unit tests for > >> >> > several > >> >> > days, that are accessible to all viewers. > >> >> > >> >> In item #1 I mostly asking for the nightly build, which is simpler > >> >> than "test-patch". The latter would be ideal from the platform > support > >> >> viewpoint, but it is for the community to decide if we want to add > >> >> extra +3 hours to the build. > >> >> Nightly build in my understanding is triggered by the timer rather > >> >> than by Jira's "submit patch" button. On Jenkins build configuration > >> >> you can specify it under "Build periodically". > >> >> > >> >> > So, does this provide sufficient on-demand support that we don't > have > >> >> > to > >> >> > implement a whole new on-demand VM support structure of some sort > for > >> >> > #2 > >> >> > (which would be an extraordinary and impractical demand)? > >> >> > >> >> I did not mention VMs. Item #2 means a build, which runs "test-patch" > >> >> target with the file specified by a user (instead of a jira > >> >> attachment). > >> >> When user clicks "Build Now" link a box is displayed where the user > >> >> can enter the file path containing the patch. This can be specified > in > >> >> the Build Configuration under "This build is parameterized" by > >> >> choosing AddParameter / FileParameter. The build can run on the same > >> >> Windows machine as the nightly build. > >> >> Such build will let people test their patches for Windows on Jenkins > >> >> if they don't posses a license for the right version of Windows. > >> >> I hope this will not turn into extraordinary or impractical effort. > >> >> > >> >> Thanks, > >> >> --Konst > >> >> > >> >> > Thanks, > >> >> > --Matt > >> >> > > >> >> > > >> >> > On Fri, Mar 1, 2013 at 12:18 PM, Konstantin Shvachko > >> >> > <shv.had...@gmail.com> > >> >> > wrote: > >> >> >> > >> >> >> -1 > >> >> >> We should have a CI infrastructure in place before we can commit > to > >> >> >> supporting Windows platform. > >> >> >> > >> >> >> Eric is right Win/Cygwin was supported since day one. > >> >> >> I had a Windows box under my desk running nightly builds back in > >> >> >> 2006-07. > >> >> >> People were irritated but I was filing windows bugs until 0.22 > >> >> >> release. > >> >> >> Times changing and I am glad to see wider support for Win > platform. > >> >> >> > >> >> >> But in order to make it work you guys need to put the CI process > in > >> >> >> place > >> >> >> > >> >> >> 1. windows jenkins build: could be nightly or PreCommit. > >> >> >> - Nightly would mean that changes can be committed to trunk based > on > >> >> >> linux PreCommit build. And people will file bugs if the change > broke > >> >> >> Windows nightly build. > >> >> >> - PreCommit-win build will mean automatic reporting failed tests > to > >> >> >> respective jira blocking commits the same way as it is now with > >> >> >> linux > >> >> >> PreCommit builds. > >> >> >> We should discuss which way is more efficient for developers. > >> >> >> > >> >> >> 2. On-demand-windows Jenkins build. > >> >> >> I see it as a build to which I can attach my patch and the build > >> >> >> will > >> >> >> run my changes on a dedicated windows box. > >> >> >> That way people can test their changes without having personal > >> >> >> windows > >> >> >> nodes. > >> >> >> > >> >> >> I think this is the minimal set of requirement for us to be able > to > >> >> >> commit to the new platform. > >> >> >> Right now I see only one windows related build > >> >> >> https://builds.apache.org/view/Hadoop/job/Hadoop-1-win/ > >> >> >> Which was failing since Sept 8, 2012 and did not run in the last > >> >> >> month. > >> >> >> > >> >> >> Thanks, > >> >> >> --Konst > >> >> >> > >> >> >> On Thu, Feb 28, 2013 at 8:47 PM, Eric Baldeschwieler > >> >> >> <eri...@hortonworks.com> wrote: > >> >> >> > +1 (non-binding) > >> >> >> > > >> >> >> > A few of observations: > >> >> >> > > >> >> >> > - Windows has actually been a supported platform for Hadoop > since > >> >> >> > 0.1 > >> >> >> > . > >> >> >> > Doug championed supporting windows then and we've continued to > do > >> >> >> > it > >> >> >> > with > >> >> >> > varying vigor over time. To my knowledge we've never made a > >> >> >> > decision > >> >> >> > to > >> >> >> > drop windows support. The change here is improving our support > >> >> >> > and > >> >> >> > dropping > >> >> >> > the requirement of cigwin. We had Nutch windows users on the > list > >> >> >> > in > >> >> >> > 2006 > >> >> >> > and we've been supporting windows FS requirements since > inception. > >> >> >> > > >> >> >> > - A little pragmatism will go a long way. As a community we've > >> >> >> > got > >> >> >> > to > >> >> >> > stay committed to keeping hadoop simple (so it does work on many > >> >> >> > platforms) > >> >> >> > and extending it to take advantage of key emerging OS/hardware > >> >> >> > features, > >> >> >> > such as containers, new FSs, virtualization, flash ... We > should > >> >> >> > all > >> >> >> > plan > >> >> >> > to let new features & optimizations emerge that don't work > >> >> >> > everywhere, if > >> >> >> > they are compelling and central to hadoop's mission of being THE > >> >> >> > best > >> >> >> > fabric > >> >> >> > for storing and processing big data. > >> >> >> > > >> >> >> > - A UI project like KDE has to deal with the MANY differences > >> >> >> > between > >> >> >> > windows and linux UI APIs. Hadoop faces no such complex > challenge > >> >> >> > and hence > >> >> >> > can be maintained from a single codeline IMO. It is mostly > >> >> >> > abstracted from > >> >> >> > the OS APIs via Java and our design choices. Where it is not we > >> >> >> > can > >> >> >> > continue to add plugable abstractions. > >> >> >> > > >> >> > > >> >> > > >> > > >> > > > > > >