embulk-output-db2 0.8.2 → 0.8.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -1
- data/classpath/embulk-output-db2-0.8.3.jar +0 -0
- data/classpath/embulk-output-jdbc-0.8.3.jar +0 -0
- data/out/test/org/embulk/output/db2/test/expect/basic/test_replace.yml +2 -0
- data/src/main/java/org/embulk/output/DB2OutputPlugin.java +3 -2
- data/src/main/java/org/embulk/output/db2/DB2BatchInsert.java +2 -1
- data/src/main/java/org/embulk/output/db2/DB2OutputConnection.java +1 -2
- data/src/main/java/org/embulk/output/db2/DB2OutputConnector.java +11 -5
- metadata +5 -4
- data/classpath/embulk-output-db2-0.8.2.jar +0 -0
- data/classpath/embulk-output-jdbc-0.8.2.jar +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a26f16b2fb307b8dba807962ad3e0ddc86ba3486
|
4
|
+
data.tar.gz: 552f4824ca629f4729b1704119078b73f6c16259
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0d3fb1fa22f04495deac7e275cc61a772dd6fc911acc3da3719ed505e3072efc15a2e44cb0655466033abc1dbed7015eddc95a1c28bab1d35c596fcb6c6cc538
|
7
|
+
data.tar.gz: 6f0487384ca6d84e3bf24e6d49bc87dbeb6301f8d04996f04c6198d6beb1b49981f18f78a0da52f5f0f256f3afbebdaf583c4000e0ee5137798ad4f0101e5749
|
data/README.md
CHANGED
@@ -20,8 +20,9 @@ DB2 output plugins for Embulk loads records to DB2.
|
|
20
20
|
- **table**: destination table name (string, required)
|
21
21
|
- **create_table_constraint**: table constraint added to `CREATE TABLE` statement, like `CREATE TABLE <table_name> (<column1> <type1>, <column2> <type2>, ..., <create_table_constraint>) <create_table_option>`.
|
22
22
|
- **create_table_option**: table option added to `CREATE TABLE` statement, like `CREATE TABLE <table_name> (<column1> <type1>, <column2> <type2>, ..., <create_table_constraint>) <create_table_option>`.
|
23
|
+
- **transaction_isolation**: transaction isolation level for each connection ("read_uncommitted", "read_committed", "repeatable_read" or "serializable"). if not specified, database default value will be used.
|
23
24
|
- **options**: extra connection properties (hash, default: {})
|
24
|
-
- **retry_limit**: max retry count for database operations (integer, default: 12)
|
25
|
+
- **retry_limit**: max retry count for database operations (integer, default: 12). When intermediate table to create already created by another process, this plugin will retry with another table name to avoid collision.
|
25
26
|
- **retry_wait**: initial retry wait time in milliseconds (integer, default: 1000 (1 second))
|
26
27
|
- **max_retry_wait**: upper limit of retry wait, which will be doubled at every retry (integer, default: 1800000 (30 minutes))
|
27
28
|
- **mode**: "insert", "insert_direct", "truncate_insert" or "replace". See below. (string, required)
|
Binary file
|
Binary file
|
@@ -9,6 +9,7 @@ import org.embulk.config.ConfigDefault;
|
|
9
9
|
import org.embulk.output.db2.DB2BatchInsert;
|
10
10
|
import org.embulk.output.db2.DB2OutputConnector;
|
11
11
|
import org.embulk.output.jdbc.AbstractJdbcOutputPlugin;
|
12
|
+
import org.embulk.output.jdbc.JdbcOutputConnector;
|
12
13
|
import org.embulk.output.jdbc.BatchInsert;
|
13
14
|
import org.embulk.output.jdbc.MergeConfig;
|
14
15
|
|
@@ -60,7 +61,7 @@ public class DB2OutputPlugin
|
|
60
61
|
}
|
61
62
|
|
62
63
|
@Override
|
63
|
-
protected
|
64
|
+
protected JdbcOutputConnector getConnector(PluginTask task, boolean retryableMetadataOperation)
|
64
65
|
{
|
65
66
|
DB2PluginTask db2Task = (DB2PluginTask) task;
|
66
67
|
|
@@ -79,7 +80,7 @@ public class DB2OutputPlugin
|
|
79
80
|
}
|
80
81
|
logConnectionProperties(url, props);
|
81
82
|
|
82
|
-
return new DB2OutputConnector(url, props, null);
|
83
|
+
return new DB2OutputConnector(url, props, null, task.getTransactionIsolation());
|
83
84
|
}
|
84
85
|
|
85
86
|
@Override
|
@@ -3,6 +3,7 @@ package org.embulk.output.db2;
|
|
3
3
|
import java.io.IOException;
|
4
4
|
import java.sql.SQLException;
|
5
5
|
|
6
|
+
import org.embulk.output.jdbc.JdbcOutputConnector;
|
6
7
|
import org.embulk.output.jdbc.MergeConfig;
|
7
8
|
import org.embulk.output.jdbc.StandardBatchInsert;
|
8
9
|
|
@@ -11,7 +12,7 @@ import com.google.common.base.Optional;
|
|
11
12
|
public class DB2BatchInsert
|
12
13
|
extends StandardBatchInsert
|
13
14
|
{
|
14
|
-
public DB2BatchInsert(
|
15
|
+
public DB2BatchInsert(JdbcOutputConnector connector, Optional<MergeConfig> mergeConfig) throws IOException, SQLException
|
15
16
|
{
|
16
17
|
super(connector, mergeConfig);
|
17
18
|
}
|
@@ -12,11 +12,10 @@ import static java.util.Locale.ENGLISH;
|
|
12
12
|
public class DB2OutputConnection
|
13
13
|
extends JdbcOutputConnection
|
14
14
|
{
|
15
|
-
public DB2OutputConnection(Connection connection, String schemaName
|
15
|
+
public DB2OutputConnection(Connection connection, String schemaName)
|
16
16
|
throws SQLException
|
17
17
|
{
|
18
18
|
super(connection, schemaName);
|
19
|
-
connection.setAutoCommit(autoCommit);
|
20
19
|
}
|
21
20
|
|
22
21
|
@Override
|
@@ -5,17 +5,23 @@ import java.sql.DriverManager;
|
|
5
5
|
import java.sql.SQLException;
|
6
6
|
import java.util.Properties;
|
7
7
|
|
8
|
-
import org.embulk.output.jdbc.
|
8
|
+
import org.embulk.output.jdbc.JdbcOutputConnection;
|
9
|
+
import org.embulk.output.jdbc.AbstractJdbcOutputConnector;
|
10
|
+
import org.embulk.output.jdbc.TransactionIsolation;
|
11
|
+
|
12
|
+
import com.google.common.base.Optional;
|
9
13
|
|
10
14
|
public class DB2OutputConnector
|
11
|
-
|
15
|
+
extends AbstractJdbcOutputConnector
|
12
16
|
{
|
13
17
|
private final String url;
|
14
18
|
private final Properties properties;
|
15
19
|
private final String schemaName;
|
16
20
|
|
17
|
-
public DB2OutputConnector(String url, Properties properties, String schemaName
|
21
|
+
public DB2OutputConnector(String url, Properties properties, String schemaName,
|
22
|
+
Optional<TransactionIsolation> transactionIsolation)
|
18
23
|
{
|
24
|
+
super(transactionIsolation);
|
19
25
|
try {
|
20
26
|
Class.forName("com.ibm.db2.jcc.DB2Driver");
|
21
27
|
} catch (Exception ex) {
|
@@ -27,7 +33,7 @@ public class DB2OutputConnector
|
|
27
33
|
}
|
28
34
|
|
29
35
|
@Override
|
30
|
-
|
36
|
+
protected JdbcOutputConnection connect() throws SQLException
|
31
37
|
{
|
32
38
|
Connection c = DriverManager.getConnection(url, properties);
|
33
39
|
if (c == null) {
|
@@ -36,7 +42,7 @@ public class DB2OutputConnector
|
|
36
42
|
}
|
37
43
|
|
38
44
|
try {
|
39
|
-
DB2OutputConnection con = new DB2OutputConnection(c, schemaName
|
45
|
+
DB2OutputConnection con = new DB2OutputConnection(c, schemaName);
|
40
46
|
c = null;
|
41
47
|
return con;
|
42
48
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embulk-output-db2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sadayuki Furuhashi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-05-07 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Inserts or updates records to a table.
|
14
14
|
email:
|
@@ -19,9 +19,10 @@ extra_rdoc_files: []
|
|
19
19
|
files:
|
20
20
|
- README.md
|
21
21
|
- build.gradle
|
22
|
-
- classpath/embulk-output-db2-0.8.
|
23
|
-
- classpath/embulk-output-jdbc-0.8.
|
22
|
+
- classpath/embulk-output-db2-0.8.3.jar
|
23
|
+
- classpath/embulk-output-jdbc-0.8.3.jar
|
24
24
|
- lib/embulk/output/db2.rb
|
25
|
+
- out/test/org/embulk/output/db2/test/expect/basic/test_replace.yml
|
25
26
|
- src/main/java/org/embulk/output/DB2OutputPlugin.java
|
26
27
|
- src/main/java/org/embulk/output/db2/DB2BatchInsert.java
|
27
28
|
- src/main/java/org/embulk/output/db2/DB2OutputConnection.java
|
Binary file
|
Binary file
|