2016-05-18 15 views
1

In meinen Bemühungen um die Frage hier erwähnt zu arbeiten: MonetDB connect to GO.db within R code that is run in-databaseMonetDB Embedded R-Code-Debugging

Ich ging weiter und kopiert den Code aus WGCNA, dass ich mein eigenes Paket benötigt und es installiert ist. Offensichtlich kann ich jetzt das Paket ohne irgendwelche Probleme laden (da ich den GO.db Teil nicht brauchte).

Allerdings scheinen ich in ein anderes Problem zu laufen:

Server sagt ‚Fehler R Ausdruck läuft!. Fehlermeldung: Fehler in .C ("corFast", x = as.double (x), now = as.integer (nrow (x)), ncolx = as.integer (ncol (x)),: '.

ich in die Tat die schnelleren cor Funktion von WGCNA verwenden wollte, aber anscheinend der C-Aufruf erzeugt nun ein weiteres Problem. Leider ist die Nachricht nicht informativ. ich habe bereits versucht, die Abfrage interaktiv und das Hinzufügen von Debug auf die laufen Aussage. das hat mich nicht mit mehr Informationen.

gibt es irgendetwas, das ich tun kann, die Ausführlichkeit zu erhöhen, so dass ich die Vorarb debuggen kann?

ich auch versucht:

options(monetdb.debug.query=F) 

Diese in etwas Extraleistung führte vor der Abfrage, aber keine zusätzliche Ausgabe auf dem aufgetretenen Fehler.

den Vorschlag von Hannes Muehleisen Verwendung von I hinzugefügt:

options(monetdb.debug.mapi=T) 

es ein wenig mehr Informationen hinzufügt, die mich ein bisschen weiter fortschreiten. Ich bin jetzt mit dem folgenden Fehler fest, der wieder abgeschnitten scheint.

QQ: 'SELECT * VON cor_test();' TX: 'SELECT * FROM cor_test(); ; RX: '! Fehler beim Ausführen von R-Ausdruck. Fehlermeldung: Fehler in .C ("corFast", x = as.double (x), now = as.integer (null (x)), ncolx = as.integer (ncol (x)),:! "CorFast "nicht verfügbar für .C() für Paket" MRMRF Fehler in .local (conn, statement, ...): Kann nicht Anweisung ausführen 'SELECT * FROM cor_test();'. Der Server sagt '! Error läuft R Fehlermeldung: Fehler in .C ("corFast", x = as.double (x), now = as.integer (nrow (x)), ncolx = as.integer (ncol (x)), : ‘.

+0

werde ich morgen entschuldigen für die Verzögerung –

+0

@ HannesMühleisen Ich glaube ich weiß, was dich gestern beschäftigt hat. :) – wligtenberg

Antwort

0

Ja, das ist ein bekanntes Problem, bei dem nur die erste Zeile der Fehlermeldung zurückgegeben wird. Wir sollten dieses Problem zu beheben. ich habe immer stop(whatever) verwenden ein paar Informationen von innerhalb des UDF zurückzukehren.

+0

Gibt es eine schnelle und dreckige Korrektur, die ich möglicherweise an den Quellcode machen kann? (Ich habe es bereits aus der Quelle kompiliert :)) – wligtenberg

+0

tatsächlich versuchen, 'Optionen (monetdb.debug.mapi = T)' und sehen, ob Sie mehr Ausgabe sehen. –

+0

Das gibt mir ein wenig mehr Informationen! Vielen Dank. – wligtenberg