On Thursday, June 18, 2015, Jan Lehnardt <j...@apache.org> wrote:

>
> > On 17 Jun 2015, at 17:50, Jan Lehnardt <j...@apache.org <javascript:;>>
> wrote:
> >
> > Hey all,
> >
> > Alexander, Bob and I had a bit of a brainstorming session today on what
> is missing to get 2.0 out the door. We talked about missing features and
> what to do about them. The following notes is what we think is best, but of
> course, these are just suggestions and we’d love your feedback! Especially
> on the TBD items.
> >
> > The notes are dense, let us know if you have any questions or need any
> clarification :)
> >
> > * * *
> >
> > # Missing Features
> >
> > ## Availble in 1.x but missing in 2.x
> >
> > - [X] vhosts: Done.
> >
> > - [X] /_config on :5984
> >  - no cluster wide config
> >  - per-node config can be set from any node:
> >  - only expose /_node_config/<node-fqdn>/<section>/<key>
> >  - first stab of this already in master
> >  - Fauxton to offer “tabbed” interface for per-cluster config view
> >  - post 2.0, if we find a backing store that would give us a
> cluster-consistent :5984/_config/section/key, we can enable that.
> >
> >
> > - [X]: /_stats on :5984
> >  - same as with /_config:
> >      - /_node_stats/<fqdn>/<etc>
>
>
> Updates on _node_config and _node_stats
>
> We will now propose /_node/<fqdn>/_config and /_node/<fqdn>/_stats with
> the option of adding more endpoints there, later.
>
> The rest stays as is.



+1


-Russell



>
> Best
> Jan
> --
>
> >
> >
> > - [X] dynamic http endpoint configuration for :5984
> >  - integrate Cloudant’s work that allows for erlang applications to
> register their own routes in a priv/ file. Adding a route is done by adding
> an app, changing a route is by updating an app and its priv/ file
> >  - /_config can be used to disable endpoints
> >  - TBD: what if two applications define the same endpoint? Options:
> >      - undefined
> >      - offending app doesn’t load
> >      - server doesn’t start / stops
> >      - define that endpoints can’t be overwritten, define strict sort
> order for loading, load core apps preferred to ensure working node +
> *handwaving*
> >
> >
> > - [X] externals & proxy
> > - keep both for 2.0
> > - add to chttpd routes loading:
> >   - 1. load all application routes
> >   - 2. load [external] and [proxy] routes
> >   - 3. listen to [external] and [proxy] config changes and adjust route
> map at runtime
> >
> >
> > - [X] logging configuration of level & file & apps (
> http://docs.couchdb.org/en/latest/config/logging.html)
> >  - dynamic configuration of the log file won’t be possible anymore,
> because lager works differently
> >  - since the configuration for lager is more comprehensive, 1.x-style
> configuration is no longer possible
> >  - TBD: however, it is possible to set the log level at runtime. Two
> options:
> >       -  setting /_config/log:backend/level to <logatom> / couch_log
> listens to config updates and calls
> https://github.com/basho/lager#runtime-loglevel-changes
> >       - new endpoint, e.g. PUT /_log/backend/<logatom>
> >  - log atoms change, mark as BC break
> >
> >
> > - [X] rewrites (?)
> >  - keep, should just work
> >
> >
> > - [X] documentation
> >  - we have (or will have soon): API docs, upgrade/migration guides / new
> features
> >  - we *don’t* have: how the cluster works (dynamo + couch specific
> details)
> >    - needs help!
> >
> > - [X ] build script
> >  - finish unix version (Jan)
> >  - integrate with Mac app (Jan)
> >  - TBD: Windows
> >       - Can Nick North help?
> >       - maybe ship 2.0 with experimental Windows, since the code has
> never run on Windows(?)
> >
> >
> > ## Missing in 2.x
> >
> > - [X] single node mode
> >  - “single node mode” just means “cluster of one”
> >  - the chttp-layer might be slower than couch_httpd, if so, we have good
> incentives to make this fast.
> >  - going from 1.x to 2.x-single-node will requires changes in how an app
> uses the CouchDB API (as per our Breaking Changes documentation).
> >  - :5986 is 127.0.0.1-only and strongly discouraged for general use, ops
> folks might want to use it.
> >
> >
> > - [X] add/remove nodes, cluster rebalance
> >  - add/remove node needs documentation
> >  - rebalancing:
> >       - tool to help figure out what needs doing
> >       - might be ready by 2.0, post 2.0 otherwise
> >
> > * * *
> >
> > Best
> > Jan
> > --
> >
>
> --
> Professional Support for Apache CouchDB:
> http://www.neighbourhood.ie/couchdb-support/
>
>

Reply via email to