org.renjin.eval.EvalException: Exception calling R_parse : Unsupported pointer store to a memory region allocated for primitives

125 views Asked by At

I am trying to run the following code from Java using org.renjin Package.

library('org.renjin.cran:jsonlite')
data <- stream_in(file("src/main/resources/Events.json"))
print(data$timestamp)

I am getting the following error,

org.renjin.eval.EvalException: Exception calling R_parse : Unsupported pointer store to a memory region allocated for primitives.
This means something went wrong during compilation and we allocated the wrong type of storage.
    at org.renjin.primitives.Native.redotCall(Native.java:378)
    at org.renjin.primitives.R$primitive$$Call.applyPromised(R$primitive$$Call.java:65)
    at org.renjin.sexp.BuiltinFunction.apply(BuiltinFunction.java:100)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.eval.Context.evaluate(Context.java:282)
    at org.renjin.primitives.special.BeginFunction.apply(BeginFunction.java:39)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.sexp.Closure.applyPromised(Closure.java:200)
    at org.renjin.sexp.Closure.apply(Closure.java:133)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.eval.Context.evaluate(Context.java:282)
    at org.renjin.primitives.special.BeginFunction.apply(BeginFunction.java:39)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.eval.Context.evaluate(Context.java:282)
    at org.renjin.primitives.special.IfFunction.apply(IfFunction.java:44)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.eval.Context.evaluate(Context.java:282)
    at org.renjin.primitives.special.BeginFunction.apply(BeginFunction.java:39)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.sexp.Closure.applyPromised(Closure.java:200)
    at org.renjin.sexp.Closure.apply(Closure.java:133)
    at org.renjin.sexp.FunctionCall.eval(FunctionCall.java:80)
    at org.renjin.eval.Context.evaluate(Context.java:282)
    at org.renjin.primitives.Evaluation.lapply(Evaluation.java:94)
    at org.renjin.primitives.R$primitive$lapply.doApply(R$primitive$lapply.java:65)
    at org.renjin.primitives.R$primitive$lapply.applyPromised(R$primitive$lapply.java:30)
    at org.renjin.sexp.BuiltinFunction.apply(BuiltinFunction.java:100)
    at org.renjin.primitives.special.InternalFunction.apply(InternalFunction.java:46)

Please help me out, thanks in advance.

1

There are 1 answers

0
akbertram On

It looks the Renjin toolchain wasn't successful in compiling jsonlite's C code to Java classes.

As an alternative, you can use the rjson package, for which a Renjin-compatible implementation exists: http://packages.renjin.org/package/org.renjin.cran/rjson