We're Moving!

The Vertica Forum is moving to a new OpenText Analytics Database (Vertica) Community.

Join us there to post discussion topics, learn about

product releases, share tips, access the blog, and much more.

Create My New Community Account Now


creating R UDF library — Vertica Forum

creating R UDF library

 

Ima getting error while running library in vertica  , though the underlying Rcode is exceuting fine in R (no syntax errors) 

Failure in UDx RPC call InvokeSetExecContext(): Error calling setupExecContext() in User Defined Object [] at [/scratch_a/release/22925/vbuild/vertica/OSS/UDxFence/vertica-udx-R.cpp:139], error code: 0, message: Exception in Validate Library:<text>:1:29: unexpected input

1: rudfkmeans <- function(x,y)

Comments

  • Hi kr,

     

    Can you share the code that is causing the error? I think you have  a syntax error in your code. It may be syntactically correct in R, but Vertica does some additional validation on the R source before running it.

     

    Thanks,

    Chris

  • I'm having the same issues, I have tried many different versions and still get the same error.

     

    Attaching the code, can you please take a look and point me to what I'm doing wrong:

     

    DetectSeasonality <- function(x,y)
    {
    library('AnomalyDetection')
    ifelse(!is.null(y[['TimeInterval']]),TimeInterval = as.numeric(y[['TimeInterval']]),stop("Expected parameter TimeInterval"))
    ifelse(!is.null(y[['SmoothingMethod']]),SmoothingMethod = as.character(y[['SmoothingMethod']]),stop("Expected parameter SmoothingMethod"))
    ifelse(!is.null(y[['alpha']]),alpha = as.numeric(y[['alpha']]),stop("Expected parameter alpha"))
    ifelse(!is.null(y[['beta']]),beta = as.numeric(y[['beta']]),stop("Expected parameter beta"))
    ifelse(!is.null(y[['LowValues']]),LowValues = as.numeric(y[['LowValues']]),stop("Expected parameter LowValues"))
    ifelse(!is.null(y[['CutIntervals']]),CutIntervals = as.numeric(y[['CutIntervals']]),stop("Expected parameter CutIntervals"))
    dataResult = FindSeasonality(x,TimeInterval,SmoothingMethod,alpha,beta,LowValues,CutIntervals)
    dataResult
    }
    FindSeasonalityParams <- function()
    {
    params = data.frame(datatype=c('int','varchar','int','int','int','int'), length=rep(NA,6), scale=rep(NA,6), name=c("TimeInterval","SmoothingMethod","alpha","beta","LowValues","CutIntervals"))
    params
    }
    DetectSeasonality_factory = function()
    {
    list(name=DetectSeasonality,udxtype=c("transform"),intype=c("any"),outtype=c("any"),parametertypecallback=FindSeasonalityParams)
    }

    Thanks,

     

    Kostia

  • We have typically seen this error whenever the R script is created in Windows OS and saved in the Dos/Windows format instead of Unix format(End of Line character is different). We usually open the file in Notepad++ and use "Edit --> EOL Conversion" to save the source file in Unix format. 

     

    Ravi

  • Hi,

     

    That fixed the issue.

     

    Thank you very much.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file