[ 
https://issues.apache.org/jira/browse/COUCHDB-1797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13661656#comment-13661656
 ] 

Robert Newson commented on COUCHDB-1797:
----------------------------------------

thanks.

"until I noticed, that this is stupid to do, because I get it by a different 
view option and could use the value field for additional stuff."

Emitting the document into the view is not always stupid. In the case where you 
need a transactional response, it's useful. That is, if you want to see the 
document at the time the view was queried, as opposed to shortly afterwards, 
you must put the data in the view. Using include_docs=true saves on disk space, 
as you can avoid duplicating the data, but does mean that the document is 
fetched after the view has run, potentially after an update or delete.

I can't immediately see why the document would be null in your case, since you 
say you never delete the document, only update it, and you aren't emitting 
objects with _id or _id and _rev values, which would alter the document 
retrieved by include_docs=true. That said, your change from emitting doc to 
doc.baseDocKey as the value exposes you to exactly the kind of problem you're 
now experiencing. I hope I've described the behavior well enough for you to 
help me understand why you're seeing it.

                
> Query against a view creates a questionable result
> --------------------------------------------------
>
>                 Key: COUCHDB-1797
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1797
>             Project: CouchDB
>          Issue Type: Bug
>          Components: Database Core
>    Affects Versions: 1.3
>            Reporter: Marten Feldtmann
>
> I have a test system (CouchDB 1.3.0 under windows 7/64 Bit), where I insert 
> lots of documents(100000) to get a regular flow of new incoming documents.
> The database has also some views (25). Another task is reading documents from 
> a view, change some attributes and then the document should disappear from 
> the view (and appear in another view). Something like a state machine.
> I do the following query against a view:
> http://localhost:5984/test5/_design/ticketorggraphics/_view/waiting?limit=5&include_docs=true&include_end=true
> and get the following string:
> {"total_rows":9224,"offset":0,"rows":[
> {"id":"92224c2862ef49c15f3d51e3e7283cde","key":"ni13_1_2013101_20130518155518065","value":"ni13_2013101_VsPercentResult_83519204509647","doc":{"_id":"92224c2862ef49c15f3d51e3e7283cde","_rev":"1-6e8b57744c2b88f3d2dcad602e2e3353","distribution":"global","type":"ESTicketCreateOriginalGraphic","createdTS":"20130518155518065","priority":1,"eDayID":"ni13","electionID":2013101,"layout":"ard2013","baseDocKey":"ni13_2013101_VsPercentResult_83519204509647","_attachments":{"bclitemsdata":{"content_type":"application/zip","revpos":1,"digest":"md5-sdff2jkxp4w6xsSlx5Yzxw==","length":4533,"stub":true}}}},
> {"id":"92224c2862ef49c15f3d51e3e7285d38","key":"ni13_1_2013101_20130518155518135","value":"ni13_2013101_VsPercentResult_16771681663808","doc":{"_id":"92224c2862ef49c15f3d51e3e7285d38","_rev":"1-05b92282ec5f2d1b6d56912760792702","distribution":"global","type":"ESTicketCreateOriginalGraphic","createdTS":"20130518155518135","priority":1,"eDayID":"ni13","electionID":2013101,"layout":"ard2013","baseDocKey":"ni13_2013101_VsPercentResult_16771681663808","_attachments":{"bclitemsdata":{"content_type":"application/zip","revpos":1,"digest":"md5-sdff2jkxp4w6xsSlx5Yzxw==","length":4533,"stub":true}}}},
> {"id":"92224c2862ef49c15f3d51e3e728c5e2","key":"ni13_1_2013101_20130518155518413","value":"ni13_2013101_VsPercentResult_10619936276742","doc":null},
> {"id":"b02d128d88188d78ef7f3478586c349b","key":"ni13_2_2013101_20130518155203924","value":"ni13_2013101_VsPercentResult_46202583943140","doc":{"_id":"b02d128d88188d78ef7f3478586c349b","_rev":"1-bd2a2bfb1f7461e6b3ec6d4d106e08e4","distribution":"global","type":"ESTicketCreateOriginalGraphic","createdTS":"20130518155203924","priority":2,"eDayID":"ni13","electionID":2013101,"layout":"ard2013","baseDocKey":"ni13_2013101_VsPercentResult_46202583943140","_attachments":{"bclitemsdata":{"content_type":"application/zip","revpos":1,"digest":"md5-ErSTxuEaSHZrIJ276ANdOQ==","length":4533,"stub":true}}}},
> {"id":"b02d128d88188d78ef7f3478586c72a1","key":"ni13_2_2013101_20130518155204124","value":"ni13_2013101_VsPercentResult_91455901404013","doc":{"_id":"b02d128d88188d78ef7f3478586c72a1","_rev":"1-6f702cff1d12f992d745fc19be84b846","distribution":"global","type":"ESTicketCreateOriginalGraphic","createdTS":"20130518155204124","priority":2,"eDayID":"ni13","electionID":2013101,"layout":"ard2013","baseDocKey":"ni13_2013101_VsPercentResult_91455901404013","_attachments":{"bclitemsdata":{"content_type":"application/zip","revpos":1,"digest":"md5-L9UXpNNRUyk/LSlzAyEsXQ==","length":4533,"stub":true}}}}
> ]}
> Please notice, that the doc attribute of the third item in the rows attribute 
> has the value "null". That means, that the view entry has no belonging 
> document ????????
> This seems to indicate an inconsistency within the database.
> I can not say, when this error happens, but I know, that it will happen in my 
> test run.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to