Error 413: Request Too Large


#1

Dear Gurus,

[code]> df2scidb(s3)
Error in scidbquery(query, async = FALSE, release = 1, session = session) :
Error 413: Request Too Large
In addition: Warning message:
In df2scidb(s3) : Attribute names have been changed

dim(s3)
[1] 401 1281
object.size(s3)
4886800 bytes[/code]

Tried a simple matrix. It failed too

[code]> s4 <- as.data.frame(matrix(data = 1, nrow = 401, ncol = 1281))

df2scidb(s4)
Error in scidbquery(query, async = FALSE, release = 1, session = session) :
Error 413: Request Too Large[/code]

The data.frame is not terribly large, is it?

On the other hand, I tried to load with loadcsv.py and csv2scidb without success. I think that it is much easier to save within R, no need to specify the type of 1000+ attributes, or is there an shortcut?


#2

Hi,

Sorry about this. The very long creation query is exceeding a fixed buffer size limit in the simple network layer between R and SciDB. I will enter this as a bug in the github repository github.com/paradigm4/SciDBR and fix it by this weekend.

–Bryan


#3

Thank you very much.

Is it possible to export the creation query? So that it can be executed in the terminal.


#4

The limitation in the shim program has now been relaxed to support queries of arbitrary length, up to available memory constraints. Install the shim program from source code available from:

github.com/Paradigm4/shim

or from the RHEL or Ubuntu binary packages referred to in the above link.

In answer to your other question, there is not a way to generate and return queries per se. But you can turn on:

options(scidb.debug=TRUE)

in R and every query will be displayed as they are run. You could in principal copy and paste that into iquery. Be warned that the query to create the 1000-attribute array is quite long!

Best,

Bryan