embulk-parser-msgpack 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog +5 -2
- data/build.gradle +4 -4
- data/classpath/embulk-parser-msgpack-0.1.3.jar +0 -0
- data/classpath/msgpack-core-0.8.0.jar +0 -0
- data/src/main/java/org/embulk/parser/msgpack/MsgpackParserPlugin.java +17 -14
- metadata +4 -4
- data/classpath/embulk-parser-msgpack-0.1.2.jar +0 -0
- data/classpath/msgpack-core-0.7.0-M6.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: 7852f340a79e6fa5ee4e84b60f0e70f2a1e634d0
|
4
|
+
data.tar.gz: ab593bc630bee5d34bb52c492dda9df450ea58c7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 210f1798c5be558170b1c56de7cff0b6ed7d33a3c0c6cddbff89ca8bcdc5486fff1702bcaa9a2a8868df779b896987181b4f1d837c7b7601617a5c7f1fb9386d
|
7
|
+
data.tar.gz: fa32cf2e37796712e68a57ad113dda7a154675c2714883c666d8d02360b8aa298f21e017739c0690244a15a5cbb55b92016dfb8260787ec1ff39f8eadd68147c
|
data/ChangeLog
CHANGED
@@ -1,7 +1,10 @@
|
|
1
|
-
Release 0.1.
|
1
|
+
Release 0.1.3 - 2016-01-05
|
2
2
|
|
3
|
-
* Fixed memory leak of input buffers
|
4
3
|
* Upgraded msgpack version to v0.8 which supports external buffer pools
|
4
|
+
* Fixed memory leak of input buffers
|
5
|
+
* Upgraded embulk version to v0.7.10
|
6
|
+
|
7
|
+
Release 0.1.2 - 2016-01-05
|
5
8
|
|
6
9
|
Release 0.1.1 - 2015-08-18
|
7
10
|
|
data/build.gradle
CHANGED
@@ -13,12 +13,12 @@ configurations {
|
|
13
13
|
provided
|
14
14
|
}
|
15
15
|
|
16
|
-
version = "0.1.
|
16
|
+
version = "0.1.3"
|
17
17
|
|
18
18
|
dependencies {
|
19
|
-
compile "org.embulk:embulk-core:0.
|
20
|
-
provided "org.embulk:embulk-core:0.
|
21
|
-
compile "org.msgpack:msgpack-core:0.
|
19
|
+
compile "org.embulk:embulk-core:0.7.10"
|
20
|
+
provided "org.embulk:embulk-core:0.7.10"
|
21
|
+
compile "org.msgpack:msgpack-core:0.8.0"
|
22
22
|
testCompile "junit:junit:4.+"
|
23
23
|
}
|
24
24
|
|
Binary file
|
Binary file
|
@@ -10,8 +10,10 @@ import com.google.common.base.Optional;
|
|
10
10
|
import com.google.common.collect.ImmutableMap;
|
11
11
|
import com.fasterxml.jackson.annotation.JsonCreator;
|
12
12
|
import com.fasterxml.jackson.annotation.JsonValue;
|
13
|
+
import org.msgpack.core.MessagePack;
|
13
14
|
import org.msgpack.core.MessageFormat;
|
14
15
|
import org.msgpack.core.MessageUnpacker;
|
16
|
+
import org.msgpack.core.MessageInsufficientBufferException;
|
15
17
|
import org.msgpack.core.buffer.MessageBuffer;
|
16
18
|
import org.msgpack.core.buffer.MessageBufferInput;
|
17
19
|
import org.msgpack.value.ValueType;
|
@@ -153,6 +155,7 @@ public class MsgpackParserPlugin
|
|
153
155
|
implements MessageBufferInput
|
154
156
|
{
|
155
157
|
private final FileInput input;
|
158
|
+
private Buffer lastBuffer = null;
|
156
159
|
|
157
160
|
public FileInputMessageBufferInput(FileInput input)
|
158
161
|
{
|
@@ -163,28 +166,28 @@ public class MsgpackParserPlugin
|
|
163
166
|
public MessageBuffer next()
|
164
167
|
{
|
165
168
|
Buffer b = input.poll();
|
169
|
+
if (lastBuffer != null) {
|
170
|
+
lastBuffer.release();
|
171
|
+
}
|
172
|
+
lastBuffer = b;
|
166
173
|
if (b == null) {
|
167
|
-
|
174
|
+
return null;
|
175
|
+
}
|
176
|
+
else {
|
177
|
+
return MessageBuffer.wrap(b.array()).slice(b.offset(), b.limit());
|
168
178
|
}
|
169
|
-
return MessageBuffer.wrap(b.array()).slice(b.offset(), b.limit());
|
170
179
|
}
|
171
180
|
|
172
181
|
@Override
|
173
182
|
public void close()
|
174
183
|
{
|
184
|
+
if (lastBuffer != null) {
|
185
|
+
lastBuffer.release();
|
186
|
+
}
|
175
187
|
input.close();
|
176
188
|
}
|
177
189
|
}
|
178
190
|
|
179
|
-
private static class EndOfBufferException
|
180
|
-
extends RuntimeException
|
181
|
-
{
|
182
|
-
public EndOfBufferException()
|
183
|
-
{
|
184
|
-
super("End of buffer");
|
185
|
-
}
|
186
|
-
}
|
187
|
-
|
188
191
|
@Override
|
189
192
|
public void transaction(ConfigSource config, ParserPlugin.Control control)
|
190
193
|
{
|
@@ -202,7 +205,7 @@ public class MsgpackParserPlugin
|
|
202
205
|
RowEncoding rowEncoding = task.getRowEncoding();
|
203
206
|
FileEncoding fileEncoding = task.getFileEncoding();
|
204
207
|
|
205
|
-
try (MessageUnpacker unpacker =
|
208
|
+
try (MessageUnpacker unpacker = MessagePack.newDefaultUnpacker(new FileInputMessageBufferInput(input));
|
206
209
|
PageBuilder pageBuilder = new PageBuilder(task.getBufferAllocator(), schema, output)) {
|
207
210
|
|
208
211
|
TimestampParser[] timestampParsers = Timestamps.newTimestampColumnParsers(task, task.getSchemaConfig());
|
@@ -365,7 +368,7 @@ public class MsgpackParserPlugin
|
|
365
368
|
int n;
|
366
369
|
try {
|
367
370
|
n = unpacker.unpackArrayHeader();
|
368
|
-
} catch (
|
371
|
+
} catch (MessageInsufficientBufferException ex) {
|
369
372
|
// TODO EOFException?
|
370
373
|
return false;
|
371
374
|
}
|
@@ -398,7 +401,7 @@ public class MsgpackParserPlugin
|
|
398
401
|
int n;
|
399
402
|
try {
|
400
403
|
n = unpacker.unpackMapHeader();
|
401
|
-
} catch (
|
404
|
+
} catch (MessageInsufficientBufferException ex) {
|
402
405
|
// TODO EOFException?
|
403
406
|
return false;
|
404
407
|
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embulk-parser-msgpack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.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: 2016-01-
|
11
|
+
date: 2016-01-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,8 +58,8 @@ files:
|
|
58
58
|
- lib/embulk/parser/msgpack.rb
|
59
59
|
- src/main/java/org/embulk/parser/msgpack/MsgpackParserPlugin.java
|
60
60
|
- src/test/java/org/embulk/parser/TestMsgpackParserPlugin.java
|
61
|
-
- classpath/embulk-parser-msgpack-0.1.
|
62
|
-
- classpath/msgpack-core-0.
|
61
|
+
- classpath/embulk-parser-msgpack-0.1.3.jar
|
62
|
+
- classpath/msgpack-core-0.8.0.jar
|
63
63
|
homepage: https://github.com/frsyuki/embulk-parser-msgpack
|
64
64
|
licenses:
|
65
65
|
- Apache 2.0
|
Binary file
|
Binary file
|