Project

General

Profile

Statistics
| Revision:

# Date Author Comment
6893 01/12/2012 01:56 PM Chris Jones

Convert SQLExceptions to RuntimeExceptions for Hazelcast MapStore operations.

6889 01/12/2012 07:53 AM Chris Jones

Keep the hzIdentifiers set in sync with the Metacat systemmetadata table. If entries are added/updated in the hzSystemMetadata map, make sure the identifier is in the set. If (for some administrative reason) the entry is removed, remove the identifier from the set. This usually doesn't happen.

6888 01/12/2012 07:47 AM Chris Jones

When loading all keys from Metacat into the hzSystemMetadata map, also load identifiers into the hzIdentifiers set if they are not already there. Although entries may be evicted from the map, the list of identifiers will remain. The list will have a fairly small memory footprint since it's just identifiers.

6887 01/12/2012 07:44 AM Chris Jones

Add support for the distributed Set of unique identifiers in the storage cluster called 'hzIdentifiers'. This set is a persistent total list of all identifiers (even when entries in the hzSystemMetadata map are evicted). It reflects the state of the identifiers in the postgresql systemmetadata table, but is distributed across the cluster. Add the getIdentifiers() method, which returns the ISet of identifiers.

6868 01/09/2012 04:59 PM Chris Jones

Use a Logger instead of System.out for SystemMetadataMap.

6859 01/06/2012 07:23 AM Chris Jones

Use Lock instead of ILock to be consistent across classes.

6714 11/29/2011 03:43 PM ben leinfelder

evict the HazelCast SystemMetadata entry if we update the access control rules via Metacat's legacy API, otherwise stale SystemMetadata stays in memory instead of being looked up from the backing table store.

6711 11/29/2011 01:44 PM Chris Jones

Set a default HazelcastInstance after init() is called, and use this instance in getLock() to acquire a lock in the cluster.

6708 11/29/2011 01:05 PM ben leinfelder

use shared method for looking up "docInfo" map -- both in Metacat replication and in D1 system metadata generation

6703 11/29/2011 10:10 AM Chris Jones

When using ILock.lock(), get a lock on the string value of the Identifier, not the Identifier object itself. Hazelcast locking won't work otherwise.

6702 11/29/2011 08:55 AM Chris Jones

Use the Hazelcast ILock mechanism to lock the system metadata identifier rather than using IMap.lock(pid).

6648 11/14/2011 03:34 PM ben leinfelder

delete system metadata when MN.delete() is called.

6596 11/02/2011 09:58 PM ben leinfelder

make MNodeServiceTest pass JUnit testing

6496 09/22/2011 10:12 AM ben leinfelder

return null instead of throwing an exception when pid is not found in store

6490 09/21/2011 05:45 PM ben leinfelder

comment out resynch() method until errors are resolved

6489 09/21/2011 05:25 PM ben leinfelder

use default hazelcast config when not configured to use an external one

6483 09/21/2011 04:51 PM Chris Jones

For now, remove the hzClient code connecting to the DataONE process cluster to get the hzNodes map. This will be moved into the storage cluster, but use D1Client to get the node list for now.

6481 09/21/2011 10:54 AM rnahf

going back to using IDentifier as the key for the ObjectPAthMap.

6471 09/20/2011 02:08 PM Matt Jones

Reverting previous @Overrides chanrge from r6470, as that is the desired
behavior under Java 1.6 -- previous versions of Java (e.g., 1.5) will not
comile with this usage of the @Overrides annotation, but the currently
supported version will. So reverting to the 1.6 convention.

6470 09/20/2011 01:36 PM Matt Jones

Removing incorrect @Override annotations that were preventing compilation. The methods marked did not actually override a method in the superclass, so they were not compiling. I think @Overrides was being mistaken for methods that implement an interface but aren't actually in the superclass.

6465 09/20/2011 07:18 AM Chris Jones

Remove references to CNReplicationTask.

6464 09/20/2011 07:17 AM Chris Jones

Remove the CNReplicationTask (for now). We will be using Metacat's ForceReplicationHandler to replicate science metadata across CNs, and may explore the use of a 100% evicted hzScienceMetadata map. Either way, the distributed task design won't be needed. When a dropped CN comes back online, we'll catch it up based on last modified dates for PIDs in the hzSystemMetadata map.

6462 09/20/2011 06:42 AM Chris Jones

Add getNodesMap() to return the hzNodes map from the process cluster. Remove getPendingReplicationTasks since that structure is being removed. Add minor documentation.

6459 09/19/2011 03:26 PM ben leinfelder

lookup latest system metadata update date for use in synchronizing CN-CN when an offline nodes comes back online

6458 09/19/2011 12:17 PM rnahf

changed the key type from Identifier to String for ObjectPathMap. (need a Comparable key).

6457 09/19/2011 11:48 AM ben leinfelder

rework this to be MN->MN replication. Should be fleshed out more.

6456 09/19/2011 11:43 AM ben leinfelder

throw RuntimeExceptions when store() methods throw declared exceptions -- we want callers to put() to be alerted if there are errors.

6455 09/19/2011 10:18 AM ben leinfelder

move CNReplicationTask to the hazelcast package

6451 09/16/2011 04:42 PM ben leinfelder

check if system metadata exists rather than just the id mapping (before creating the entry)

6446 09/16/2011 02:24 PM ben leinfelder

move bulk of the Hazelcast code into HazelcastService from CNodeService so that it is centrall located - easier to manage and configure

6442 09/16/2011 10:42 AM rnahf

removing unneeded class (never used)

6440 09/15/2011 01:46 PM rnahf

cleaned up mock tests on hzObjectPathMap. split out code for mocking a datastore into MockObjectPathMap.

6437 09/15/2011 12:57 PM ben leinfelder

initialize Hazelcast from the custom configuration when initializing the Metacat service.

6434 09/15/2011 10:38 AM ben leinfelder

handle entryAdded (to hzSystemMetadata) to store sysmeta to local store when it is not already present

6426 09/14/2011 03:16 PM ben leinfelder

use HashMap, HashSet instead of the Tree* classes that require Identifier objects implement Comparable

6424 09/14/2011 01:52 PM rnahf

configuring hazelcast tests

6420 09/14/2011 10:02 AM rnahf

further refactoring and start of unit tests for hazelcast elements

6417 09/13/2011 03:29 PM rnahf

small code cleanup - removed unused instantiations of DBUtils.

6416 09/13/2011 02:47 PM rnahf

fixed logic wrt localID and docid. Implemented new method in IdentifierManager to getAllGUIDs from identifier table for implementation of loadAllKeys in ObjectPathMapLoader.

6415 09/13/2011 11:38 AM rnahf

further development of ObjectPathMapLoader.

6414 09/12/2011 02:48 PM rnahf

new class for refreshing the hazelcast map with metacat. Initial commit.

6407 09/11/2011 06:12 PM Chris Jones

Add in the Hazelcast Id generation namespace and an IdGenerator instance for task ids. Hazelcast will produce cluster-wide unique ids for the "task-ids" namespace, to be used when creating CNreplicationTask objects.

6401 09/11/2011 12:12 PM Chris Jones

Modify HazelcastService to read configuration information from an on-disk file (not from a jar file). Added init() to start up the service (was calling doRefresh() before. We still need to decide if this is a refreshable service.

6399 09/08/2011 02:23 PM ben leinfelder

move HazelcastService to D1 package

6395 09/06/2011 02:33 PM ben leinfelder

added HazelCast MapStore and MapLoader implementation for SystemMetadata