Skip to content

Commit 91fe328

Browse files
committed
Change prefer-gdal to false.
Added `DescribeablePartition` to debugging package.
1 parent 8bbed00 commit 91fe328

File tree

2 files changed

+37
-1
lines changed

2 files changed

+37
-1
lines changed

core/src/main/resources/reference.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
rasterframes {
22
nominal-tile-size = 256
3-
prefer-gdal = true
3+
prefer-gdal = false
44
showable-tiles = false
55
showable-max-cells = 20
66
max-truncate-row-element-length = 40

core/src/main/scala/org/locationtech/rasterframes/util/debug/package.scala

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,46 @@
2121

2222
package org.locationtech.rasterframes.util
2323

24+
import java.lang.reflect.{AccessibleObject, Modifier}
25+
26+
import org.apache.spark.Partition
27+
import org.apache.spark.rdd.RDD
28+
29+
import scala.util.Try
30+
2431
/**
2532
* Additional debugging routines. No guarantees these are or will remain stable.
2633
*
2734
* @since 4/6/18
2835
*/
2936
package object debug {
37+
38+
implicit class DescribeablePartition(val p: Partition) extends AnyVal {
39+
def describe: String = Try {
40+
def acc[A <: AccessibleObject](a: A): A = {
41+
a.setAccessible(true); a
42+
}
43+
44+
val getters = p.getClass.getDeclaredMethods
45+
.filter(_.getParameterCount == 0)
46+
.filter(m (m.getModifiers & Modifier.PUBLIC) > 0)
47+
.filterNot(_.getName == "hashCode")
48+
.map(acc)
49+
.map(m m.getName + "=" + String.valueOf(m.invoke(p)))
50+
51+
val fields = p.getClass.getDeclaredFields
52+
.filter(f (f.getModifiers & Modifier.PUBLIC) > 0)
53+
.map(acc)
54+
.map(m m.getName + "=" + String.valueOf(m.get(p)))
55+
56+
p.getClass.getSimpleName + "(" + (fields ++ getters).mkString(", ") + ")"
57+
58+
}.getOrElse(p.toString)
59+
}
60+
61+
implicit class RDDWithPartitionDescribe(val r: RDD[_]) extends AnyVal {
62+
def describePartitions: String = r.partitions.map(p ("Partition " + p.index) -> p.describe).mkString("\n")
63+
}
64+
3065
}
66+

0 commit comments

Comments
 (0)