river-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Firmstone (JIRA)" <j...@apache.org>
Subject [jira] Commented: (RIVER-316) RFC Library, Application & Class Versioning, Dynamically Mobile Codebases and Classloading enhancements
Date Sun, 26 Jul 2009 10:45:14 GMT

    [ https://issues.apache.org/jira/browse/RIVER-316?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12735373#action_12735373

Peter Firmstone commented on RIVER-316:

>From the river-dev list, hopefully Michal, gets approval for licensing, I'm very interested
in the services acting in a P2P fashion.

Michal Kleczek wrote:
> We have implemented a similar solution in XPro.
> The main difference is that in our implementation there is no "put" operation 
> in a ContentAddressedStore interface. In other words:
> 1. Each service publishes a separate ContentAddressStore and becomes its own 
> codebase server.
> 2. You can run specialized services that cache resources from other 
> ContentAddressStores to achieve HA
> 3. Optionally you can configure the services to act in a P2P fashion - the 
> resources downloaded by a service are also published.
> The main motivation behind this was to be able to run services with minimal 
> dependencies on other services being available on the network.
> After resolving some licencing problems (which should not be very complicated 
> I think) we could contribute this code to River.
> Thanks,
> Michal

> RFC Library, Application & Class Versioning, Dynamically Mobile Codebases and Classloading
> -------------------------------------------------------------------------------------------------------
>                 Key: RIVER-316
>                 URL: https://issues.apache.org/jira/browse/RIVER-316
>             Project: River
>          Issue Type: New Feature
>          Components: net_jini_loader
>         Environment: All
>            Reporter: Peter Firmstone
>         Attachments: classworlds-1.0-src.zip, Java Classloader issues relating to Jini
smli_tr-2006-149.pdf, VerionedDynamicClassesRev1.tgz, VersionedDynamicClasses.zip
> Request for Comments:
> Proposal to add support for Dynamic Mobile Codebases and Application fine grained class
versioning as well as Coarse grained Library versioning , to enable River User devolopers,
to provide distinction between classes with the same fully qualified class name when code
differences created by refactoring packages or library updates break backward compatibility
between classes contained within that library or package.  ClassWorlds can be used to segregate
ClassRealms for application packages and different library versions.
> A dependency tree array object (contains dependency references between classes, fully
qualified class names are stored as String objects) returned by the new ClassDepend tool (replacement
of classdep functionality) may be suitable (with some modification) for recording class versioning,
for later navigation of the codebase for class version verification, perhaps this could be
stored in serialized form with the codebase.
> The ASM library might be used to modify existing, externally sourced library class file
bytecodes to add a LIBRARYVERSIONID static final field, with an accessor method, for library
code used in codebases, to mark the class files with the library release version.
> serialVersionUID (when it exists), along with the CLASSVERSION static field, might be
used to determine the dependency and backward compatibility of classes in a codebase, this
information could be stored in the dependency tree along with the CLASSVERSION, fully qualified
class name and class file checksum.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message