gora-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GORA-419) AccumuloStore.put deletes entire row when updating map/array field
Date Sat, 02 May 2015 19:57:06 GMT

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

ASF GitHub Bot commented on GORA-419:
-------------------------------------

Github user renato2099 commented on the pull request:

    https://github.com/apache/gora/pull/23#issuecomment-98393003
  
    @gerhardgossen so you mean  just to overwrite the value without checking if it exists
or not? I think this is also something that makes sense, but this would still mean that you
would be writing the whole map even when a single value has been added. Thus, this means you
would have to get the old map, add the new kv pair and write the updated map. This is not
so efficient but we wouldn't loose previous values. Would you agree with this get-update-store
behaviour?


> AccumuloStore.put deletes entire row when updating map/array field
> ------------------------------------------------------------------
>
>                 Key: GORA-419
>                 URL: https://issues.apache.org/jira/browse/GORA-419
>             Project: Apache Gora
>          Issue Type: Bug
>          Components: gora-accumulo
>    Affects Versions: 0.5, 0.6
>         Environment:     Gora 0.5
>     Accumulo 1.5.1
>     Zookeeper 3.4.6
>     Hadoop 1.2.1
>            Reporter: Gerhard Gossen
>            Priority: Critical
>
> In {{AccumuloStore.put(k, v)}} fields of type MAP or ARRAY are cleared first before they
are set to the new value. This is done in the methods {{putMap}}/{{putArray}} using a call
to {{deleteByQuery(q)}}. The name for fields to be deleted is taken from the current column.
However, {{deleteByQuery}} tries to translate the field names of the query to column names
again, which fails with a log message like
> {code}
> 2015-04-13 13:43:35.084 ERROR 16733 --- [ool-46-thread-1] o.a.gora.accumulo.store.AccumuloStore
   : Mapping not found for field: ol
> 2015-04-13 13:43:35.104 ERROR 16733 --- [ool-46-thread-1] o.a.gora.accumulo.store.AccumuloStore
   : Mapping not found for field: mk
> 2015-04-13 13:43:35.115 ERROR 16733 --- [ool-46-thread-1] o.a.gora.accumulo.store.AccumuloStore
   : Mapping not found for field: mtdt
> {code}
> As a result, the query is not restricted to any field and the *entire row is deleted*.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message