[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bacula-devel] Accurate file project hash tables


On Tuesday 25 March 2008 20:29:03 Eric Bollengier wrote:
> On Tuesday 25 March 2008 20:01:03 Peter Buschman wrote:
> > At 19:48 25.3.2008, David Boyes wrote:
> > > > The problem with all "libraries" is either porting, which apparently
> > >
> > >with
> > >
> > > > dbm
> > > > is not a problem, or the license.  About the only license that works
> > >
> > >with
> > >
> > > > Bacula is the BSD 3 clause license.  Can you point me to code that is
> > > > small
> > > > and appropriately licensed?
> > >
> > >Gdbm (the GNU variant of dbm) can be obtained from ftp.gnu.org or the
> > >Usual Sources. It's clean enough for Debian, but YMMV.
>
> GPL is uncompatible with bacula core...
>
> > >Ndbm (the 4.4BSD dbm and the one shipped (I think) on solaris) should be
> > >already present, or in most distributions. It's used by sendmail, so
> > >should be present anywhere there's sendmail.
> > >
> > >Whether these are clean enough for you to use, I don't have any way of
> > >telling. Gdbm is known to work well on Linux, Windows and Solaris; AIX
> > >has spotty reports, HP/UX also has spotty reports. Irix has ndbm.
> >
> > FWIW, all of the code for SQLite is in the public domain
> > (http://www.sqlite.org/copyright.html). Although I haven't looked
> > under the hood, it undoubtedly uses some kind of hash algorithm for
> > indexing and the authors note that they moved from gdbm to their own
> > library for performance reasons. Since SQLite compiles cleanly
> > everywhere Bacula does, it is possible there might be a dbm-like api
> > within easy reach and without license encumberments of any kind.
>
> SQlite is too big for just a hash usage, i don't think that you can use
> only the hash-disk code directly.
>
> It's true that good libraries exist for this job. For example DB Berkeley
> is present everywhere and the licence is compatible. But it add a
> dependency on client side.
>
> We can also try to detect if the library is present, and failback to bacula
> hash table code if not... ?

That would be pretty easy to do (let's say "trivial") -- a minor extension 
to ./configure and a few #ifdefs would do the job.  The nice thing is that we 
currently have code that works and is fast.  The only downside will be large 
datasets.


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Bacula-devel mailing list
Bacula-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/bacula-devel


This mailing list archive is a service of Copilotco.