How to update a document using the Elasticsearch Update API when "_source" is disabled?


(Veerapuram Varadhan) #1

Hi,

In my setup, ES is used for only indexing and searching and thus have
disabled "_source" to reduce storage costs and overheads. Our application
does a lot of updates and when trying to partially update documents in ES,
I am getting the following exception:

curl -X POST
"http://localhost:9200/mydb.mycoln/mytype/C97780C0-E49E-1031-86AA-005056A564B9/_update?refresh=false"
-d '
{"doc": {"iuid": "1", "crit": 50, "stt": 0, "otype": "User", "acrtby": 1}}'

{"error":"DocumentSourceMissingException[[mydb.mycoln][3]
[mytype][C97780C0-E49E-1031-86AA-005056A564B9]: document source
missing]","status":400}

Is there anyway to workaround this and still be able to update documents
partitally?

Note: Each document has 600+ fields and thus, fetching all the fields and
performing an complete 'index' of the document would be a performance
bottleneck for the application.

Best,

V. Varadhan

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/f8bee40f-f4c7-4238-b8b2-3516400bd2ba%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


(Ivan Brusic) #2

Source is required to update documents. If not, you would need access to
the original information and re-index.

--
Ivan

On Thu, Jul 3, 2014 at 2:06 AM, Veerapuram Varadhan v.varadhan@gmail.com
wrote:

Hi,

In my setup, ES is used for only indexing and searching and thus have
disabled "_source" to reduce storage costs and overheads. Our application
does a lot of updates and when trying to partially update documents in ES,
I am getting the following exception:

curl -X POST "
http://localhost:9200/mydb.mycoln/mytype/C97780C0-E49E-1031-86AA-005056A564B9/_update?refresh=false"
-d '
{"doc": {"iuid": "1", "crit": 50, "stt": 0, "otype": "User", "acrtby": 1}}'

{"error":"DocumentSourceMissingException[[mydb.mycoln][3]
[mytype][C97780C0-E49E-1031-86AA-005056A564B9]: document source
missing]","status":400}

Is there anyway to workaround this and still be able to update documents
partitally?

Note: Each document has 600+ fields and thus, fetching all the fields and
performing an complete 'index' of the document would be a performance
bottleneck for the application.

Best,

V. Varadhan

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/f8bee40f-f4c7-4238-b8b2-3516400bd2ba%40googlegroups.com
https://groups.google.com/d/msgid/elasticsearch/f8bee40f-f4c7-4238-b8b2-3516400bd2ba%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CALY%3DcQCdgQznTrUhjRtHfL0Ksy2m8%2BdDYOVUt9HhFJc29hzTrA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


(system) #3