Skip to content

Commit e1d4ab4

Browse files
renovate-botkurtisvg
authored andcommitted
Update apache_beam.version to v2.16.0 (GoogleCloudPlatform#1653)
* Update apache_beam.version to v2.16.0 * Operation -> OperationFuture. * Remove unused import. * Replace wait with get.
1 parent e252f24 commit e1d4ab4

4 files changed

Lines changed: 191 additions & 129 deletions

File tree

dataflow/spanner-io/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
<java.version>1.8</java.version>
3939
<maven.compiler.source>1.8</maven.compiler.source>
4040
<maven.compiler.target>1.8</maven.compiler.target>
41-
<apache_beam.version>2.5.0</apache_beam.version>
41+
<apache_beam.version>2.16.0</apache_beam.version>
4242
</properties>
4343

4444
<build>

dataflow/spanner-io/src/test/java/com/example/dataflow/SpannerGroupWriteIT.java

Lines changed: 50 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919
import static org.junit.Assert.assertEquals;
2020
import static org.junit.Assert.assertTrue;
2121

22+
import com.google.api.gax.longrunning.OperationFuture;
2223
import com.google.cloud.spanner.Database;
2324
import com.google.cloud.spanner.DatabaseAdminClient;
2425
import com.google.cloud.spanner.DatabaseClient;
2526
import com.google.cloud.spanner.DatabaseId;
2627
import com.google.cloud.spanner.Mutation;
27-
import com.google.cloud.spanner.Operation;
2828
import com.google.cloud.spanner.ReadContext;
2929
import com.google.cloud.spanner.ResultSet;
3030
import com.google.cloud.spanner.Spanner;
@@ -72,35 +72,44 @@ public void setUp() throws Exception {
7272
// Does not exist, ignore.
7373
}
7474

75-
Operation<Database, CreateDatabaseMetadata> op = adminClient
76-
.createDatabase(instanceId, databaseId, Arrays.asList("CREATE TABLE users ("
77-
+ "id STRING(MAX) NOT NULL, state STRING(MAX) NOT NULL) PRIMARY KEY (id)",
78-
"CREATE TABLE PendingReviews (id INT64, action STRING(MAX), "
79-
+ "note STRING(MAX), userId STRING(MAX),) PRIMARY KEY (id)"));
75+
OperationFuture<Database, CreateDatabaseMetadata> op =
76+
adminClient.createDatabase(
77+
instanceId,
78+
databaseId,
79+
Arrays.asList(
80+
"CREATE TABLE users ("
81+
+ "id STRING(MAX) NOT NULL, state STRING(MAX) NOT NULL) PRIMARY KEY (id)",
82+
"CREATE TABLE PendingReviews (id INT64, action STRING(MAX), "
83+
+ "note STRING(MAX), userId STRING(MAX),) PRIMARY KEY (id)"));
8084

81-
op.waitFor();
85+
op.get();
8286

8387
DatabaseClient dbClient = getDbClient();
8488

8589
List<Mutation> mutations = new ArrayList<>();
8690
for (int i = 0; i < 20; i++) {
8791
mutations.add(
88-
Mutation.newInsertBuilder("users").set("id").to(Integer.toString(i)).set("state")
89-
.to("ACTIVE").build());
92+
Mutation.newInsertBuilder("users")
93+
.set("id")
94+
.to(Integer.toString(i))
95+
.set("state")
96+
.to("ACTIVE")
97+
.build());
9098
}
9199
TransactionRunner runner = dbClient.readWriteTransaction();
92-
runner.run(new TransactionRunner.TransactionCallable<Void>() {
93-
94-
@Nullable
95-
@Override
96-
public Void run(TransactionContext tx) {
97-
tx.buffer(mutations);
98-
return null;
99-
}
100-
});
101-
102-
String content = IntStream.range(0, 10).mapToObj(Integer::toString)
103-
.collect(Collectors.joining("\n"));
100+
runner.run(
101+
new TransactionRunner.TransactionCallable<Void>() {
102+
103+
@Nullable
104+
@Override
105+
public Void run(TransactionContext tx) {
106+
tx.buffer(mutations);
107+
return null;
108+
}
109+
});
110+
111+
String content =
112+
IntStream.range(0, 10).mapToObj(Integer::toString).collect(Collectors.joining("\n"));
104113
tempPath = Files.createTempFile("suspicious-ids", "txt");
105114
Files.write(tempPath, content.getBytes());
106115
}
@@ -120,30 +129,38 @@ public void tearDown() {
120129
@Test
121130
public void testEndToEnd() {
122131
SpannerGroupWrite.main(
123-
new String[] { "--instanceId=" + instanceId, "--databaseId=" + databaseId,
124-
"--suspiciousUsersFile=" + tempPath, "--runner=DirectRunner" });
132+
new String[] {
133+
"--instanceId=" + instanceId,
134+
"--databaseId=" + databaseId,
135+
"--suspiciousUsersFile=" + tempPath,
136+
"--runner=DirectRunner"
137+
});
125138

126139
DatabaseClient dbClient = getDbClient();
127140
try (ReadContext context = dbClient.singleUse()) {
128-
ResultSet rs = context.executeQuery(
129-
Statement.newBuilder("SELECT COUNT(*) FROM users WHERE STATE = @state").bind("state")
130-
.to("BLOCKED").build());
141+
ResultSet rs =
142+
context.executeQuery(
143+
Statement.newBuilder("SELECT COUNT(*) FROM users WHERE STATE = @state")
144+
.bind("state")
145+
.to("BLOCKED")
146+
.build());
131147
assertTrue(rs.next());
132148
assertEquals(10, rs.getLong(0));
133-
134149
}
135150
try (ReadContext context = dbClient.singleUse()) {
136-
ResultSet rs = context.executeQuery(
137-
Statement.newBuilder("SELECT COUNT(*) FROM PendingReviews WHERE ACTION = @action")
138-
.bind("action").to("REVIEW ACCOUNT").build());
151+
ResultSet rs =
152+
context.executeQuery(
153+
Statement.newBuilder("SELECT COUNT(*) FROM PendingReviews WHERE ACTION = @action")
154+
.bind("action")
155+
.to("REVIEW ACCOUNT")
156+
.build());
139157
assertTrue(rs.next());
140158
assertEquals(10, rs.getLong(0));
141159
}
142160
}
143161

144162
private DatabaseClient getDbClient() {
145-
return spanner
146-
.getDatabaseClient(DatabaseId.of(spannerOptions.getProjectId(), instanceId, databaseId));
163+
return spanner.getDatabaseClient(
164+
DatabaseId.of(spannerOptions.getProjectId(), instanceId, databaseId));
147165
}
148-
149166
}

dataflow/spanner-io/src/test/java/com/example/dataflow/SpannerReadIT.java

Lines changed: 107 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@
1818

1919
import static org.junit.Assert.assertEquals;
2020

21+
import com.google.api.gax.longrunning.OperationFuture;
2122
import com.google.cloud.spanner.Database;
2223
import com.google.cloud.spanner.DatabaseAdminClient;
2324
import com.google.cloud.spanner.DatabaseClient;
2425
import com.google.cloud.spanner.DatabaseId;
2526
import com.google.cloud.spanner.Mutation;
26-
import com.google.cloud.spanner.Operation;
2727
import com.google.cloud.spanner.Spanner;
2828
import com.google.cloud.spanner.SpannerException;
2929
import com.google.cloud.spanner.SpannerOptions;
@@ -34,6 +34,7 @@
3434
import java.nio.file.Path;
3535
import java.util.Arrays;
3636
import java.util.List;
37+
import java.util.concurrent.ExecutionException;
3738
import java.util.stream.Collectors;
3839
import javax.annotation.Nullable;
3940
import org.junit.After;
@@ -50,7 +51,7 @@ public class SpannerReadIT {
5051
private SpannerOptions spannerOptions;
5152

5253
@Before
53-
public void setUp() {
54+
public void setUp() throws InterruptedException, ExecutionException {
5455
instanceId = System.getProperty("spanner.test.instance");
5556
databaseId = "df-spanner-read-it";
5657

@@ -65,61 +66,82 @@ public void setUp() {
6566
// Does not exist, ignore.
6667
}
6768

68-
Operation<Database, CreateDatabaseMetadata> op = adminClient
69-
.createDatabase(instanceId, databaseId, Arrays.asList("CREATE TABLE Singers "
70-
+ "(singerId INT64 NOT NULL, firstName STRING(MAX) NOT NULL, "
71-
+ "lastName STRING(MAX) NOT NULL,) PRIMARY KEY (singerId)",
72-
"CREATE TABLE Albums (singerId INT64 NOT NULL, albumId INT64 NOT NULL, "
73-
+ "albumTitle STRING(MAX) NOT NULL,) PRIMARY KEY (singerId, albumId)"));
74-
75-
op.waitFor();
76-
77-
List<Mutation> mutations = Arrays.asList(
78-
Mutation.newInsertBuilder("singers")
79-
.set("singerId").to(1L)
80-
.set("firstName").to("John")
81-
.set("lastName").to("Lennon")
82-
.build(),
83-
Mutation.newInsertBuilder("singers")
84-
.set("singerId").to(2L)
85-
.set("firstName").to("Paul")
86-
.set("lastName").to("Mccartney")
87-
.build(),
88-
Mutation.newInsertBuilder("singers")
89-
.set("singerId").to(3L)
90-
.set("firstName").to("George")
91-
.set("lastName").to("Harrison")
92-
.build(),
93-
Mutation.newInsertBuilder("singers")
94-
.set("singerId").to(4L)
95-
.set("firstName").to("Ringo")
96-
.set("lastName").to("Starr")
97-
.build(),
98-
99-
Mutation.newInsertBuilder("albums")
100-
.set("singerId").to(1L)
101-
.set("albumId").to(1L)
102-
.set("albumTitle").to("Imagine")
103-
.build(),
104-
Mutation.newInsertBuilder("albums")
105-
.set("singerId").to(2L)
106-
.set("albumId").to(1L)
107-
.set("albumTitle").to("Pipes of Peace")
108-
.build()
109-
);
110-
69+
OperationFuture<Database, CreateDatabaseMetadata> op =
70+
adminClient.createDatabase(
71+
instanceId,
72+
databaseId,
73+
Arrays.asList(
74+
"CREATE TABLE Singers "
75+
+ "(singerId INT64 NOT NULL, firstName STRING(MAX) NOT NULL, "
76+
+ "lastName STRING(MAX) NOT NULL,) PRIMARY KEY (singerId)",
77+
"CREATE TABLE Albums (singerId INT64 NOT NULL, albumId INT64 NOT NULL, "
78+
+ "albumTitle STRING(MAX) NOT NULL,) PRIMARY KEY (singerId, albumId)"));
79+
80+
op.get();
81+
82+
List<Mutation> mutations =
83+
Arrays.asList(
84+
Mutation.newInsertBuilder("singers")
85+
.set("singerId")
86+
.to(1L)
87+
.set("firstName")
88+
.to("John")
89+
.set("lastName")
90+
.to("Lennon")
91+
.build(),
92+
Mutation.newInsertBuilder("singers")
93+
.set("singerId")
94+
.to(2L)
95+
.set("firstName")
96+
.to("Paul")
97+
.set("lastName")
98+
.to("Mccartney")
99+
.build(),
100+
Mutation.newInsertBuilder("singers")
101+
.set("singerId")
102+
.to(3L)
103+
.set("firstName")
104+
.to("George")
105+
.set("lastName")
106+
.to("Harrison")
107+
.build(),
108+
Mutation.newInsertBuilder("singers")
109+
.set("singerId")
110+
.to(4L)
111+
.set("firstName")
112+
.to("Ringo")
113+
.set("lastName")
114+
.to("Starr")
115+
.build(),
116+
Mutation.newInsertBuilder("albums")
117+
.set("singerId")
118+
.to(1L)
119+
.set("albumId")
120+
.to(1L)
121+
.set("albumTitle")
122+
.to("Imagine")
123+
.build(),
124+
Mutation.newInsertBuilder("albums")
125+
.set("singerId")
126+
.to(2L)
127+
.set("albumId")
128+
.to(1L)
129+
.set("albumTitle")
130+
.to("Pipes of Peace")
131+
.build());
111132

112133
DatabaseClient dbClient = getDbClient();
113134

114135
TransactionRunner runner = dbClient.readWriteTransaction();
115-
runner.run(new TransactionRunner.TransactionCallable<Void>() {
116-
@Nullable
117-
@Override
118-
public Void run(TransactionContext tx) {
119-
tx.buffer(mutations);
120-
return null;
121-
}
122-
});
136+
runner.run(
137+
new TransactionRunner.TransactionCallable<Void>() {
138+
@Nullable
139+
@Override
140+
public Void run(TransactionContext tx) {
141+
tx.buffer(mutations);
142+
return null;
143+
}
144+
});
123145
}
124146

125147
@After
@@ -137,8 +159,13 @@ public void tearDown() {
137159
@Test
138160
public void readDbEndToEnd() throws Exception {
139161
Path outPath = Files.createTempFile("out", "txt");
140-
SpannerReadAll.main(new String[] { "--instanceId=" + instanceId, "--databaseId=" + databaseId,
141-
"--output=" + outPath, "--runner=DirectRunner" });
162+
SpannerReadAll.main(
163+
new String[] {
164+
"--instanceId=" + instanceId,
165+
"--databaseId=" + databaseId,
166+
"--output=" + outPath,
167+
"--runner=DirectRunner"
168+
});
142169

143170
String content = Files.readAllLines(outPath).stream().collect(Collectors.joining("\n"));
144171

@@ -148,8 +175,14 @@ public void readDbEndToEnd() throws Exception {
148175
@Test
149176
public void readTableEndToEnd() throws Exception {
150177
Path outPath = Files.createTempFile("out", "txt");
151-
SpannerRead.main(new String[] { "--instanceId=" + instanceId, "--databaseId=" + databaseId,
152-
"--output=" + outPath, "--table=albums", "--runner=DirectRunner" });
178+
SpannerRead.main(
179+
new String[] {
180+
"--instanceId=" + instanceId,
181+
"--databaseId=" + databaseId,
182+
"--output=" + outPath,
183+
"--table=albums",
184+
"--runner=DirectRunner"
185+
});
153186

154187
String content = Files.readAllLines(outPath).stream().collect(Collectors.joining("\n"));
155188

@@ -159,8 +192,13 @@ public void readTableEndToEnd() throws Exception {
159192
@Test
160193
public void readApiEndToEnd() throws Exception {
161194
Path outPath = Files.createTempFile("out", "txt");
162-
SpannerReadApi.main(new String[] { "--instanceId=" + instanceId, "--databaseId=" + databaseId,
163-
"--output=" + outPath, "--runner=DirectRunner" });
195+
SpannerReadApi.main(
196+
new String[] {
197+
"--instanceId=" + instanceId,
198+
"--databaseId=" + databaseId,
199+
"--output=" + outPath,
200+
"--runner=DirectRunner"
201+
});
164202

165203
String content = Files.readAllLines(outPath).stream().collect(Collectors.joining("\n"));
166204

@@ -172,17 +210,20 @@ public void reaTransactionalReadEndToEnd() throws Exception {
172210
Path singersPath = Files.createTempFile("singers", "txt");
173211
Path albumsPath = Files.createTempFile("albums", "txt");
174212
TransactionalRead.main(
175-
new String[] { "--instanceId=" + instanceId, "--databaseId=" + databaseId,
176-
"--singersFilename=" + singersPath, "--albumsFilename=" + albumsPath,
177-
"--runner=DirectRunner" });
213+
new String[] {
214+
"--instanceId=" + instanceId,
215+
"--databaseId=" + databaseId,
216+
"--singersFilename=" + singersPath,
217+
"--albumsFilename=" + albumsPath,
218+
"--runner=DirectRunner"
219+
});
178220

179221
assertEquals(4, Files.readAllLines(singersPath).size());
180222
assertEquals(2, Files.readAllLines(albumsPath).size());
181223
}
182224

183225
private DatabaseClient getDbClient() {
184-
return spanner
185-
.getDatabaseClient(DatabaseId.of(spannerOptions.getProjectId(), instanceId, databaseId));
226+
return spanner.getDatabaseClient(
227+
DatabaseId.of(spannerOptions.getProjectId(), instanceId, databaseId));
186228
}
187-
188-
}
229+
}

0 commit comments

Comments
 (0)