Skip to content

Commit 12e3fbe

Browse files
authored
Upgrade arrow java, rust, and datafusion versions (#55)
* upgrade arrow and datafusion * bump toml version * ExecutionContext => SessionContext * fix more * data frame not a trait anymore * dataframe not dyn now * fix arc * remove implementation 'org.apache.arrow:arrow-c-data:8.0.0'
1 parent c0eeae9 commit 12e3fbe

12 files changed

Lines changed: 61 additions & 60 deletions

File tree

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@ To test it out, you can use this piece of demo code:
3535
package com.me;
3636

3737
import org.apache.arrow.datafusion.DataFrame;
38-
import org.apache.arrow.datafusion.ExecutionContext;
39-
import org.apache.arrow.datafusion.ExecutionContexts;
38+
import org.apache.arrow.datafusion.SessionContext;
39+
import org.apache.arrow.datafusion.SessionContexts;
4040

4141
public class DataFusionDemo {
4242

@@ -178,7 +178,7 @@ INFO: Created user preferences directory.
178178
jshell> import org.apache.arrow.datafusion.*
179179
180180
jshell> var context = ExecutionContexts.create()
181-
context ==> org.apache.arrow.datafusion.DefaultExecutionContext@4229bb3f
181+
context ==> org.apache.arrow.datafusion.DefaultSessionContext@4229bb3f
182182
183183
jshell> var df = context.sql("select 1.1 + cos(2.0)").join()
184184
df ==> org.apache.arrow.datafusion.DefaultDataFrame@1a18644

datafusion-examples/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ dependencies {
1414
implementation project(':datafusion-java')
1515
implementation 'org.slf4j:slf4j-api:1.7.36'
1616
implementation 'ch.qos.logback:logback-classic:1.2.11'
17-
implementation 'org.apache.arrow:arrow-format:7.0.0'
18-
implementation 'org.apache.arrow:arrow-vector:7.0.0'
17+
implementation 'org.apache.arrow:arrow-format:8.0.0'
18+
implementation 'org.apache.arrow:arrow-vector:8.0.0'
1919
}
2020

2121
application {

datafusion-examples/src/main/java/org/apache/arrow/datafusion/examples/ExampleMain.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
import java.nio.file.Paths;
55
import java.util.concurrent.CompletableFuture;
66
import org.apache.arrow.datafusion.DataFrame;
7-
import org.apache.arrow.datafusion.ExecutionContext;
8-
import org.apache.arrow.datafusion.ExecutionContexts;
7+
import org.apache.arrow.datafusion.SessionContext;
8+
import org.apache.arrow.datafusion.SessionContexts;
99
import org.apache.arrow.memory.BufferAllocator;
1010
import org.apache.arrow.memory.RootAllocator;
1111
import org.apache.arrow.vector.BigIntVector;
@@ -20,7 +20,7 @@ public class ExampleMain {
2020
private static final Logger logger = LoggerFactory.getLogger(ExampleMain.class);
2121

2222
public static void main(String[] args) throws Exception {
23-
try (ExecutionContext context = ExecutionContexts.create();
23+
try (SessionContext context = SessionContexts.create();
2424
BufferAllocator allocator = new RootAllocator()) {
2525
loadConstant(context).join();
2626

@@ -64,7 +64,7 @@ private static void consumeReader(ArrowReader reader) {
6464
}
6565
}
6666

67-
private static CompletableFuture<Void> loadConstant(ExecutionContext context) {
67+
private static CompletableFuture<Void> loadConstant(SessionContext context) {
6868
return context
6969
.sql("select 1 + 2")
7070
.thenComposeAsync(

datafusion-java/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ plugins {
99

1010
dependencies {
1111
implementation 'org.slf4j:slf4j-api:1.7.36'
12-
implementation 'org.apache.arrow:arrow-format:7.0.0'
13-
implementation 'org.apache.arrow:arrow-vector:7.0.0'
14-
runtimeOnly 'org.apache.arrow:arrow-memory-unsafe:7.0.0'
12+
implementation 'org.apache.arrow:arrow-format:8.0.0'
13+
implementation 'org.apache.arrow:arrow-vector:8.0.0'
14+
runtimeOnly 'org.apache.arrow:arrow-memory-unsafe:8.0.0'
1515
}
1616

1717
spotless {

datafusion-java/src/main/java/org/apache/arrow/datafusion/DefaultDataFrame.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@
1111
class DefaultDataFrame extends AbstractProxy implements DataFrame {
1212

1313
private static final Logger logger = LoggerFactory.getLogger(DefaultDataFrame.class);
14-
private final ExecutionContext context;
14+
private final SessionContext context;
1515

16-
DefaultDataFrame(ExecutionContext context, long pointer) {
16+
DefaultDataFrame(SessionContext context, long pointer) {
1717
super(pointer);
1818
this.context = context;
1919
}

datafusion-java/src/main/java/org/apache/arrow/datafusion/DefaultExecutionContext.java renamed to datafusion-java/src/main/java/org/apache/arrow/datafusion/DefaultSessionContext.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
import org.slf4j.Logger;
77
import org.slf4j.LoggerFactory;
88

9-
class DefaultExecutionContext extends AbstractProxy implements ExecutionContext {
9+
class DefaultSessionContext extends AbstractProxy implements SessionContext {
1010

11-
private static final Logger logger = LoggerFactory.getLogger(DefaultExecutionContext.class);
11+
private static final Logger logger = LoggerFactory.getLogger(DefaultSessionContext.class);
1212

1313
static native void querySql(
1414
long runtime, long context, String sql, ObjectResultCallback callback);
@@ -31,8 +31,7 @@ public CompletableFuture<DataFrame> sql(String sql) {
3131
if (null != errMessage && !errMessage.equals("")) {
3232
future.completeExceptionally(new RuntimeException(errMessage));
3333
} else {
34-
DefaultDataFrame frame =
35-
new DefaultDataFrame(DefaultExecutionContext.this, dataframeId);
34+
DefaultDataFrame frame = new DefaultDataFrame(DefaultSessionContext.this, dataframeId);
3635
future.complete(frame);
3736
}
3837
});
@@ -80,14 +79,14 @@ public Runtime getRuntime() {
8079

8180
private final TokioRuntime runtime;
8281

83-
DefaultExecutionContext(long pointer) {
82+
DefaultSessionContext(long pointer) {
8483
super(pointer);
8584
this.runtime = TokioRuntime.create();
8685
registerChild(runtime);
8786
}
8887

8988
@Override
9089
void doClose(long pointer) throws Exception {
91-
ExecutionContexts.destroyExecutionContext(pointer);
90+
SessionContexts.destroySessionContext(pointer);
9291
}
9392
}

datafusion-java/src/main/java/org/apache/arrow/datafusion/ExecutionContexts.java

Lines changed: 0 additions & 19 deletions
This file was deleted.

datafusion-java/src/main/java/org/apache/arrow/datafusion/ExecutionContext.java renamed to datafusion-java/src/main/java/org/apache/arrow/datafusion/SessionContext.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
import java.nio.file.Path;
44
import java.util.concurrent.CompletableFuture;
55

6-
/** An execution context holds resources and is the entrance for obtaining {@link DataFrame} */
7-
public interface ExecutionContext extends AutoCloseable, NativeProxy {
6+
/** A session context holds resources and is the entrance for obtaining {@link DataFrame} */
7+
public interface SessionContext extends AutoCloseable, NativeProxy {
88

99
/** Obtain the {@link DataFrame} by running the {@code sql} against the datafusion library */
1010
CompletableFuture<DataFrame> sql(String sql);
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package org.apache.arrow.datafusion;
2+
3+
public class SessionContexts {
4+
5+
private SessionContexts() {}
6+
7+
static native long createSessionContext();
8+
9+
static native void destroySessionContext(long pointer);
10+
11+
static {
12+
JNILoader.load();
13+
}
14+
15+
public static SessionContext create() {
16+
long pointer = createSessionContext();
17+
return new DefaultSessionContext(pointer);
18+
}
19+
}

datafusion-jni/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "datafusion_jni"
3-
version = "0.7.1"
3+
version = "0.11.0"
44
homepage = "https://github.com/apache/arrow-datafusion"
55
repository = "https://github.com/apache/arrow-datafusion"
66
authors = ["Apache Arrow <dev@arrow.apache.org>"]
@@ -12,8 +12,8 @@ edition = "2021"
1212
[dependencies]
1313
jni = "^0.19.0"
1414
tokio = "^1.18.0"
15-
arrow = "^9.0"
16-
datafusion = "^7.0"
15+
arrow = "^13.0"
16+
datafusion = "^8.0"
1717

1818
[lib]
1919
crate_type = ["cdylib"]

0 commit comments

Comments
 (0)