Uploaded image for project: 'CarbonData'
  1. CarbonData
  2. CARBONDATA-3554

Zookeeper locking throw java.lang.IllegalArgumentException: Path cannot be null when running CLEAN FILES FOR TABLE

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 1.6.0
    • Fix Version/s: None
    • Component/s: core
    • Labels:
      None

      Description

      when running CLEAN FILES FOR TABLE

      It throws java.lang.IllegalArgumentException: Path cannot be null 

      at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:45) at org.apache.zookeeper.common.PathUtils.validatePath(PathUtils.java:45) at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1081) at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1130) at org.apache.carbondata.core.locks.ZooKeeperLocking.unlock(ZooKeeperLocking.java:181) at org.apache.carbondata.core.util.DeleteLoadFolders.deleteLoadFoldersFromFileSystem(DeleteLoadFolders.java:252) at org.apache.carbondata.core.statusmanager.SegmentStatusManager.isUpdationRequired(SegmentStatusManager.java:927) at org.apache.carbondata.core.statusmanager.SegmentStatusManager.deleteLoadsAndUpdateMetadata(SegmentStatusManager.java:943) at org.apache.carbondata.api.CarbonStore$.cleanFiles(CarbonStore.scala:187) at org.apache.spark.sql.execution.command.management.CarbonCleanFilesCommand.cleanGarbageData(CarbonCleanFilesCommand.scala:147) at org.apache.spark.sql.execution.command.management.CarbonCleanFilesCommand.processData(CarbonCleanFilesCommand.scala:111) at org.apache.spark.sql.execution.command.AtomicRunnableCommand$$anonfun$run$3.apply(package.scala:148) at org.apache.spark.sql.execution.command.AtomicRunnableCommand$$anonfun$run$3.apply(package.scala:145) at org.apache.spark.sql.execution.command.Auditable$class.runWithAudit(package.scala:104) at org.apache.spark.sql.execution.command.AtomicRunnableCommand.runWithAudit(package.scala:141) at org.apache.spark.sql.execution.command.AtomicRunnableCommand.run(package.scala:145) at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult$lzycompute(commands.scala:70) at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult(commands.scala:68) at org.apache.spark.sql.execution.command.ExecutedCommandExec.executeCollect(commands.scala:79) at org.apache.spark.sql.Dataset$$anonfun$6.apply(Dataset.scala:190) at org.apache.spark.sql.Dataset$$anonfun$6.apply(Dataset.scala:190) at org.apache.spark.sql.Dataset$$anonfun$52.apply(Dataset.scala:3259) at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:77) at org.apache.spark.sql.Dataset.withAction(Dataset.scala:3258) at org.apache.spark.sql.Dataset.<init>(Dataset.scala:190) at org.apache.spark.sql.CarbonSession$$anonfun$sql$1.apply(CarbonSession.scala:91) at org.apache.spark.sql.CarbonSession$$anonfun$sql$1.apply(CarbonSession.scala:90) at org.apache.spark.sql.CarbonSession.withProfiler(CarbonSession.scala:136) at org.apache.spark.sql.CarbonSession.sql(CarbonSession.scala:88)

       

      This is caused by this line of code in ZooKeeperLocking.java

      if (null != zk.exists(lockPath, true)) {

      It should check whether lockPath is not null:

      if (null != lockPath && null != zk.exists(lockPath, true)) {

       

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              chinwei Low Chin Wei
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: