You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by Jan Lehnardt <ja...@apache.org> on 2008/04/08 16:10:11 UTC
Shameless Plug
Dear CouchDB enthusiasts,
this is a shameless self promotion as well as
a cross post. Both is not nice and I hope you
can forgive me. In return I have a treat for you
at the end of this mail :-)
I am scheduled to give a CouchDB hands-on
workshop at XTech under the provision that
enough people go and register for my tutorial.
If no one shows up, my workshop gets cancelled.
Can you figure out what to do? :-)
Here's more information about the workshop:
http://jan.prima.de/~jan/plok/archives/123-Hands-on-CouchDB-Workshop-at-XTech.html
and http://2008.xtech.org/public/schedule/detail/487
And h is more information about XTech:
http://2008.xtech.org/
It'd be cool, if I could meet some of you in person!
Thanks for sitting though this little commercial.
You've earned your treat:
You can make fun of me waving arms around
and trying to explain CouchDB in 60 minutes
on this video of my presentation at the Mountain
West Ruby Conference earlier this month:
http://mtnwestrubyconf2008.confreaks.com/10lehnardt.html
It starts a bit slow but gets better throughout.
Enjoy,
and thanks again!
Jan
--
And may The Couch be with you
Re: Cryptic view errors popping up
Posted by Guby <gu...@gmail.com>.
Thanks for the fast answers guys!
I'll try running on the trunk version locally and I'll probably apply
the patch on my server.
>Anyway, please file a bug report including the full error report:
> <https://issues.apache.org/jira/browse/COUCHDB>
> Other helpful information includes the size of your database and
the number of views you have.
Since Damien already found the error I wont be filing a bug, but I'll
happily answer the other questions.
The database is really small right now since I am recreating it all
the time.
I am currently using 9 different views, but it'll will probably be 12
or 13 be the time I am in production.
And I'll hopefully be storing a LOT of data (for me anyway...
gigabytes), if people use my system that is :)
Thanks again
Best regards
Seb
On Apr 8, 2008, at 10:12 PM, Damien Katz wrote:
> Guby, Thank you for posting this. From the stack trace you posted
> I've found the problem, the fix is now checked into the trunk.
>
> The database should be fine and after upgrading everything *should*
> work. If you don't want to upgrade to the trunk (it's more
> unstable), we can create a 0.7.3.
>
> In the meantime you can manually apply this patch:
>
> Index: couch_btree.erl
> ===================================================================
> --- couch_btree.erl (revision 646162)
> +++ couch_btree.erl (working copy)
> @@ -289,17 +289,20 @@
> ],
> {ok, ResultList, Bt}.
>
> +
> modify_kpnode(Bt, KPs, [], ResultNode, QueryOutput) ->
> % processed all queries for the current tree
> {ok, lists:reverse(ResultNode, KPs), QueryOutput, Bt};
>
> +modify_kpnode(Bt, [], Actions, [], QueryOutput) ->
> + modify_node(Bt, nil, Actions, QueryOutput);
> +
> modify_kpnode(Bt, [], Actions, [{_Key, PointerInfo} | ResultNode],
> QueryOutput) ->
> {ok, ChildKPs, QueryOutput2, Bt2} = modify_node(Bt, PointerInfo,
> Actions, QueryOutput),
> {ok, lists:reverse(ResultNode, ChildKPs), QueryOutput2, Bt2};
>
> modify_kpnode(Bt, [{Key,PointerInfo} | RestKPs], Actions,
> ResultNode, QueryOutput) ->
> - % Split the actions into two lists, queries of values less
> - % than equals, and greater than the current key
> + % Split the actions into two lists, queries of values <= and >
> than the current key
> SplitFun = fun({_ActionType, ActionKey, _ActionValue}) ->
> not less(Bt, Key, ActionKey)
> end,
>
>
>
> On Apr 8, 2008, at 6:07 PM, Guby wrote:
>> Some additional info if that might help you:
>>
>> The three views that are causing me trouble today look like this.
>> It has worked perfectly
>>
>> function(doc) {
>> if (doc.class == "Feed"){
>> map(doc.attributes.feed_id, doc);
>> }
>> }
>>
>> function(doc) {
>> if (doc.class == "Feed" && doc.attributes.being_checked == false) {
>> map(doc.attributes.next_check, doc);
>> }
>> }
>>
>> function(doc) {
>> if (doc.class == "Feed" && doc.attributes.being_checked == true) {
>> map(doc.attributes.next_check, doc);
>> }
>> }
>>
>> A typical document with class == "Feed" would look like this:
>>
>> {
>> "_id":"57FE8B5DDF5FA55537D76EEB7C4F7C62",
>> "_rev":"346516073",
>> "class":"Feed",
>> "attributes":
>> {
>> "title":"The Unofficial Apple Weblog (TUAW)",
>> "feed_url":"http:\/\/www.tuaw.com\/rss.xml",
>> "url":"http:\/\/www.tuaw.com",
>> "feed_id":"http:\/\/www.tuaw.com\/rss.xml",
>> "description":"The Unofficial Apple Weblog (TUAW)",
>> "last_updated":null,
>> "copyright":"Copyright 2008 Weblogs, Inc. The contents of this
>> feed are available for non-commercial use only.",
>> "being_checked":false,
>> "generator":"Blogsmith http:\/\/www.blogsmith.com\/",
>> "image":"http:\/\/www.tuaw.com\/media\/feedlogo.gif",
>> "next_check":1207692728,
>> "was_scheduled_for_check":1207691521
>> }
>> }
>>
>>
>> Best regards
>> Sebastian
>>
>>
>>
>> On Apr 8, 2008, at 6:59 PM, Guby wrote:
>>
>>> I am running CouchDB 0.7.2
>>> I love CouchDB when it is working! And it is really powerful all
>>> the stuff one can do with the views, but:
>>> Every so often, more often lately, views that have worked
>>> perfectly start returning errors... and really cryptic errors too!
>>> If I remove the view and add it again it might work for a little
>>> while, and then the error comes back again.
>>> I can't really make anything out of this error message, but if any
>>> of you do, please let me know if you understand what might be wrong!
>>>
>>> Best regards
>>> Sebastian
>>>
>>>
>>> [error] [emulator] Error in process <0.10595.0> with exit value:
>>> {function_clause,[{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
>>> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
>>> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
>>> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
>>> {"class","Feed"},{"attributes",{obj,[{"title"...
>>>
>>>
>>>
>>> =ERROR REPORT==== 8-Apr-2008::18:53:44 ===
>>> Error in process <0.10595.0> with exit value: {function_clause,
>>> [{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
>>> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
>>> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
>>> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
>>> {"class","Feed"},{"attributes",{obj,[{"title"...
>>>
>>> [info] [<0.10594.0>] HTTP Error (code 500): {obj,
>>> [{error,"function_clause"},
>>> {reason,"[{couch_btree,modify_kpnode,
>>> \n [{btree,<0.8093.0>,\n
>>> {6790526,7},\n #Fun<couch_view_group.
>>> 11.87050650>},\n [],\n [{insert,
>>> {1207692728,\"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
>>> \n {obj,[{\"_id\",
>>> \"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
>>> \n {\"_rev\",\"346516073\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",
>>> \n \"The Unofficial Apple
>>> Weblog (TUAW)\"},\n {\"feed_url
>>> \",\n \"http://www.tuaw.com/rss.xml
>>> \"},\n {\"url\",\"http://www.tuaw.com
>>> \"},\n {\"feed_id\",\"http://www.tuaw.com/rss.xml
>>> \"},\n {\"description\",
>>> \n \"The Unofficial Apple
>>> Weblog (TUAW)\"},\n
>>> {\"last_updated\",null},\n
>>> {\"copyright\",\n \"Copyright
>>> 2008 Weblogs, Inc. The contents of this feed are available for non-
>>> commercial use only.\"},\n
>>> {\"being_checked\",false},\n
>>> {\"generator\",\n \"Blogsmith http://www.blogsmith.com/
>>> \"},\n {\"image\",
>>> \n \"http://www.tuaw.com/media/feedlogo.gif
>>> \"},\n {\"next_check\",
>>> 1207692728},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692749,\"595F9051C34C7A0C2C383620E724813C\"},
>>> \n {obj,[{\"_id\",
>>> \"595F9051C34C7A0C2C383620E724813C\"},
>>> \n {\"_rev\",\"964772635\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> kultur\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/kultur/
>>> \"},\n {\"url\",
>>> \n \"http://www.dagbladet.no/kultur//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/kultur/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - kultur -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692749},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692750,\"F61BD4576778E9A2F7F6B95DD357FA66\"},
>>> \n {obj,[{\"_id\",
>>> \"F61BD4576778E9A2F7F6B95DD357FA66\"},
>>> \n {\"_rev\",\"2170658173\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> sport\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/sport/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/sport//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/sport/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - sport -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692750},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692751,\"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
>>> \n {obj,[{\"_id\",
>>> \"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
>>> \n {\"_rev\",\"1822787569\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> spill\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/spill/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/spill//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/spill/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - spill -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692751},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692752,\"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
>>> \n {obj,[{\"_id\",
>>> \"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
>>> \n {\"_rev\",\"2346335936\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no
>>> \"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/forsiden/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/forsiden/
>>> \"},\n {\"description\",
>>> \"Dagbladet.no - export\"},\n
>>> {\"last_updated\",null},\n
>>> {\"copyright\",null},\n
>>> {\"being_checked\",false},\n
>>> {\"generator\",null},\n
>>> {\"image\",\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692752},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692753,\"214F131E43C6EA407F6C03FFF8384A56\"},
>>> \n {obj,[{\"_id\",
>>> \"214F131E43C6EA407F6C03FFF8384A56\"},
>>> \n {\"_rev\",\"3771929290\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> reise\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/reise/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/reise//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/reise/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - reise -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692753},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}}],
>>> \n [],[]]},\n {couch_btree,modify_node,4},\n
>>> {couch_btree,query_modify,4},\n {couch_btree,add_remove,3},\n
>>> {couch_view_group,'-write_changes/4-lc$^3/1-3-',2},\n
>>> {couch_view_group,write_changes,4},\n {couch_view_group,update_int,
>>> 2}]"}]}
>>>
>>
>
Re: Cryptic view errors popping up
Posted by Guby <gu...@gmail.com>.
On a side note:
I didn't notice that you had gotten a new website before now! It looks
really good!
Seb
On Apr 8, 2008, at 10:12 PM, Damien Katz wrote:
> Guby, Thank you for posting this. From the stack trace you posted
> I've found the problem, the fix is now checked into the trunk.
>
> The database should be fine and after upgrading everything *should*
> work. If you don't want to upgrade to the trunk (it's more
> unstable), we can create a 0.7.3.
>
> In the meantime you can manually apply this patch:
>
> Index: couch_btree.erl
> ===================================================================
> --- couch_btree.erl (revision 646162)
> +++ couch_btree.erl (working copy)
> @@ -289,17 +289,20 @@
> ],
> {ok, ResultList, Bt}.
>
> +
> modify_kpnode(Bt, KPs, [], ResultNode, QueryOutput) ->
> % processed all queries for the current tree
> {ok, lists:reverse(ResultNode, KPs), QueryOutput, Bt};
>
> +modify_kpnode(Bt, [], Actions, [], QueryOutput) ->
> + modify_node(Bt, nil, Actions, QueryOutput);
> +
> modify_kpnode(Bt, [], Actions, [{_Key, PointerInfo} | ResultNode],
> QueryOutput) ->
> {ok, ChildKPs, QueryOutput2, Bt2} = modify_node(Bt, PointerInfo,
> Actions, QueryOutput),
> {ok, lists:reverse(ResultNode, ChildKPs), QueryOutput2, Bt2};
>
> modify_kpnode(Bt, [{Key,PointerInfo} | RestKPs], Actions,
> ResultNode, QueryOutput) ->
> - % Split the actions into two lists, queries of values less
> - % than equals, and greater than the current key
> + % Split the actions into two lists, queries of values <= and >
> than the current key
> SplitFun = fun({_ActionType, ActionKey, _ActionValue}) ->
> not less(Bt, Key, ActionKey)
> end,
>
>
>
> On Apr 8, 2008, at 6:07 PM, Guby wrote:
>> Some additional info if that might help you:
>>
>> The three views that are causing me trouble today look like this.
>> It has worked perfectly
>>
>> function(doc) {
>> if (doc.class == "Feed"){
>> map(doc.attributes.feed_id, doc);
>> }
>> }
>>
>> function(doc) {
>> if (doc.class == "Feed" && doc.attributes.being_checked == false) {
>> map(doc.attributes.next_check, doc);
>> }
>> }
>>
>> function(doc) {
>> if (doc.class == "Feed" && doc.attributes.being_checked == true) {
>> map(doc.attributes.next_check, doc);
>> }
>> }
>>
>> A typical document with class == "Feed" would look like this:
>>
>> {
>> "_id":"57FE8B5DDF5FA55537D76EEB7C4F7C62",
>> "_rev":"346516073",
>> "class":"Feed",
>> "attributes":
>> {
>> "title":"The Unofficial Apple Weblog (TUAW)",
>> "feed_url":"http:\/\/www.tuaw.com\/rss.xml",
>> "url":"http:\/\/www.tuaw.com",
>> "feed_id":"http:\/\/www.tuaw.com\/rss.xml",
>> "description":"The Unofficial Apple Weblog (TUAW)",
>> "last_updated":null,
>> "copyright":"Copyright 2008 Weblogs, Inc. The contents of this
>> feed are available for non-commercial use only.",
>> "being_checked":false,
>> "generator":"Blogsmith http:\/\/www.blogsmith.com\/",
>> "image":"http:\/\/www.tuaw.com\/media\/feedlogo.gif",
>> "next_check":1207692728,
>> "was_scheduled_for_check":1207691521
>> }
>> }
>>
>>
>> Best regards
>> Sebastian
>>
>>
>>
>> On Apr 8, 2008, at 6:59 PM, Guby wrote:
>>
>>> I am running CouchDB 0.7.2
>>> I love CouchDB when it is working! And it is really powerful all
>>> the stuff one can do with the views, but:
>>> Every so often, more often lately, views that have worked
>>> perfectly start returning errors... and really cryptic errors too!
>>> If I remove the view and add it again it might work for a little
>>> while, and then the error comes back again.
>>> I can't really make anything out of this error message, but if any
>>> of you do, please let me know if you understand what might be wrong!
>>>
>>> Best regards
>>> Sebastian
>>>
>>>
>>> [error] [emulator] Error in process <0.10595.0> with exit value:
>>> {function_clause,[{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
>>> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
>>> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
>>> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
>>> {"class","Feed"},{"attributes",{obj,[{"title"...
>>>
>>>
>>>
>>> =ERROR REPORT==== 8-Apr-2008::18:53:44 ===
>>> Error in process <0.10595.0> with exit value: {function_clause,
>>> [{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
>>> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
>>> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
>>> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
>>> {"class","Feed"},{"attributes",{obj,[{"title"...
>>>
>>> [info] [<0.10594.0>] HTTP Error (code 500): {obj,
>>> [{error,"function_clause"},
>>> {reason,"[{couch_btree,modify_kpnode,
>>> \n [{btree,<0.8093.0>,\n
>>> {6790526,7},\n #Fun<couch_view_group.
>>> 11.87050650>},\n [],\n [{insert,
>>> {1207692728,\"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
>>> \n {obj,[{\"_id\",
>>> \"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
>>> \n {\"_rev\",\"346516073\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",
>>> \n \"The Unofficial Apple
>>> Weblog (TUAW)\"},\n {\"feed_url
>>> \",\n \"http://www.tuaw.com/rss.xml
>>> \"},\n {\"url\",\"http://www.tuaw.com
>>> \"},\n {\"feed_id\",\"http://www.tuaw.com/rss.xml
>>> \"},\n {\"description\",
>>> \n \"The Unofficial Apple
>>> Weblog (TUAW)\"},\n
>>> {\"last_updated\",null},\n
>>> {\"copyright\",\n \"Copyright
>>> 2008 Weblogs, Inc. The contents of this feed are available for non-
>>> commercial use only.\"},\n
>>> {\"being_checked\",false},\n
>>> {\"generator\",\n \"Blogsmith http://www.blogsmith.com/
>>> \"},\n {\"image\",
>>> \n \"http://www.tuaw.com/media/feedlogo.gif
>>> \"},\n {\"next_check\",
>>> 1207692728},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692749,\"595F9051C34C7A0C2C383620E724813C\"},
>>> \n {obj,[{\"_id\",
>>> \"595F9051C34C7A0C2C383620E724813C\"},
>>> \n {\"_rev\",\"964772635\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> kultur\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/kultur/
>>> \"},\n {\"url\",
>>> \n \"http://www.dagbladet.no/kultur//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/kultur/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - kultur -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692749},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692750,\"F61BD4576778E9A2F7F6B95DD357FA66\"},
>>> \n {obj,[{\"_id\",
>>> \"F61BD4576778E9A2F7F6B95DD357FA66\"},
>>> \n {\"_rev\",\"2170658173\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> sport\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/sport/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/sport//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/sport/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - sport -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692750},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692751,\"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
>>> \n {obj,[{\"_id\",
>>> \"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
>>> \n {\"_rev\",\"1822787569\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> spill\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/spill/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/spill//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/spill/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - spill -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692751},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692752,\"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
>>> \n {obj,[{\"_id\",
>>> \"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
>>> \n {\"_rev\",\"2346335936\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no
>>> \"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/forsiden/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/forsiden/
>>> \"},\n {\"description\",
>>> \"Dagbladet.no - export\"},\n
>>> {\"last_updated\",null},\n
>>> {\"copyright\",null},\n
>>> {\"being_checked\",false},\n
>>> {\"generator\",null},\n
>>> {\"image\",\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692752},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}},
>>> \n {insert,
>>> {1207692753,\"214F131E43C6EA407F6C03FFF8384A56\"},
>>> \n {obj,[{\"_id\",
>>> \"214F131E43C6EA407F6C03FFF8384A56\"},
>>> \n {\"_rev\",\"3771929290\"},
>>> \n {\"class\",\"Feed\"},
>>> \n {\"attributes\",
>>> \n {obj,[{\"title\",\"Dagbladet.no -
>>> reise\"},\n {\"feed_url\",
>>> \n \"http://www.dagbladet.no/rss/reise/
>>> \"},\n {\"url\",\"http://www.dagbladet.no/reise//
>>> \"},\n {\"feed_id\",
>>> \n \"http://www.dagbladet.no/rss/reise/
>>> \"},\n {\"description\",
>>> \n \"Dagbladet.no - reise -
>>> export\"},\n {\"last_updated
>>> \",null},\n {\"copyright
>>> \",null},\n {\"being_checked
>>> \",false},\n {\"generator
>>> \",null},\n {\"image\",
>>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>>> \"},\n {\"next_check\",
>>> 1207692753},\n
>>> {\"was_scheduled_for_check\",
>>> \n 1207691521}]}}]}}],
>>> \n [],[]]},\n {couch_btree,modify_node,4},\n
>>> {couch_btree,query_modify,4},\n {couch_btree,add_remove,3},\n
>>> {couch_view_group,'-write_changes/4-lc$^3/1-3-',2},\n
>>> {couch_view_group,write_changes,4},\n {couch_view_group,update_int,
>>> 2}]"}]}
>>>
>>
>
Re: Cryptic view errors popping up
Posted by Damien Katz <da...@gmail.com>.
Guby, Thank you for posting this. From the stack trace you posted
I've found the problem, the fix is now checked into the trunk.
The database should be fine and after upgrading everything *should*
work. If you don't want to upgrade to the trunk (it's more unstable),
we can create a 0.7.3.
In the meantime you can manually apply this patch:
Index: couch_btree.erl
===================================================================
--- couch_btree.erl (revision 646162)
+++ couch_btree.erl (working copy)
@@ -289,17 +289,20 @@
],
{ok, ResultList, Bt}.
+
modify_kpnode(Bt, KPs, [], ResultNode, QueryOutput) ->
% processed all queries for the current tree
{ok, lists:reverse(ResultNode, KPs), QueryOutput, Bt};
+modify_kpnode(Bt, [], Actions, [], QueryOutput) ->
+ modify_node(Bt, nil, Actions, QueryOutput);
+
modify_kpnode(Bt, [], Actions, [{_Key, PointerInfo} | ResultNode],
QueryOutput) ->
{ok, ChildKPs, QueryOutput2, Bt2} = modify_node(Bt, PointerInfo,
Actions, QueryOutput),
{ok, lists:reverse(ResultNode, ChildKPs), QueryOutput2, Bt2};
modify_kpnode(Bt, [{Key,PointerInfo} | RestKPs], Actions,
ResultNode, QueryOutput) ->
- % Split the actions into two lists, queries of values less
- % than equals, and greater than the current key
+ % Split the actions into two lists, queries of values <= and >
than the current key
SplitFun = fun({_ActionType, ActionKey, _ActionValue}) ->
not less(Bt, Key, ActionKey)
end,
On Apr 8, 2008, at 6:07 PM, Guby wrote:
> Some additional info if that might help you:
>
> The three views that are causing me trouble today look like this. It
> has worked perfectly
>
> function(doc) {
> if (doc.class == "Feed"){
> map(doc.attributes.feed_id, doc);
> }
> }
>
> function(doc) {
> if (doc.class == "Feed" && doc.attributes.being_checked == false) {
> map(doc.attributes.next_check, doc);
> }
> }
>
> function(doc) {
> if (doc.class == "Feed" && doc.attributes.being_checked == true) {
> map(doc.attributes.next_check, doc);
> }
> }
>
> A typical document with class == "Feed" would look like this:
>
> {
> "_id":"57FE8B5DDF5FA55537D76EEB7C4F7C62",
> "_rev":"346516073",
> "class":"Feed",
> "attributes":
> {
> "title":"The Unofficial Apple Weblog (TUAW)",
> "feed_url":"http:\/\/www.tuaw.com\/rss.xml",
> "url":"http:\/\/www.tuaw.com",
> "feed_id":"http:\/\/www.tuaw.com\/rss.xml",
> "description":"The Unofficial Apple Weblog (TUAW)",
> "last_updated":null,
> "copyright":"Copyright 2008 Weblogs, Inc. The contents of this
> feed are available for non-commercial use only.",
> "being_checked":false,
> "generator":"Blogsmith http:\/\/www.blogsmith.com\/",
> "image":"http:\/\/www.tuaw.com\/media\/feedlogo.gif",
> "next_check":1207692728,
> "was_scheduled_for_check":1207691521
> }
> }
>
>
> Best regards
> Sebastian
>
>
>
> On Apr 8, 2008, at 6:59 PM, Guby wrote:
>
>> I am running CouchDB 0.7.2
>> I love CouchDB when it is working! And it is really powerful all
>> the stuff one can do with the views, but:
>> Every so often, more often lately, views that have worked perfectly
>> start returning errors... and really cryptic errors too!
>> If I remove the view and add it again it might work for a little
>> while, and then the error comes back again.
>> I can't really make anything out of this error message, but if any
>> of you do, please let me know if you understand what might be wrong!
>>
>> Best regards
>> Sebastian
>>
>>
>> [error] [emulator] Error in process <0.10595.0> with exit value:
>> {function_clause,[{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
>> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
>> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
>> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
>> {"class","Feed"},{"attributes",{obj,[{"title"...
>>
>>
>>
>> =ERROR REPORT==== 8-Apr-2008::18:53:44 ===
>> Error in process <0.10595.0> with exit value: {function_clause,
>> [{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
>> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
>> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
>> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
>> {"class","Feed"},{"attributes",{obj,[{"title"...
>>
>> [info] [<0.10594.0>] HTTP Error (code 500): {obj,
>> [{error,"function_clause"},
>> {reason,"[{couch_btree,modify_kpnode,
>> \n [{btree,<0.8093.0>,\n
>> {6790526,7},\n #Fun<couch_view_group.
>> 11.87050650>},\n [],\n [{insert,
>> {1207692728,\"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
>> \n {obj,[{\"_id\",
>> \"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
>> \n {\"_rev\",\"346516073\"},
>> \n {\"class\",\"Feed\"},
>> \n {\"attributes\",
>> \n {obj,[{\"title\",
>> \n \"The Unofficial Apple
>> Weblog (TUAW)\"},\n {\"feed_url
>> \",\n \"http://www.tuaw.com/rss.xml
>> \"},\n {\"url\",\"http://www.tuaw.com
>> \"},\n {\"feed_id\",\"http://www.tuaw.com/rss.xml
>> \"},\n {\"description\",
>> \n \"The Unofficial Apple
>> Weblog (TUAW)\"},\n
>> {\"last_updated\",null},\n
>> {\"copyright\",\n \"Copyright
>> 2008 Weblogs, Inc. The contents of this feed are available for non-
>> commercial use only.\"},\n
>> {\"being_checked\",false},\n
>> {\"generator\",\n \"Blogsmith http://www.blogsmith.com/
>> \"},\n {\"image\",
>> \n \"http://www.tuaw.com/media/feedlogo.gif
>> \"},\n {\"next_check\",
>> 1207692728},\n
>> {\"was_scheduled_for_check\",
>> \n 1207691521}]}}]}},
>> \n {insert,
>> {1207692749,\"595F9051C34C7A0C2C383620E724813C\"},
>> \n {obj,[{\"_id\",
>> \"595F9051C34C7A0C2C383620E724813C\"},
>> \n {\"_rev\",\"964772635\"},
>> \n {\"class\",\"Feed\"},
>> \n {\"attributes\",
>> \n {obj,[{\"title\",\"Dagbladet.no -
>> kultur\"},\n {\"feed_url\",
>> \n \"http://www.dagbladet.no/rss/kultur/
>> \"},\n {\"url\",
>> \n \"http://www.dagbladet.no/kultur//
>> \"},\n {\"feed_id\",
>> \n \"http://www.dagbladet.no/rss/kultur/
>> \"},\n {\"description\",
>> \n \"Dagbladet.no - kultur -
>> export\"},\n {\"last_updated
>> \",null},\n {\"copyright
>> \",null},\n {\"being_checked
>> \",false},\n {\"generator
>> \",null},\n {\"image\",
>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>> \"},\n {\"next_check\",
>> 1207692749},\n
>> {\"was_scheduled_for_check\",
>> \n 1207691521}]}}]}},
>> \n {insert,
>> {1207692750,\"F61BD4576778E9A2F7F6B95DD357FA66\"},
>> \n {obj,[{\"_id\",
>> \"F61BD4576778E9A2F7F6B95DD357FA66\"},
>> \n {\"_rev\",\"2170658173\"},
>> \n {\"class\",\"Feed\"},
>> \n {\"attributes\",
>> \n {obj,[{\"title\",\"Dagbladet.no -
>> sport\"},\n {\"feed_url\",
>> \n \"http://www.dagbladet.no/rss/sport/
>> \"},\n {\"url\",\"http://www.dagbladet.no/sport//
>> \"},\n {\"feed_id\",
>> \n \"http://www.dagbladet.no/rss/sport/
>> \"},\n {\"description\",
>> \n \"Dagbladet.no - sport -
>> export\"},\n {\"last_updated
>> \",null},\n {\"copyright
>> \",null},\n {\"being_checked
>> \",false},\n {\"generator
>> \",null},\n {\"image\",
>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>> \"},\n {\"next_check\",
>> 1207692750},\n
>> {\"was_scheduled_for_check\",
>> \n 1207691521}]}}]}},
>> \n {insert,
>> {1207692751,\"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
>> \n {obj,[{\"_id\",
>> \"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
>> \n {\"_rev\",\"1822787569\"},
>> \n {\"class\",\"Feed\"},
>> \n {\"attributes\",
>> \n {obj,[{\"title\",\"Dagbladet.no -
>> spill\"},\n {\"feed_url\",
>> \n \"http://www.dagbladet.no/rss/spill/
>> \"},\n {\"url\",\"http://www.dagbladet.no/spill//
>> \"},\n {\"feed_id\",
>> \n \"http://www.dagbladet.no/rss/spill/
>> \"},\n {\"description\",
>> \n \"Dagbladet.no - spill -
>> export\"},\n {\"last_updated
>> \",null},\n {\"copyright
>> \",null},\n {\"being_checked
>> \",false},\n {\"generator
>> \",null},\n {\"image\",
>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>> \"},\n {\"next_check\",
>> 1207692751},\n
>> {\"was_scheduled_for_check\",
>> \n 1207691521}]}}]}},
>> \n {insert,
>> {1207692752,\"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
>> \n {obj,[{\"_id\",
>> \"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
>> \n {\"_rev\",\"2346335936\"},
>> \n {\"class\",\"Feed\"},
>> \n {\"attributes\",
>> \n {obj,[{\"title\",\"Dagbladet.no\"},
>> \n {\"feed_url\",
>> \n \"http://www.dagbladet.no/rss/forsiden/
>> \"},\n {\"url\",\"http://www.dagbladet.no/
>> \"},\n {\"feed_id\",
>> \n \"http://www.dagbladet.no/rss/forsiden/
>> \"},\n {\"description\",
>> \"Dagbladet.no - export\"},\n
>> {\"last_updated\",null},\n
>> {\"copyright\",null},\n
>> {\"being_checked\",false},\n
>> {\"generator\",null},\n {\"image
>> \",\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>> \"},\n {\"next_check\",
>> 1207692752},\n
>> {\"was_scheduled_for_check\",
>> \n 1207691521}]}}]}},
>> \n {insert,
>> {1207692753,\"214F131E43C6EA407F6C03FFF8384A56\"},
>> \n {obj,[{\"_id\",
>> \"214F131E43C6EA407F6C03FFF8384A56\"},
>> \n {\"_rev\",\"3771929290\"},
>> \n {\"class\",\"Feed\"},
>> \n {\"attributes\",
>> \n {obj,[{\"title\",\"Dagbladet.no -
>> reise\"},\n {\"feed_url\",
>> \n \"http://www.dagbladet.no/rss/reise/
>> \"},\n {\"url\",\"http://www.dagbladet.no/reise//
>> \"},\n {\"feed_id\",
>> \n \"http://www.dagbladet.no/rss/reise/
>> \"},\n {\"description\",
>> \n \"Dagbladet.no - reise -
>> export\"},\n {\"last_updated
>> \",null},\n {\"copyright
>> \",null},\n {\"being_checked
>> \",false},\n {\"generator
>> \",null},\n {\"image\",
>> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
>> \"},\n {\"next_check\",
>> 1207692753},\n
>> {\"was_scheduled_for_check\",
>> \n 1207691521}]}}]}}],
>> \n [],[]]},\n {couch_btree,modify_node,4},\n
>> {couch_btree,query_modify,4},\n {couch_btree,add_remove,3},\n
>> {couch_view_group,'-write_changes/4-lc$^3/1-3-',2},\n
>> {couch_view_group,write_changes,4},\n {couch_view_group,update_int,
>> 2}]"}]}
>>
>
Re: Cryptic view errors popping up
Posted by Guby <gu...@gmail.com>.
Some additional info if that might help you:
The three views that are causing me trouble today look like this. It
has worked perfectly
function(doc) {
if (doc.class == "Feed"){
map(doc.attributes.feed_id, doc);
}
}
function(doc) {
if (doc.class == "Feed" && doc.attributes.being_checked == false) {
map(doc.attributes.next_check, doc);
}
}
function(doc) {
if (doc.class == "Feed" && doc.attributes.being_checked == true) {
map(doc.attributes.next_check, doc);
}
}
A typical document with class == "Feed" would look like this:
{
"_id":"57FE8B5DDF5FA55537D76EEB7C4F7C62",
"_rev":"346516073",
"class":"Feed",
"attributes":
{
"title":"The Unofficial Apple Weblog (TUAW)",
"feed_url":"http:\/\/www.tuaw.com\/rss.xml",
"url":"http:\/\/www.tuaw.com",
"feed_id":"http:\/\/www.tuaw.com\/rss.xml",
"description":"The Unofficial Apple Weblog (TUAW)",
"last_updated":null,
"copyright":"Copyright 2008 Weblogs, Inc. The contents of this feed
are available for non-commercial use only.",
"being_checked":false,
"generator":"Blogsmith http:\/\/www.blogsmith.com\/",
"image":"http:\/\/www.tuaw.com\/media\/feedlogo.gif",
"next_check":1207692728,
"was_scheduled_for_check":1207691521
}
}
Best regards
Sebastian
On Apr 8, 2008, at 6:59 PM, Guby wrote:
> I am running CouchDB 0.7.2
> I love CouchDB when it is working! And it is really powerful all the
> stuff one can do with the views, but:
> Every so often, more often lately, views that have worked perfectly
> start returning errors... and really cryptic errors too!
> If I remove the view and add it again it might work for a little
> while, and then the error comes back again.
> I can't really make anything out of this error message, but if any
> of you do, please let me know if you understand what might be wrong!
>
> Best regards
> Sebastian
>
>
> [error] [emulator] Error in process <0.10595.0> with exit value:
> {function_clause,[{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
> {"class","Feed"},{"attributes",{obj,[{"title"...
>
>
>
> =ERROR REPORT==== 8-Apr-2008::18:53:44 ===
> Error in process <0.10595.0> with exit value: {function_clause,
> [{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
> {6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
> {1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
> [{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
> {"class","Feed"},{"attributes",{obj,[{"title"...
>
> [info] [<0.10594.0>] HTTP Error (code 500): {obj,
> [{error,"function_clause"},
> {reason,"[{couch_btree,modify_kpnode,
> \n [{btree,<0.8093.0>,\n
> {6790526,7},\n #Fun<couch_view_group.
> 11.87050650>},\n [],\n [{insert,
> {1207692728,\"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
> \n {obj,[{\"_id\",
> \"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
> \n {\"_rev\",\"346516073\"},
> \n {\"class\",\"Feed\"},
> \n {\"attributes\",
> \n {obj,[{\"title\",
> \n \"The Unofficial Apple
> Weblog (TUAW)\"},\n {\"feed_url
> \",\n \"http://www.tuaw.com/rss.xml
> \"},\n {\"url\",\"http://www.tuaw.com
> \"},\n {\"feed_id\",\"http://www.tuaw.com/rss.xml
> \"},\n {\"description\",
> \n \"The Unofficial Apple
> Weblog (TUAW)\"},\n
> {\"last_updated\",null},\n
> {\"copyright\",\n \"Copyright
> 2008 Weblogs, Inc. The contents of this feed are available for non-
> commercial use only.\"},\n
> {\"being_checked\",false},\n
> {\"generator\",\n \"Blogsmith http://www.blogsmith.com/
> \"},\n {\"image\",
> \n \"http://www.tuaw.com/media/feedlogo.gif
> \"},\n {\"next_check\",
> 1207692728},\n
> {\"was_scheduled_for_check\",\n
> 1207691521}]}}]}},\n {insert,
> {1207692749,\"595F9051C34C7A0C2C383620E724813C\"},
> \n {obj,[{\"_id\",
> \"595F9051C34C7A0C2C383620E724813C\"},
> \n {\"_rev\",\"964772635\"},
> \n {\"class\",\"Feed\"},
> \n {\"attributes\",
> \n {obj,[{\"title\",\"Dagbladet.no -
> kultur\"},\n {\"feed_url\",
> \n \"http://www.dagbladet.no/rss/kultur/
> \"},\n {\"url\",
> \n \"http://www.dagbladet.no/kultur//
> \"},\n {\"feed_id\",
> \n \"http://www.dagbladet.no/rss/kultur/
> \"},\n {\"description\",
> \n \"Dagbladet.no - kultur -
> export\"},\n {\"last_updated
> \",null},\n {\"copyright\",null},
> \n {\"being_checked\",false},
> \n {\"generator\",null},
> \n {\"image\",
> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
> \"},\n {\"next_check\",
> 1207692749},\n
> {\"was_scheduled_for_check\",\n
> 1207691521}]}}]}},\n {insert,
> {1207692750,\"F61BD4576778E9A2F7F6B95DD357FA66\"},
> \n {obj,[{\"_id\",
> \"F61BD4576778E9A2F7F6B95DD357FA66\"},
> \n {\"_rev\",\"2170658173\"},
> \n {\"class\",\"Feed\"},
> \n {\"attributes\",
> \n {obj,[{\"title\",\"Dagbladet.no -
> sport\"},\n {\"feed_url\",
> \n \"http://www.dagbladet.no/rss/sport/
> \"},\n {\"url\",\"http://www.dagbladet.no/sport//
> \"},\n {\"feed_id\",
> \n \"http://www.dagbladet.no/rss/sport/
> \"},\n {\"description\",
> \n \"Dagbladet.no - sport -
> export\"},\n {\"last_updated
> \",null},\n {\"copyright\",null},
> \n {\"being_checked\",false},
> \n {\"generator\",null},
> \n {\"image\",
> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
> \"},\n {\"next_check\",
> 1207692750},\n
> {\"was_scheduled_for_check\",\n
> 1207691521}]}}]}},\n {insert,
> {1207692751,\"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
> \n {obj,[{\"_id\",
> \"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
> \n {\"_rev\",\"1822787569\"},
> \n {\"class\",\"Feed\"},
> \n {\"attributes\",
> \n {obj,[{\"title\",\"Dagbladet.no -
> spill\"},\n {\"feed_url\",
> \n \"http://www.dagbladet.no/rss/spill/
> \"},\n {\"url\",\"http://www.dagbladet.no/spill//
> \"},\n {\"feed_id\",
> \n \"http://www.dagbladet.no/rss/spill/
> \"},\n {\"description\",
> \n \"Dagbladet.no - spill -
> export\"},\n {\"last_updated
> \",null},\n {\"copyright\",null},
> \n {\"being_checked\",false},
> \n {\"generator\",null},
> \n {\"image\",
> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
> \"},\n {\"next_check\",
> 1207692751},\n
> {\"was_scheduled_for_check\",\n
> 1207691521}]}}]}},\n {insert,
> {1207692752,\"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
> \n {obj,[{\"_id\",
> \"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
> \n {\"_rev\",\"2346335936\"},
> \n {\"class\",\"Feed\"},
> \n {\"attributes\",
> \n {obj,[{\"title\",\"Dagbladet.no\"},
> \n {\"feed_url\",
> \n \"http://www.dagbladet.no/rss/forsiden/
> \"},\n {\"url\",\"http://www.dagbladet.no/
> \"},\n {\"feed_id\",
> \n \"http://www.dagbladet.no/rss/forsiden/
> \"},\n {\"description\",
> \"Dagbladet.no - export\"},\n
> {\"last_updated\",null},\n
> {\"copyright\",null},\n
> {\"being_checked\",false},\n
> {\"generator\",null},\n {\"image
> \",\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
> \"},\n {\"next_check\",
> 1207692752},\n
> {\"was_scheduled_for_check\",\n
> 1207691521}]}}]}},\n {insert,
> {1207692753,\"214F131E43C6EA407F6C03FFF8384A56\"},
> \n {obj,[{\"_id\",
> \"214F131E43C6EA407F6C03FFF8384A56\"},
> \n {\"_rev\",\"3771929290\"},
> \n {\"class\",\"Feed\"},
> \n {\"attributes\",
> \n {obj,[{\"title\",\"Dagbladet.no -
> reise\"},\n {\"feed_url\",
> \n \"http://www.dagbladet.no/rss/reise/
> \"},\n {\"url\",\"http://www.dagbladet.no/reise//
> \"},\n {\"feed_id\",
> \n \"http://www.dagbladet.no/rss/reise/
> \"},\n {\"description\",
> \n \"Dagbladet.no - reise -
> export\"},\n {\"last_updated
> \",null},\n {\"copyright\",null},
> \n {\"being_checked\",false},
> \n {\"generator\",null},
> \n {\"image\",
> \n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
> \"},\n {\"next_check\",
> 1207692753},\n
> {\"was_scheduled_for_check\",\n
> 1207691521}]}}]}}],\n [],[]]},\n
> {couch_btree,modify_node,4},\n {couch_btree,query_modify,4},\n
> {couch_btree,add_remove,3},\n {couch_view_group,'-write_changes/4-lc
> $^3/1-3-',2},\n {couch_view_group,write_changes,4},\n
> {couch_view_group,update_int,2}]"}]}
>
Re: Cryptic view errors popping up
Posted by Christopher Lenz <cm...@gmx.de>.
On 08.04.2008, at 23:59, Guby wrote:
> I am running CouchDB 0.7.2
> I love CouchDB when it is working! And it is really powerful all the
> stuff one can do with the views, but:
> Every so often, more often lately, views that have worked perfectly
> start returning errors... and really cryptic errors too!
> If I remove the view and add it again it might work for a little
> while, and then the error comes back again.
> I can't really make anything out of this error message, but if any
> of you do, please let me know if you understand what might be wrong!
It would be great if you could try whether you're still getting this
error with trunk:
<http://incubator.apache.org/couchdb/community/code.html>
HOWEVER, note that the upgrade process isn't exactly trivial
(including a change to the database file format, so you'll need to
dump and load your data) and not well documented at the moment. Your
best bet would be to join us on IRC (#couchdb on freenode) and ask
questions as they arise. Hopefully someone will be able to write up an
upgrading guide soon :P
Anyway, please file a bug report including the full error report:
<https://issues.apache.org/jira/browse/COUCHDB>
Other helpful information includes the size of your database and the
number of views you have.
Thanks!
--
Christopher Lenz
cmlenz at gmx.de
http://www.cmlenz.net/
Cryptic view errors popping up
Posted by Guby <gu...@gmail.com>.
I am running CouchDB 0.7.2
I love CouchDB when it is working! And it is really powerful all the
stuff one can do with the views, but:
Every so often, more often lately, views that have worked perfectly
start returning errors... and really cryptic errors too!
If I remove the view and add it again it might work for a little
while, and then the error comes back again.
I can't really make anything out of this error message, but if any of
you do, please let me know if you understand what might be wrong!
Best regards
Sebastian
[error] [emulator] Error in process <0.10595.0> with exit value:
{function_clause,[{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
{6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
{1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
[{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
{"class","Feed"},{"attributes",{obj,[{"title"...
=ERROR REPORT==== 8-Apr-2008::18:53:44 ===
Error in process <0.10595.0> with exit value: {function_clause,
[{couch_btree,modify_kpnode,[{btree,<0.8093.0>,
{6790526,7},#Fun<couch_view_group.11.87050650>},[],[{insert,
{1207692728,"57FE8B5DDF5FA55537D76EEB7C4F7C62"},{obj,
[{"_id","57FE8B5DDF5FA55537D76EEB7C4F7C62"},{"_rev","346516073"},
{"class","Feed"},{"attributes",{obj,[{"title"...
[info] [<0.10594.0>] HTTP Error (code 500): {obj,
[{error,"function_clause"},
{reason,"[{couch_btree,modify_kpnode,
\n [{btree,<0.8093.0>,\n {6790526,7},
\n #Fun<couch_view_group.11.87050650>},
\n [],\n [{insert,
{1207692728,\"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},
\n {obj,[{\"_id\",
\"57FE8B5DDF5FA55537D76EEB7C4F7C62\"},\n
{\"_rev\",\"346516073\"},\n {\"class\",
\"Feed\"},\n {\"attributes\",
\n {obj,[{\"title\",
\n \"The Unofficial Apple Weblog
(TUAW)\"},\n {\"feed_url\",
\n \"http://www.tuaw.com/rss.xml
\"},\n {\"url\",\"http://www.tuaw.com
\"},\n {\"feed_id\",\"http://www.tuaw.com/rss.xml
\"},\n {\"description\",
\n \"The Unofficial Apple Weblog
(TUAW)\"},\n {\"last_updated
\",null},\n {\"copyright\",
\n \"Copyright 2008 Weblogs, Inc.
The contents of this feed are available for non-commercial use only.
\"},\n {\"being_checked\",false},
\n {\"generator\",
\n \"Blogsmith http://www.blogsmith.com/
\"},\n {\"image\",
\n \"http://www.tuaw.com/media/feedlogo.gif
\"},\n {\"next_check\",1207692728},
\n {\"was_scheduled_for_check\",
\n 1207691521}]}}]}},
\n {insert,
{1207692749,\"595F9051C34C7A0C2C383620E724813C\"},
\n {obj,[{\"_id\",
\"595F9051C34C7A0C2C383620E724813C\"},\n
{\"_rev\",\"964772635\"},\n {\"class\",
\"Feed\"},\n {\"attributes\",
\n {obj,[{\"title\",\"Dagbladet.no -
kultur\"},\n {\"feed_url\",
\n \"http://www.dagbladet.no/rss/kultur/
\"},\n {\"url\",
\n \"http://www.dagbladet.no/kultur//
\"},\n {\"feed_id\",
\n \"http://www.dagbladet.no/rss/kultur/
\"},\n {\"description\",
\n \"Dagbladet.no - kultur -
export\"},\n {\"last_updated
\",null},\n {\"copyright\",null},
\n {\"being_checked\",false},
\n {\"generator\",null},
\n {\"image\",
\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
\"},\n {\"next_check\",1207692749},
\n {\"was_scheduled_for_check\",
\n 1207691521}]}}]}},
\n {insert,
{1207692750,\"F61BD4576778E9A2F7F6B95DD357FA66\"},
\n {obj,[{\"_id\",
\"F61BD4576778E9A2F7F6B95DD357FA66\"},\n
{\"_rev\",\"2170658173\"},\n {\"class\",
\"Feed\"},\n {\"attributes\",
\n {obj,[{\"title\",\"Dagbladet.no -
sport\"},\n {\"feed_url\",
\n \"http://www.dagbladet.no/rss/sport/
\"},\n {\"url\",\"http://www.dagbladet.no/sport//
\"},\n {\"feed_id\",
\n \"http://www.dagbladet.no/rss/sport/
\"},\n {\"description\",
\n \"Dagbladet.no - sport - export
\"},\n {\"last_updated\",null},
\n {\"copyright\",null},
\n {\"being_checked\",false},
\n {\"generator\",null},
\n {\"image\",
\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
\"},\n {\"next_check\",1207692750},
\n {\"was_scheduled_for_check\",
\n 1207691521}]}}]}},
\n {insert,
{1207692751,\"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},
\n {obj,[{\"_id\",
\"8D1F264FB7F72492E0EFAFAA3FD9BBE5\"},\n
{\"_rev\",\"1822787569\"},\n {\"class\",
\"Feed\"},\n {\"attributes\",
\n {obj,[{\"title\",\"Dagbladet.no -
spill\"},\n {\"feed_url\",
\n \"http://www.dagbladet.no/rss/spill/
\"},\n {\"url\",\"http://www.dagbladet.no/spill//
\"},\n {\"feed_id\",
\n \"http://www.dagbladet.no/rss/spill/
\"},\n {\"description\",
\n \"Dagbladet.no - spill - export
\"},\n {\"last_updated\",null},
\n {\"copyright\",null},
\n {\"being_checked\",false},
\n {\"generator\",null},
\n {\"image\",
\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
\"},\n {\"next_check\",1207692751},
\n {\"was_scheduled_for_check\",
\n 1207691521}]}}]}},
\n {insert,
{1207692752,\"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},
\n {obj,[{\"_id\",
\"C3D3EE09DAF4BDEE5C77490D3E5F7C86\"},\n
{\"_rev\",\"2346335936\"},\n {\"class\",
\"Feed\"},\n {\"attributes\",
\n {obj,[{\"title\",\"Dagbladet.no\"},
\n {\"feed_url\",
\n \"http://www.dagbladet.no/rss/forsiden/
\"},\n {\"url\",\"http://www.dagbladet.no/
\"},\n {\"feed_id\",
\n \"http://www.dagbladet.no/rss/forsiden/
\"},\n {\"description\",
\"Dagbladet.no - export\"},\n
{\"last_updated\",null},\n
{\"copyright\",null},\n
{\"being_checked\",false},\n
{\"generator\",null},\n {\"image\",
\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
\"},\n {\"next_check\",1207692752},
\n {\"was_scheduled_for_check\",
\n 1207691521}]}}]}},
\n {insert,
{1207692753,\"214F131E43C6EA407F6C03FFF8384A56\"},
\n {obj,[{\"_id\",
\"214F131E43C6EA407F6C03FFF8384A56\"},\n
{\"_rev\",\"3771929290\"},\n {\"class\",
\"Feed\"},\n {\"attributes\",
\n {obj,[{\"title\",\"Dagbladet.no -
reise\"},\n {\"feed_url\",
\n \"http://www.dagbladet.no/rss/reise/
\"},\n {\"url\",\"http://www.dagbladet.no/reise//
\"},\n {\"feed_id\",
\n \"http://www.dagbladet.no/rss/reise/
\"},\n {\"description\",
\n \"Dagbladet.no - reise - export
\"},\n {\"last_updated\",null},
\n {\"copyright\",null},
\n {\"being_checked\",false},
\n {\"generator\",null},
\n {\"image\",
\n \"http://www.dagbladet.no/gfx/dagbladet.no.gif
\"},\n {\"next_check\",1207692753},
\n {\"was_scheduled_for_check\",
\n 1207691521}]}}]}}],
\n [],[]]},\n {couch_btree,modify_node,4},\n
{couch_btree,query_modify,4},\n {couch_btree,add_remove,3},\n
{couch_view_group,'-write_changes/4-lc$^3/1-3-',2},\n
{couch_view_group,write_changes,4},\n {couch_view_group,update_int,
2}]"}]}