aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/MongoRecordReader.java3
-rw-r--r--exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java4
-rw-r--r--exec/java-exec/src/main/java/org/apache/drill/exec/store/easy/json/JSONRecordReader.java2
-rw-r--r--exec/java-exec/src/test/java/org/apache/drill/exec/store/json/TestJsonRecordReader.java6
-rw-r--r--exec/java-exec/src/test/resources/jsoninput/big_numeric.json1
5 files changed, 13 insertions, 3 deletions
diff --git a/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/MongoRecordReader.java b/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/MongoRecordReader.java
index 5af63ff97..da9670154 100644
--- a/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/MongoRecordReader.java
+++ b/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/MongoRecordReader.java
@@ -100,8 +100,7 @@ public class MongoRecordReader extends AbstractRecordReader {
Map<String, List<BasicDBObject>> mergedFilters = MongoUtils.mergeFilters(
subScanSpec.getMinFilters(), subScanSpec.getMaxFilters());
buildFilters(subScanSpec.getFilter(), mergedFilters);
- enableAllTextMode = fragmentContext.getDrillbitContext().getOptionManager()
- .getOption(ExecConstants.MONGO_ALL_TEXT_MODE).bool_val;
+ enableAllTextMode = fragmentContext.getOptions().getOption(ExecConstants.MONGO_ALL_TEXT_MODE).bool_val;
init(subScanSpec);
}
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java b/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
index 83a89df6e..0fb10ff1b 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/server/DrillbitContext.java
@@ -87,6 +87,10 @@ public class DrillbitContext {
return workBus;
}
+ /**
+ * @return the system options manager. It is important to note that this manager only contains options at the
+ * "system" level and not "session" level.
+ */
public SystemOptionManager getOptionManager() {
return systemOptions;
}
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/store/easy/json/JSONRecordReader.java b/exec/java-exec/src/main/java/org/apache/drill/exec/store/easy/json/JSONRecordReader.java
index 557c0f0c1..c343177a7 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/store/easy/json/JSONRecordReader.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/store/easy/json/JSONRecordReader.java
@@ -70,7 +70,7 @@ public class JSONRecordReader extends AbstractRecordReader {
this.fileSystem = fileSystem;
this.fragmentContext = fragmentContext;
this.columns = columns;
- this.enableAllTextMode = fragmentContext.getDrillbitContext().getOptionManager().getOption(ExecConstants.JSON_ALL_TEXT_MODE).bool_val;
+ this.enableAllTextMode = fragmentContext.getOptions().getOption(ExecConstants.JSON_ALL_TEXT_MODE).bool_val;
}
@Override
diff --git a/exec/java-exec/src/test/java/org/apache/drill/exec/store/json/TestJsonRecordReader.java b/exec/java-exec/src/test/java/org/apache/drill/exec/store/json/TestJsonRecordReader.java
index 449f09108..c4bfcce62 100644
--- a/exec/java-exec/src/test/java/org/apache/drill/exec/store/json/TestJsonRecordReader.java
+++ b/exec/java-exec/src/test/java/org/apache/drill/exec/store/json/TestJsonRecordReader.java
@@ -57,4 +57,10 @@ public class TestJsonRecordReader extends BaseTestQuery{
final String sql = "select * from cp.`store/json/value-capacity.json`";
test(sql);
}
+
+ @Test
+ public void testEnableAllTextMode() throws Exception {
+ testNoResult("alter session set `store.json.all_text_mode`= true");
+ test("select * from cp.`jsoninput/big_numeric.json`");
+ }
}
diff --git a/exec/java-exec/src/test/resources/jsoninput/big_numeric.json b/exec/java-exec/src/test/resources/jsoninput/big_numeric.json
new file mode 100644
index 000000000..df13d3069
--- /dev/null
+++ b/exec/java-exec/src/test/resources/jsoninput/big_numeric.json
@@ -0,0 +1 @@
+{ "a1": 14994882832830675451 } \ No newline at end of file