openml/OpenML

Error in doHTTRCall(method, url = url, query = list(api_key = conf$apikey), : ERROR (code = 100) in server response: Function not valid

minegazioglu opened this issue · 6 comments

I get the error

Uploading data set to server.
Uploading to 'http://www.openml.org/api/v1/data'.
Error in doHTTRCall(method, url = url, query = list(api_key = conf$apikey),  : ERROR (code = 100) in server response: Function not valid

when I try to upload a dataset to openML. I did not receive such an error before and uploaded ~18 datasets so far. Another issue is that when I log in to my openML account I used to see the number of datasets I uploaded was 18 and now it shows 0. What could be the problem?

P.S: I also tried to upload a dataset I successfully was able to upload about 15 days ago and get the same error.

Hi,

Does it work now? It's possible that this happened right in the middle of a webserver reconfiguration we did last week. Can you try it again, please?

Hi,

Does it work now? It's possible that this happened right in the middle of a webserver reconfiguration we did last week. Can you try it again, please?

I still get the same errror
Error in doHTTRCall(method, url = url, query = list(api_key = conf$apikey), : ERROR (code = 100) in server response: Function not valid
when I try to upload a dataset.

The code I am running:

library(OpenML)
library(data.table)




dat <- fread(path, stringsAsFactors = TRUE, na.strings = "NULL")



dat <- dat[!duplicated(dat)]



setOMLConfig(server = NULL, verbosity = NULL, apikey = ***,
             cachedir = NULL, arff.reader = NULL, confirm.upload = NULL)


new_desc = makeOMLDataSetDescription(
  
  name = "bank_marketing",
  description = paste("The data is related with direct marketing campaigns (phone calls) of a Portuguese banking institution. The classification goal is to predict if the client will subscribe a term deposit (variable y).

"),
  default.target.attribute = "y",
  licence = "public",
  visibility = "Only me",
  original.data.url = "https://archive.ics.uci.edu/ml/datasets/Bank+Marketing"
)
new_oml_dat = makeOMLDataSet(
  desc = new_desc,
  data = dat,
  colnames.old = colnames(dat),
  colnames.new = colnames(dat),
  target.features = "y")
uploadOMLDataSet(new_oml_dat, verbosity = 2)

@giuseppec can you see what is going wrong here?

I get the same error. Any idea what's going wrong?

I guess something changed on the server side a while ago.

@joaquinvanschoren

The R code tries to upload the .arff data with the following XML:

<oml:data_set_description xmlns:oml="http://openml.org/openml">
  <oml:name>bank_marketing</oml:name>
  <oml:version>0</oml:version>
  <oml:description>The data is related with direct marketing campaigns (phone calls) of a Portuguese banking institution. The classification goal is to predict if the client will subscribe a term deposit (variable y).

</oml:description>
  <oml:format>ARFF</oml:format>
  <oml:licence>public</oml:licence>
  <oml:default_target_attribute>Species</oml:default_target_attribute>
  <oml:original_data_url>https://archive.ics.uci.edu/ml/datasets/Bank+Marketing</oml:original_data_url>
</oml:data_set_description>

This used to work. I have checked https://www.openml.org/apis and tried to upload it there but I get

{
  "error": {
    "code": "135",
    "message": "Please provide description xml"
  }
}

Any idea what's wrong? I suppose the XML does not appear to be "valid" but could not see why, even after looking at the XSD scheme.

Hmm, not sure, but should not be in there, this is filled in by the server.
How do you upload this exactly? What's the post request body? The error seems to suggest it didn't find the description.