Skip to content

Implicit assumption on source uniqueness in Mapping #38

@oconstant

Description

@oconstant

When using the Mapping module, having the same rule executing twice on the same source object results in a collision even though the query execution context is different.

This should be a documented restriction, or the restriction should be lifted.

At least one cause of the issue seems to be located in MappingExecution.java:

public Object get(ICause cause_p) { Object result = null; if (cause_p instanceof IMappingCause) {
IMappingCause<Object, Object> cause = (IMappingCause<Object, Object>)cause_p;
IRule<Object, Object, Object> rule = (IRule<Object, Object, Object>)cause.getRule();
Object traceSource = rule.traceSource(cause.getSource());
result = get(traceSource, rule); // HERE, QUERY EXECUTION IS IGNORED
}
return result;
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions