On Tue, Jun 15, 2010 at 6:43 AM, Masood Mortazavi <masoodmortaz...@gmail.com> wrote: > On Mon, Jun 14, 2010 at 9:04 PM, David Strauss <da...@fourkitchens.com>wrote: > >> On 2010-06-15 03:58, Masood Mortazavi wrote: >> > Hi, >> > >> > My assumption is that what one finds in >> > >> > interface/thrift/gen-java >> > >> > is actually generated code. >> > >> > If so, why is it checked in as source under SVN? >> > >> > (Certainly, the avro generated code doesn't seem to be checked in.) >> > >> > Regards, >> > Masood >> > >> >> It simplifies the end user's build process. If the code isn't in >> Subversion, then you'd need to get all the Thrift dependencies and do >> the generation yourself just to build Cassandra. Sure, there are other >> methods that don't involve checking into Subversion, but they're more >> complex. >> > > > Thank you very much for explaining this. It helps me understand the > reasoning. > > Out of curiosity, I'm wondering whether those dependencies are any more than > one or more jar files in the lib. The lib is already loaded with many other > jar files . . .
The thrift compiler is no java program. It is a written in C++ and have quite a few dependencies (boost for instance if memory serves) that don't make distribution that easy. > (I'm not a thrift expert but did work on RMI in the JDK, some years go, so I > can guess what may be needed to generate the code. Avro, in Cassandra, seems > to have been able to get away with some jar inclusion in lib. Having one > system for Avro and quite another for Thrift seems a bit odd but maybe I'm > missing something larger.) > > - m. >