# Element size differs

**URL:** <https://discuss.elastic.co/t/element-size-differs/96932>\
**Category:** Logstash\
**Created:** [August 14, 2017, 9:09am UTC](https://discuss.elastic.co/t/element-size-differs/96932 "2017-08-14T09:09:54Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Lukas\_Tilch](https://avatars.discourse-cdn.com/v4/letter/l/e495f1/32.png) [@Lukas\_Tilch](https://discuss.elastic.co/u/Lukas_Tilch)\
**Post date:** [August 14, 2017, 9:09am UTC](https://discuss.elastic.co/t/element-size-differs/96932/1 "2017-08-14T09:09:54Z")

</div>

Helllo,

when I try to parse a XML document with logstash i get an error

The data seems to be consistent, the original document has about 2XXX data fields. but i got the error  
`Ruby exception occurred: element size differs (393 should be 394)`  
after that I split the document in blocks with 100 data fields, becaus i figured it might be to memory intense  
as a result i got  
`Ruby exception occurred: element size differs (61 should be 62)`  
`Ruby exception occurred: element size differs (97 should be 98)`  
`Ruby exception occurred: element size differs (84 should be 85)`

```
filter {
  xml {
  source => "message"
  store_xml => "false"
  force_array => "false"
  #force_content => "true"
      xpath => ["/memberrevisions/memberrevision/ID/text()","ID"]
      xpath => ["/memberrevisions/memberrevision/author/text()","author"]
      xpath => ["/memberrevisions/memberrevision/desc/text()","desc"]
      xpath => ["/memberrevisions/memberrevision/date/text()","date"]
      xpath => ["/memberrevisions/memberrevision/revision/text()","rev"]
      xpath => ["/memberrevisions/memberrevision/name/text()","name"]
      xpath => ["/memberrevisions/memberrevision/path/text()","pathe"]
  }

  ruby { code => "
  event.set('mksrevision', [event.get('ID'), event.get('author'), event.get('desc'), event.get('date'), event.get('rev'), event.get('name'), event.get('pathe')].transpose)
  array_of_hashes = event.get('mksrevision').collect { |i| {'id' => i[0], 'author' => i[1], 'desc' => i[2], 'date' => i[3], 'rev' => i[4], 'name' => i[5], 'pathe' => i[6]}}
  event.set('mks', array_of_hashes)
  "}
  split {
        field => "mks"
  }

  ruby {
      code => "
        event.get('mks').each {|k, v|
          event.set(k,v)
        }
        event.remove('message')
      "
    }

```

as is said, the data seems to be consistent  
is there any way to get a more detailed log?

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [September 11, 2017, 9:10am UTC](https://discuss.elastic.co/t/element-size-differs/96932/2 "2017-09-11T09:10:26Z")

</div>

Closed on September 11, 2017, 9:10am UTC

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
