Project Name: CouchDB
Proposal
The goal is to create an Apache top level project around the existing CouchDB open source project.
Key Features:
a REST API using JSON for data transport,
a JavaScript view engine based on Mozilla Spidermonkey,
a GNU Autotools build system supporting most POSIX systems
a built-in administration interface
experimental fulltext search with Lucene
Rationale
The goals of the project are aligned with the goals of the ASF, namely there is interest in (continuing to) foster a collaborative, consensus based development process, using an open and pragmatic software license, and a desire to create high quality software that leads the way in its field.
Initial goals
Features for next release
Incremental reduce support, for full map/reduce support.
Document validation model (validate live and replicated changes)
Documentation, Documentation, Documentation
Fulltext Search
Priority feature work
Live compaction
Extensible security model
LDAP authentication
More query capabilities exposed to HTTP, e.g. multi-key view lookups
Future feature work
Server storage partioning
Server failover clustering
Requested Features
hierarchical structure in documents
Current Status
Meritocracy
The project has recently transformed from being primarily a single person led (and funded) project to one with a number of diverse participants. Development has been coordinated primarily through a mailing list, with some IRC.
Community
The community consists of a set of independent developers, one of which recently joined IBM
Initial Developers
William Beh
Damien Katz
Jan Lehnardt
Christopher Lenz
Dirk Schalge
Noah Slater
Alignment
A database server with a strong focus on HTTP and REST principles.
Known Risks
Dependency on Erlang
Including some modifications to the HTTP server stack. The plan is to convert over to
MochiWeb (MIT licenced)
Dependency on Mozilla SpiderMonkey
Including small modifications, to be sent back to Mozilla
Orphaned Products
This is a new effort, and is far from being orphaned.
Inexperience with Open Source
All participants are active users and contributors to open source. One of them (Christopher Lenz) has experience as committer on other Apache projects.
Homogenous Developers
The exiting committers are spread over a number of countries and employers.
Reliance on Salaried Developers
Only one developer is being paid to work on CouchDB. Read
his views on the relationship he has with his employer.
Relationships with Other Apache Products
Experimental usage of Lucene
An excessive fascination with the Apache brand
This product started out independent of Apache and under a GPL license. After discussions with a number of people within IBM, Damien Katz agreed to pursue both incubation at the ASF, and employment at IBM
Documentation
Initial Source
Resides on
Google Code. The code has been recently relicensed from GPL to the Apache License, Version 2.0, in anticipation of this submission.
Source and Intellectual Property Submission Plan
The bulk of the core code was written by Damien Katz. Major contributions include: a GNU Autotools build system supporting most POSIX systems contributed by Noah Slater, a built-in administration interface provided by Christopher Lenz, and experimental fulltext search with Lucene by Jan Lehnardt. ICLAs either have been, or are in the process of being, submitted for all code involved in this submission.
ICLA's are already on file for:
Jan Lehnardt
Christopher Lenz
ICLA's in progress:
William Beh
Damien Katz
Dirk Schalge
Noah Slater
There are a few (as in single digit) number of files that we are continuing to sort through the licenses. These include Public Domain, X Consortium, and MITish licenses.
External Dependencies
ICU (MIT)
Erlang (Erlang Public License)
SpiderMonkey (Mozilla Public License)
Cryptography
Not applicable
Required Resources
Mailing lists:
couchdb-pmc for private PMC discussions (with moderated subscriptions)
couchdb-dev
couchdb-commits
couchdb-user
Subversion Directory:
Issue Tracking:
JIRA couchdb
Initial Committers
William Beh
Damien Katz
Jan Lehnardt
Christopher Lenz
Sam Ruby
Dirk Schalge
Noah Slater
Sponsors
Champion
Sam Ruby <
rubys@apache.org>
Nominated Mentors
Jim Jagielski
Gianugo Rabellino
Ted Leung
Sponsoring Entity
The Apache Incubator