We run the script that uses this functionality embedded in a java
application. I noticed now that the first time the code runs after a cold
start. This log message appears.

java.nio.file.FileSystemNotFoundException: Provider "wrap" not installed
at java.nio.file.Paths.get(Paths.java:147)
at org.basex.util.Prop.homePath(Prop.java:142)
at org.basex.util.Prop.<clinit>(Prop.java:96)
at org.basex.core.StaticOptions.<clinit>(StaticOptions.java:20)
at org.basex.core.Context.<init>(Context.java:77)
at org.basex.core.Context.<init>(Context.java:69)
at
se.kb.mimer.util.xquery.XQueryClient.extractPackageFilesData(XQueryClient.java:16)
....

The script still produces the expected output. I guess that this is a
handled exception inside BaseX that get printed out to the log with INFO
level. Am i right?

Regards,
Johan

On Mon Jan 26 2015 at 2:24:41 PM Christian Grün <christian.gr...@gmail.com>
wrote:

> Hi Johan,
>
> > Just wanted to report back that it works really well.
>
> Glad to hear it works.
>
> > It is about 50% slower
> > than running the md5 command on the command line of my mac.
>
> My final solution is close to the one you proposed [1]: I decided to
> use a little buffer as well, because it was faster than calling
> md.update() for each single byte.
>
> Using nio channels gives us better performance:
>
>     String path = ...
>     RandomAccessFile raf = new RandomAccessFile(path, "r");
>     FileChannel ch = raf.getChannel();
>     ByteBuffer buf = ByteBuffer.allocate(IO.BLOCKSIZE);
>     final MessageDigest md = MessageDigest.getInstance("md5");
>     do {
>       final int n = ch.read(buf);
>       if(n == -1) break;
>       md.update(buf.array(), 0, n);
>       buf.flip();
>     } while(true);
>     System.out.println(Token.string(Token.hex(md.digest(), true)));
>
> But I am not sure how smoothly this would integrate in our remaining
> streaming architecture, as we are also streaming main-memory objects.
> I'll keep it in mind, though.
>
> Cheers,
> Christian
>
> [1] https://github.com/BaseXdb/basex/blob/master/basex-core/
> src/main/java/org/basex/query/func/hash/HashFn.java
>

Reply via email to