couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Filipe Manana (JIRA)" <>
Subject [jira] Updated: (COUCHDB-740) Fix Erlang view server when calling a filter function
Date Fri, 16 Apr 2010 20:36:24 GMT


Filipe Manana updated COUCHDB-740:

    Attachment: erlang-view-server-filter-function-fix-3.patch

Looking into it with more attention,

1) couch_query_servers is generating the userCtx json object and passing it to the view server
(js or erlang)

2) the userCtx is always present in the Req object, therefore it's useless to serialize the
userCtx into json and pass it to the view server, where the only action taken is to pass it
to the filter function.

All the tests are still passing. 

There isn't any example in the test cases or the book where the userCtx is being passed as
a 3rd argument to a filter function. Therefore this cleanup is highly unlikely to break someone's
code. All examples are showing req.userCtx.

> Fix Erlang view server when calling a filter function
> -----------------------------------------------------
>                 Key: COUCHDB-740
>                 URL:
>             Project: CouchDB
>          Issue Type: Bug
>    Affects Versions: 0.11
>            Reporter: Filipe Manana
>         Attachments: erlang-view-server-filter-function-fix-2.patch, erlang-view-server-filter-function-fix-3.patch,
> Reported to the dev mailing list by Ivan Bodunov:
> "Hi,
> After I wrote my filter in JavaScript I decided to rewrite it in Erlang and
> faced some problems.
> Even the simplest possible filter written in Erlang causes crashes in
> CouchDB.
> Filter is
>    "filters": { "foo": "fun({Doc},Req) -> true end." }
> Command to trigger the filter is
>    # curl -X GET http://localhost:5984/mytemp/_changes?filter=erl/foo
> Following link contains the crash report:
> CouchDB 0.11 on Mac.
> "
> patch attached with test

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message