Scala code ne pas exécuter

voix
0

Je suis en train d'exécuter le code suivant sur scala Spark, mais pour une raison quelconque la sélection de la fonction est pas appelé

var lines = sc.textFile(inputPath+fileName,1)
val lines2 =lines.map(l=>selective(
func,List(2,3),List(1,26),l,;,0           
))
lines2.toArray().foreach(l=>out.write(l))
.......

La fonction sélective est définie comme suit

def selective(f: (String,Boolean) => String , phoneFields: Seq[Int], codeFields: Seq[Int], in: String, delimiter:String, iMode:Int /* 0 for enc, 1 for dec */) :String =
        in.split(delimiter,-1).zipWithIndex
    .map { 

      case (str, ix) 
    if( phoneFields.contains(ix)||codeFields.contains(ix)) => 
        var output=f(str,codeFields.contains(ix))
        var sTemp=str+:+output+\n
        if((iMode==0)&&codeFields.contains(ix)&&(str.compareTo()!=0)  )
            CodeDictString+=sTemp
        else if(str.compareTo()!=0)
            PhoneDictString+=sTemp

        output
      case other => other._1
    }.mkString(;).+(\n)

La déclaration println n'est pas en cours d'exécution. De plus, la fonction ne retourne rien. sc est l'objet de contexte d'allumage

Créé 31/10/2013 à 02:26
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
3

Courez - vous cela en localmode de ou sur un cluster? La fonction passée à lines.mapest évaluée par les travailleurs Spark, de sorte que println apparaîtra dans les journaux stdout du travailleur si vous travaillez sur un cluster (ces journaux sont visibles via l'interface utilisateur Web de Spark).

Créé 31/10/2013 à 03:33
source utilisateur

voix
1

Cette fonction ne compile pas. la syntaxe

{
  some statement
  case ... => ...

n'est pas valide. Déclarations de cas peuvent n'apparaître comme ceci:

{
   case ... => ...
       ...
   case ... => ...
       ...
}

Puisque vous évidemment avez quelque chose à compiler, je parie qu'il ya une déclaration de cas avant que println, et cette déclaration de cas n'est pas sélectionné.

Créé 31/10/2013 à 03:47
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more