You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by "Don Hinshaw (JIRA)" <ji...@apache.org> on 2017/12/19 19:45:00 UTC
[jira] [Updated] (UNOMI-145) EventPropertyCondition Segment Cannot
Save Rule
[ https://issues.apache.org/jira/browse/UNOMI-145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Don Hinshaw updated UNOMI-145:
------------------------------
Description:
When creating the following segment, the initial step of putting all existing profiles into the segment works just fine. But the rule that is used to put future profiles into the segment cannot be saved due to a NumberFomatException.
{code:java}
{
"itemId": "test_segment",
"itemType": "segment",
"condition": {
"parameterValues": {
"eventCondition": {
"parameterValues": {
"propertyName": "target.properties.test",
"comparisonOperator": "equals",
"propertyValue": "test_value"
},
"type": "eventPropertyCondition"
}
},
"type": "pastEventCondition"
},
"metadata": {
"id": "test_segment",
"name": "Test Segment",
"description": "This is a Test Segment",
"scope": "systemscope",
"tags": [
"Test"
],
"enabled": true,
"missingPlugins": false,
"hidden": false,
"readOnly": false
}
}
{code}
{{2017-12-19 14:36:21,517 | ERROR | - /cxs/segments | sticSearchPersistenceServiceImpl | 205 - org.apache.unomi.persistence-elasticsearch-core - 1.2.0.incubating | Error while executing in class loader
MapperParsingException[failed to parse [condition.parameterValues.propertyValue]]; nested: NumberFormatException[For input string: "test_value"];
at org.elasticsearch.index.mapper.FieldMapper.parse(FieldMapper.java:298)
at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrField(DocumentParser.java:450)
at org.elasticsearch.index.mapper.DocumentParser.parseValue(DocumentParser.java:576)
at org.elasticsearch.index.mapper.DocumentParser.innerParseObject(DocumentParser.java:396)
at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrNested(DocumentParser.java:373)
at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrField(DocumentParser.java:447)
at org.elasticsearch.index.mapper.DocumentParser.parseObject(DocumentParser.java:467)
at org.elasticsearch.index.mapper.DocumentParser.innerParseObject(DocumentParser.java:383)
at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrNested(DocumentParser.java:373)
at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrField(DocumentParser.java:447)
at org.elasticsearch.index.mapper.DocumentParser.parseObject(DocumentParser.java:467)
at org.elasticsearch.index.mapper.DocumentParser.innerParseObject(DocumentParser.java:383)
at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrNested(DocumentParser.java:373)
at org.elasticsearch.index.mapper.DocumentParser.internalParseDocument(DocumentParser.java:93)
at org.elasticsearch.index.mapper.DocumentParser.parseDocument(DocumentParser.java:66)
at org.elasticsearch.index.mapper.DocumentMapper.parse(DocumentMapper.java:277)
at org.elasticsearch.index.shard.IndexShard.prepareIndex(IndexShard.java:536)
at org.elasticsearch.index.shard.IndexShard.prepareIndexOnPrimary(IndexShard.java:513)
at org.elasticsearch.action.bulk.TransportShardBulkAction.prepareIndexOperationOnPrimary(TransportShardBulkAction.java:450)
at org.elasticsearch.action.bulk.TransportShardBulkAction.executeIndexRequestOnPrimary(TransportShardBulkAction.java:458)
at org.elasticsearch.action.bulk.TransportShardBulkAction.executeBulkItemRequest(TransportShardBulkAction.java:143)
at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:113)
at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:69)
at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryShardReference.perform(TransportReplicationAction.java:939)
at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryShardReference.perform(TransportReplicationAction.java:908)
at org.elasticsearch.action.support.replication.ReplicationOperation.execute(ReplicationOperation.java:113)
at org.elasticsearch.action.support.replication.TransportReplicationAction$AsyncPrimaryAction.onResponse(TransportReplicationAction.java:322)
at org.elasticsearch.action.support.replication.TransportReplicationAction$AsyncPrimaryAction.onResponse(TransportReplicationAction.java:264)
at org.elasticsearch.action.support.replication.TransportReplicationAction$1.onResponse(TransportReplicationAction.java:888)
at org.elasticsearch.action.support.replication.TransportReplicationAction$1.onResponse(TransportReplicationAction.java:885)
at org.elasticsearch.index.shard.IndexShardOperationsLock.acquire(IndexShardOperationsLock.java:147)
at org.elasticsearch.index.shard.IndexShard.acquirePrimaryOperationLock(IndexShard.java:1658)
at org.elasticsearch.action.support.replication.TransportReplicationAction.acquirePrimaryShardReference(TransportReplicationAction.java:897)
at org.elasticsearch.action.support.replication.TransportReplicationAction.access$400(TransportReplicationAction.java:93)
at org.elasticsearch.action.support.replication.TransportReplicationAction$AsyncPrimaryAction.doRun(TransportReplicationAction.java:281)
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryOperationTransportHandler.messageReceived(TransportReplicationAction.java:260)
at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryOperationTransportHandler.messageReceived(TransportReplicationAction.java:252)
at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:69)
at org.elasticsearch.transport.TransportService$7.doRun(TransportService.java:627)
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:638)
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_131]
at java.lang.Thread.run(Thread.java:748)[:1.8.0_131]
Caused by: java.lang.NumberFormatException: For input string: "test_value"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)[:1.8.0_131]
at java.lang.Long.parseLong(Long.java:589)[:1.8.0_131]
at java.lang.Long.parseLong(Long.java:631)[:1.8.0_131]
at org.elasticsearch.common.xcontent.support.AbstractXContentParser.longValue(AbstractXContentParser.java:172)
at org.elasticsearch.index.mapper.NumberFieldMapper$NumberType$7.parse(NumberFieldMapper.java:740)
at org.elasticsearch.index.mapper.NumberFieldMapper$NumberType$7.parse(NumberFieldMapper.java:719)
at org.elasticsearch.index.mapper.NumberFieldMapper.parseCreateField(NumberFieldMapper.java:1058)
at org.elasticsearch.index.mapper.FieldMapper.parse(FieldMapper.java:287)
... 44 more}}
was:
When creating the following segment, the initial step of putting all existing profiles into the segment works just fine. But the rule that is used to put future profiles into the segment cannot be saved due to a NumberFomatException.
{code:java}
{
"itemId": "test_segment",
"itemType": "segment",
"condition": {
"parameterValues": {
"eventCondition": {
"parameterValues": {
"propertyName": "target.properties.test",
"comparisonOperator": "equals",
"propertyValue": "test_value"
},
"type": "eventPropertyCondition"
}
},
"type": "pastEventCondition"
},
"metadata": {
"id": "test_segment",
"name": "Test Segment",
"description": "This is a Test Segment",
"scope": "systemscope",
"tags": [
"Test"
],
"enabled": true,
"missingPlugins": false,
"hidden": false,
"readOnly": false
}
}
{code}
> EventPropertyCondition Segment Cannot Save Rule
> -----------------------------------------------
>
> Key: UNOMI-145
> URL: https://issues.apache.org/jira/browse/UNOMI-145
> Project: Apache Unomi
> Issue Type: Bug
> Affects Versions: 1.2.0-incubating
> Reporter: Don Hinshaw
>
> When creating the following segment, the initial step of putting all existing profiles into the segment works just fine. But the rule that is used to put future profiles into the segment cannot be saved due to a NumberFomatException.
> {code:java}
> {
> "itemId": "test_segment",
> "itemType": "segment",
> "condition": {
> "parameterValues": {
> "eventCondition": {
> "parameterValues": {
> "propertyName": "target.properties.test",
> "comparisonOperator": "equals",
> "propertyValue": "test_value"
> },
> "type": "eventPropertyCondition"
> }
> },
> "type": "pastEventCondition"
> },
> "metadata": {
> "id": "test_segment",
> "name": "Test Segment",
> "description": "This is a Test Segment",
> "scope": "systemscope",
> "tags": [
> "Test"
> ],
> "enabled": true,
> "missingPlugins": false,
> "hidden": false,
> "readOnly": false
> }
> }
> {code}
> {{2017-12-19 14:36:21,517 | ERROR | - /cxs/segments | sticSearchPersistenceServiceImpl | 205 - org.apache.unomi.persistence-elasticsearch-core - 1.2.0.incubating | Error while executing in class loader
> MapperParsingException[failed to parse [condition.parameterValues.propertyValue]]; nested: NumberFormatException[For input string: "test_value"];
> at org.elasticsearch.index.mapper.FieldMapper.parse(FieldMapper.java:298)
> at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrField(DocumentParser.java:450)
> at org.elasticsearch.index.mapper.DocumentParser.parseValue(DocumentParser.java:576)
> at org.elasticsearch.index.mapper.DocumentParser.innerParseObject(DocumentParser.java:396)
> at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrNested(DocumentParser.java:373)
> at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrField(DocumentParser.java:447)
> at org.elasticsearch.index.mapper.DocumentParser.parseObject(DocumentParser.java:467)
> at org.elasticsearch.index.mapper.DocumentParser.innerParseObject(DocumentParser.java:383)
> at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrNested(DocumentParser.java:373)
> at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrField(DocumentParser.java:447)
> at org.elasticsearch.index.mapper.DocumentParser.parseObject(DocumentParser.java:467)
> at org.elasticsearch.index.mapper.DocumentParser.innerParseObject(DocumentParser.java:383)
> at org.elasticsearch.index.mapper.DocumentParser.parseObjectOrNested(DocumentParser.java:373)
> at org.elasticsearch.index.mapper.DocumentParser.internalParseDocument(DocumentParser.java:93)
> at org.elasticsearch.index.mapper.DocumentParser.parseDocument(DocumentParser.java:66)
> at org.elasticsearch.index.mapper.DocumentMapper.parse(DocumentMapper.java:277)
> at org.elasticsearch.index.shard.IndexShard.prepareIndex(IndexShard.java:536)
> at org.elasticsearch.index.shard.IndexShard.prepareIndexOnPrimary(IndexShard.java:513)
> at org.elasticsearch.action.bulk.TransportShardBulkAction.prepareIndexOperationOnPrimary(TransportShardBulkAction.java:450)
> at org.elasticsearch.action.bulk.TransportShardBulkAction.executeIndexRequestOnPrimary(TransportShardBulkAction.java:458)
> at org.elasticsearch.action.bulk.TransportShardBulkAction.executeBulkItemRequest(TransportShardBulkAction.java:143)
> at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:113)
> at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:69)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryShardReference.perform(TransportReplicationAction.java:939)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryShardReference.perform(TransportReplicationAction.java:908)
> at org.elasticsearch.action.support.replication.ReplicationOperation.execute(ReplicationOperation.java:113)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$AsyncPrimaryAction.onResponse(TransportReplicationAction.java:322)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$AsyncPrimaryAction.onResponse(TransportReplicationAction.java:264)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$1.onResponse(TransportReplicationAction.java:888)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$1.onResponse(TransportReplicationAction.java:885)
> at org.elasticsearch.index.shard.IndexShardOperationsLock.acquire(IndexShardOperationsLock.java:147)
> at org.elasticsearch.index.shard.IndexShard.acquirePrimaryOperationLock(IndexShard.java:1658)
> at org.elasticsearch.action.support.replication.TransportReplicationAction.acquirePrimaryShardReference(TransportReplicationAction.java:897)
> at org.elasticsearch.action.support.replication.TransportReplicationAction.access$400(TransportReplicationAction.java:93)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$AsyncPrimaryAction.doRun(TransportReplicationAction.java:281)
> at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryOperationTransportHandler.messageReceived(TransportReplicationAction.java:260)
> at org.elasticsearch.action.support.replication.TransportReplicationAction$PrimaryOperationTransportHandler.messageReceived(TransportReplicationAction.java:252)
> at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:69)
> at org.elasticsearch.transport.TransportService$7.doRun(TransportService.java:627)
> at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:638)
> at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_131]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_131]
> at java.lang.Thread.run(Thread.java:748)[:1.8.0_131]
> Caused by: java.lang.NumberFormatException: For input string: "test_value"
> at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)[:1.8.0_131]
> at java.lang.Long.parseLong(Long.java:589)[:1.8.0_131]
> at java.lang.Long.parseLong(Long.java:631)[:1.8.0_131]
> at org.elasticsearch.common.xcontent.support.AbstractXContentParser.longValue(AbstractXContentParser.java:172)
> at org.elasticsearch.index.mapper.NumberFieldMapper$NumberType$7.parse(NumberFieldMapper.java:740)
> at org.elasticsearch.index.mapper.NumberFieldMapper$NumberType$7.parse(NumberFieldMapper.java:719)
> at org.elasticsearch.index.mapper.NumberFieldMapper.parseCreateField(NumberFieldMapper.java:1058)
> at org.elasticsearch.index.mapper.FieldMapper.parse(FieldMapper.java:287)
> ... 44 more}}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)