Project

General

Profile

Task #1780

Story #1779: Create access to Metacat object file paths through Hazelcast

Create Metacat ObjectPathMap loader class

Added by Chris Jones over 10 years ago. Updated over 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Metacat
Target version:
Start date:
2011-09-09
Due date:
% Done:

100%

Milestone:
CCI-0.6.4
Product Version:
*
Story Points:
Sprint:

Description

In order for the d1_indexer to gain access to the object store for indexing across CNs, we need a hazelcast map defined (hzObjectPaths) that reflects the current state of all objects (science metadata, data, etc). The map will be defined as com.hazelcast.core.IMap<Identifier, String), with Identifer being a D1 pid, and String being the system path to the object:
test.1.1, /var/metacat/data/autogen.123456789

edu.ucsb.nceas.metacat.IdentifierManager manages the entries in the PostgresQL identifier table in Metacat, and should be called to get the pid-to-docid mapping. The metacat properties file stores the filesystem paths for data objects and for science metadata objects. See the edu.ucsb.nceas.metacat.service.PropertyService class as a property util.

These two sources of information should be used in edu.ucsb.nceas.metacat.dataone.hazelcast.ObjectPathMap to provide the backing loader for the map. This class will need to implement com.hazelcast.core.MapLoader methods.

History

#1 Updated by Chris Jones over 10 years ago

  • Category set to Metacat

#2 Updated by Rob Nahf over 10 years ago

  • Status changed from New to In Progress

#3 Updated by Rob Nahf over 10 years ago

  • Status changed from In Progress to Closed

implemented the 3 interface methods, and created new query in identifierManager class to return all the guids from the identifier table. Yet, for the method that calls it (getAllKeys) we are choosing to return null instead. That method will be there if we change our minds.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 14.8 MB)