accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Loss (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-3024) VFS classloader can randomly fail
Date Mon, 28 Jul 2014 14:08:43 GMT


Brian Loss commented on ACCUMULO-3024:

It turns out our general.vfs.classpath had no entries in it, and our context classpath was
not referenced by any tables (I was trying to add a reference when I saw the error).  So what
happens is close ends up getting called on UniqueFileReplicator through the finalizer, and
since there was nothing in the temp dir, close removed it.  Then, when I attempted to add
the reference to a context, it tried to start replicating the classpath, but the temp dir
had already been cleaned up.

> VFS classloader can randomly fail
> ---------------------------------
>                 Key: ACCUMULO-3024
>                 URL:
>             Project: Accumulo
>          Issue Type: Bug
>    Affects Versions: 1.5.0, 1.5.1, 1.6.0
>            Reporter: Brian Loss
>            Priority: Blocker
> The fix for ACCUMULO-1321 appears to have broken the VFS classloader.  The problem is
that when a UniqueFileReplicator is cleaned up, it deletes the temp directory that is holding
all of the files in the classpath.
> The situation we have seen is as follows:
> 1. Configuration includes a general VFS classpath and 2 context VFS classpaths.
> 2. At tserver startup, multiple VFS objects are created.
> 3. Finalize is called on one of them and that deletes the process-specific temp dir (which
is shared by all of the objects).
> 4. I attempted to set a table.classpath.context on a table, and got errors from UniqueFileReplicator
since it couldn't create a copy of the VFS files since its temp directory had already been
cleaned up.

This message was sent by Atlassian JIRA

View raw message