Activity
From 12/15/2011 to 01/13/2012
01/13/2012
- 04:57 PM Revision 6909 (metacat): do NOT generate ORE maps or download data when we do the initial System Metadata generation -- this is deferred until D1 registration.
- 04:55 PM Bug #5522: download linked KNB data and convert links in EML to ORE packages
- Additional notes:
1. ORE generation and remote data download need to be done together so that we use the correct URI/... - 04:18 PM Bug #5547: Couldn't get the Register Data Form after login under Register Data tab on Sanparks skin
- We are pushing this off 2.0.0 release as something to work on for SANParks.
- 04:01 PM Bug #5518: Track down the performance issue of metacat query.
- Once we get a development/staging copy of KNB I can look into this.
- 02:25 PM Revision 6908 (metacat): make more generic so that a custom list of IDs can be passed in.
- 02:01 PM Revision 6907 (metacat): check that the resourceMap (based on Id only) does not currently exist in the local metacat when generating OREs
- 01:31 PM Revision 6906 (metacat): insert OR update system metadata -- no need to do an update right after initial insert...
- 01:05 PM Revision 6905 (metacat): call the System Metadata generator during upgrade to 2.0.0
- 11:17 AM Revision 6904 (metacat): In IdentifierManager.updateSystemMetadata(), add a check for invalid system metadata (fields that throw a NullPointerException on access) to ensure that system metadata is populated correctly. Updated calling classes to handle the exception.
- 01:41 AM Revision 6903 (metacat): Fixed formatting to make fixed-width line much shorter so boxes fit on the page.
- 01:19 AM Revision 6902 (metacat): Removing obsoleted Admin Guide -- this guide is now maintained using Sphinx in docs/user/metacat -- the word document and PDF file are now obsolete.
- 01:14 AM Revision 6901 (metacat): Properly initialize the servlet context when starting alternate servlets, which makes sure that the configuration files have been loaded and config properties are available.
- 01:06 AM Bug #5516: continue updating user documentation
- The Metacat Administrator's Guide has now been completely ported to Sphinx/ReST format, and I've written new chapters...
- 01:00 AM Revision 6900 (metacat): Removed link to obsolete PDF file.
01/12/2012
- 10:34 PM Revision 6899 (metacat): Modifications to make the build more readily find locally installed versions of
- sphinx-build, and to remove the unneccary 'html' directory; output of
admindoc is now written directly into build/docs. - 06:52 PM Revision 6898 (metacat): Modified build to include documentation in the war file that is generated as
- part of the build, if the 'documentation' target has been run before the
war target. This is not done automatically ... - 06:03 PM Revision 6897 (metacat): Adapted the build to be able to generate the Sphinx Admin Guide, and to
- better handle the copyright for Javadoc generation.
- 06:01 PM Revision 6896 (metacat): Added links to Javadoc. Tuned the layout a bit.
- 04:13 PM Revision 6895 (metacat): Completed first draft of Admin guide chapter on DataONE.
- 01:56 PM Revision 6894 (metacat): Handle SQLExceptions when trying to save system metadata locally.
- 01:56 PM Revision 6893 (metacat): Convert SQLExceptions to RuntimeExceptions for Hazelcast MapStore operations.
- 01:54 PM Revision 6892 (metacat): In IdentifierManager, throw SQLExceptions rather than just logging them, and let them be handled higher up in the stack.
- 01:32 PM Revision 6891 (metacat): use new endpoint/method:
- http://mule1.dataone.org/ArchitectureDocs-current/apis/CN_APIs.html#CNReplication.deleteReplicationMetadata
- 12:18 PM Revision 6890 (metacat): use PUT /obsoletedBy/{pid} for CNCore.setObsoletedBy per our discussion today
- 07:53 AM Revision 6889 (metacat): 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.
- 07:47 AM Revision 6888 (metacat): 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.
- 07:44 AM Revision 6887 (metacat): 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.
- 07:38 AM Revision 6886 (metacat): Add the dataone.hazelcast.storageCluster.identifiersSet property that defines the name of the distributed set of unique DataONE identifiers (called 'hzIdentifiers'). This ISet can't be configured in the hazelcast.xml file (only maps and queues can).
01/11/2012
- 07:25 PM Revision 6885 (metacat): Continued authoring the description of DataONE in Metacat. More to come.
- 04:42 PM Revision 6884 (metacat): include new methods needed for replication (in new d1 jars)
- https://redmine.dataone.org/issues/2203
- 01:25 PM Revision 6883 (metacat): add method: setObsoletedBy (https://redmine.dataone.org/issues/2185)
- augement new method: deleteReplicationMetadata
- 11:31 AM Revision 6882 (metacat): remove method: assertRelation
- https://redmine.dataone.org/issues/2158
- 11:24 AM Revision 6881 (metacat): add method: deleteReplicationMetadata
- remove method: assertRelation
update the D1 jars
https://redmine.dataone.org/issues/2187
https://redmine.dataone.org/... - 10:41 AM Revision 6880 (metacat): serialize the Identifier for the systemMetadata being registered
- https://redmine.dataone.org/issues/2204
- 09:39 AM Revision 6879 (metacat): Use a Date with resolution to milliseconds.
01/10/2012
- 07:57 PM Revision 6878 (metacat): Initial outline for DataONE chapter.
- 07:02 PM Revision 6877 (metacat): Added OAI-PMH chapter that was contributed by Duane Costa from LTER.
- 05:04 PM Revision 6876 (metacat): Simplify setReplicationStatus() to not call updateReplicationMetadata() if a replica doesn't exist. Just create it and update the system metadata, which we already have a lock for.
- 05:03 PM Revision 6875 (metacat): Minor null checks to avoid NPEs when calling replicate()
- 05:01 PM Revision 6874 (metacat): Don't throw a NotAuthorized exception in isAdminAuthorized() - just return false.
- 12:12 PM Revision 6873 (metacat): do not download and save remote data resources which are HTML but are not expected to be such (login or info/splash pages before data content).
- http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5522
- 09:23 AM Bug #5536: Restore replicated data files that are 0 bytes
- By removing replicated data files in my test environment (DEMO3 <-> fred) and removing the entries from the xml_docum...
- 09:21 AM Bug #5532: Use strict build tag strategy for 2.0.0 release
- updating the title to reflect bug as a reminder to remove "RC" from any of the tags we build the release from...
- 01:06 AM Revision 6872 (metacat): Fixed formatting.
- 01:00 AM Revision 6871 (metacat): Moving Metacat Sphinx RST documentation from docs/dev to docs/user directory.
- 12:42 AM Revision 6870 (metacat): Merged most recent changes from trunk into the RST converted version of the Administrator's Guide. Now the Sphinx/RST version is up to date rlative to the most recent word document, and is now the active copy. The MS Word document will be deprecated and removed. All future changes should be made to the RST version.
01/09/2012
- 05:08 PM Revision 6869 (metacat): Update the CN methods to throw a VersionMismatch where the API changed (where serialVersion is a required parameter). These were previously throwing an InvalidRequest exception.
- Change the exception handling for calls to Hazelcast to catch a RuntimeException (not Exception) so we don't catch ex...
- 04:59 PM Revision 6868 (metacat): Use a Logger instead of System.out for SystemMetadataMap.
01/07/2012
- 06:01 PM Revision 6867 (metacat): Don't lock() on the map.get() in isNodeAuthorized() (this assumes that the CN has queued the task already). Add more lock/unlock debug statements, and fix setReplicationStatus() - I missed a finally statement to unlock the pid.
- 12:39 PM Revision 6866 (metacat): Modify CNReplication methods setReplicationStatus(), updateReplicationMetadata() and setReplicationPolicy() to allow administrative access from a Coordinating Node by calling isAdminAuthorized().
- 12:34 PM Revision 6865 (metacat): Add isAdminAuthorized() to D1NodeService to check if the operation is being requested from a CN. Consult the NodeList from the CN and test the NodeType of the given node and the X509 certificate Subject. Perhaps we should expand this to also check for service-level access in the future.
01/06/2012
- 01:51 PM Revision 6864 (metacat): store D1 configuration properties in the main backup so that they persist between upgrades.
- 12:51 PM Revision 6863 (metacat): In registerSystemMetadata(), lock the pid prior to calling map.containsKey(pid) since a put to the map could occur between the check and the subsequent put().
- 10:45 AM Revision 6862 (metacat): update authoritative member node id when we change it (reconfiguration) and when we initially register as a MN with the CN.
- 09:42 AM Revision 6861 (metacat): add description about what becoming a Member Node entails
- 07:40 AM Revision 6860 (metacat): Correctly deserialize the BaseException subclass in handling calls to setReplicationStatus()
- 07:23 AM Revision 6859 (metacat): Use Lock instead of ILock to be consistent across classes.
01/05/2012
- 06:32 PM Revision 6858 (metacat): After reviewing CNodeService and D1NodeService prompted by Robert comparing the Hazelcast locking with the d1_synchronization locking, I've made a number of changes that will prevent locking problems:
- 1) Multiple methods contained try/catch blocks that would:
try
lock();
catch
throw();
try
put();
catch
throw();
f... - 06:02 PM Revision 6857 (metacat): Converted the metacat-properties chapter to RST format. Still need to merge in
- newer changes from the trunk, as I was accidentally working from the 1.9.4
branch for this whole conversion process. - 02:49 PM Revision 6856 (metacat): only delete replicated data files (server_location != 1)
- 02:15 PM Bug #5522: download linked KNB data and convert links in EML to ORE packages
- I'm now downloading remote data that is referenced by EM documents, saving it on the MN with an "autogen" ID and incl...
- 01:37 PM Revision 6855 (metacat): use inherited access control from EML for the data file we download from a remote source
- http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5522
- 01:06 PM Revision 6854 (metacat): Removing unused screenshots that are duplicates of the others in the admin doc.
- 12:53 PM Revision 6853 (metacat): Converted Harvester chapter to RST.
- 12:06 PM Revision 6852 (metacat): download remote data and save locally when it is referenced by an EML package, then include it in the ORE map.
- http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5522
- 12:05 PM Revision 6851 (metacat): remove systemmetadata replication option -- it is no longer a separate document in metacat
- 11:07 AM Bug #5520: Create replication integration test suite
- These tests also cover access control updates.
01/04/2012
- 11:31 PM Revision 6850 (metacat): Added stub documents for chapters on DataONE and OAI-PMH (to be converted from
- Duane's Word doc).
- 11:23 PM Revision 6849 (metacat): Small word choice change.
- 11:18 PM Revision 6848 (metacat): Improved formatting for index.
- 11:14 PM Revision 6847 (metacat): Added AuthInterface chapter, and a License chapter.
- 10:53 PM Revision 6846 (metacat): Converted Event Logging and Sitemaps chapters to RST.
- 10:41 PM Revision 6845 (metacat): Fixed table layout on geoserver and submission chapters. Converted Replication
- chapter to RST.
- 09:57 PM Revision 6844 (metacat): Completed 'Submission' page conversion, and also converted GeoServer docs to
- RST format.
- 04:07 PM Revision 6843 (metacat): Partial conversion of the accessing and submitting metadata section to RST.
- More coming later.
- 02:48 PM Revision 6842 (metacat): include the EML and data tests in the suite
- 02:38 PM Revision 6841 (metacat): debugging data locking test
- 02:06 PM Revision 6840 (metacat): cannot check for deleted data since it is forever available (archived)
- 02:02 PM Bug #5520: Create replication integration test suite
- current tests:
-certificates are valid and configured correctly between A and B
-data from A to B
-EML from A to B - 01:22 PM Revision 6839 (metacat): Updated the configuration section, converted word doc to RST.
- 11:28 AM Bug #5568: Get an exception during startup metacat
- wasn't able to replicate this, but will keep an eye out. There's been quite a lot of churn around the DB tables, so i...
01/03/2012
- 08:02 PM Revision 6838 (metacat): Updated the Installation chapter, coverted to RST.
- 07:32 PM Revision 6837 (metacat): When the requested count in a call to listObjects() is 0, return an empty object list, not a full one. Fixes https://redmine.dataone.org/issues/2122
- 07:30 PM Revision 6836 (metacat): Minor formatting for querySystemMetadata().
- 04:50 PM Revision 6835 (metacat): Updated contributors.
- 04:48 PM Revision 6834 (metacat): Modified index to fix typo.
- 04:46 PM Revision 6833 (metacat): Edited introduction to Metacat admin guide, inserted figure.
- 04:07 PM Revision 6832 (metacat): Screenshots from the Metacat admin guide.
- 03:57 PM Revision 6831 (metacat): Updating Sphinx doc structure in prep for moving metacat admin guide to Sphinx.
- 03:56 PM Revision 6830 (metacat): exapnd permissions on the _exisiting_ access rule not on the permission being checked. (hierarchical permissions)
- 03:38 PM Revision 6829 (metacat): defer to super class member variables
- 11:33 AM Revision 6828 (metacat): Upgrade to Hazelcast-1.9.4.5 to try to solve CLIENT_CONNECTION_LOST problems seen on the Coordinating Node.
- 11:26 AM Bug #5568: Get an exception during startup metacat
- It looks like this is due to a null SystemMetadata.size entry in the underlying table. I'm not sure how a null could ...
- 11:11 AM Bug #5517: mark EcoGrid and Servlet APIs as deprecated
- added notes to the user documentation indicating that these APIs are deprecated
- 11:10 AM Revision 6827 (metacat): mark client/servlet API and EarthGrid API as deprecated
- http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5517
- 10:59 AM Bug #5536: Restore replicated data files that are 0 bytes
- I created another "upgrader" that will remove the empty replicated data files so that they can be re-replicated using...
- 10:56 AM Revision 6826 (metacat): upgrade routine to purge empty replicated data files so that they can be re-replicated
- http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5536
12/29/2011
12/28/2011
- 03:56 PM Revision 6824 (metacat): Use "post" to replace "get" to fix caching issue on IE.
- 03:34 PM Revision 6823 (metacat): Make the display of the schedule table fit the IE browser.
12/22/2011
- 11:51 AM Revision 6822 (metacat): Make sure the local id isn't null when we try to get the object from the local instance.
- 11:16 AM Revision 6821 (metacat): Simplify the error handling, and throw the exception once the CN is updated with the new status.
- 11:13 AM Revision 6820 (metacat): Set the replica status to failed (not invalidated) when we get exceptions trying to read the object bytes. Not much of a difference, but only the CN, in theory, is supposed to be able to set the invalidated status.
- 11:07 AM Revision 6819 (metacat): Set the replication status to invalidated when we have a localId, but getting the object bytes fails for any reason.
- 10:51 AM Revision 6818 (metacat): Only call super.create() if there's no localId found on the MN (ie a replica is there from an out of band process).
- 10:40 AM Revision 6817 (metacat): Get the object inputstream from the local metacat instance using MetacatHandler.get() rather than MN.getReplica() so we don't throw an InvalidToken exception when passing in a null Session. The D1Client object is never used for this local call.
- 09:24 AM Revision 6816 (metacat): interpret permissions as hierarchical
- https://redmine.dataone.org/issues/2150
12/21/2011
- 02:08 PM Bug #5569: The sanparks skin doesn't show welcome message when user login again (after doing logout)
- It turns out, the html page showing after logout used a wrong js function for login.
After modifying the sanparksLog... - 01:41 PM Bug #5569 (Resolved): The sanparks skin doesn't show welcome message when user login again (after doing logout)
- When user first time logins, the sanpark skin will show a welcome message, upload data link and search form.
Howev... - 01:53 PM Bug #5523: setting authoritative MN and rightsHolder for KNB data on conversion
- We decided to generate system metadata for every object housed in the KNB and use the KNB nodeId as the authoritative...
- 01:50 PM Revision 6815 (metacat): Use submitLoginFormIntoDivAndReload to replace submitLoginFormIntoDiv js function.
- 01:00 PM Revision 6814 (metacat): remove flag for independent system metadata replication -- these entries are replicated along with the data/metadata objects or via hazelcast when the actual object is not on the server.
- 12:33 PM Revision 6813 (metacat): update documentation to reflect changes to replication (client certificate)
- http://bugzilla.ecoinformatics.org/show_bug.cgi?id=5516
- 10:52 AM Revision 6812 (metacat): include SSL settings for client certificate-based replication
12/20/2011
- 05:13 PM Revision 6811 (metacat): do not include the "v1" in the base url for the target MN
- 12:19 PM Revision 6810 (metacat): New D1 jars with a minor CNode.setReplicationStatus() bugfix.
- 11:57 AM Bug #5567: Click the schedule button on sankparks skin got an blank page
- In scheduleWorkflowRun.jsp file, it has code like:
String karId = LSIDUtil.getDocId(karLsid, false);
PermissionContro... - 11:52 AM Bug #5568 (Resolved): Get an exception during startup metacat
- I got an exception when i started metacat. However, it seems that metacat still can work.
SEVERE: /127.0.0.1:570... - 11:29 AM Revision 6809 (metacat): The kar id will have version number.
- 11:25 AM Revision 6808 (metacat): process the _current_ revision, not the latest!
- use direct object/system metadata insertion for ORE maps.
- 11:21 AM Revision 6807 (metacat): allow other Metacat process (system metadata and ORE generation) to directly insert objects and system metadata without having to go through the MN/CN methods.
- 11:19 AM Revision 6806 (metacat): sort the docids so that "old" revisions are processed before newer ones
12/19/2011
- 01:07 PM Revision 6805 (metacat): only attempt to unlock a lock if it was created (in the finally block)
- 12:56 PM Revision 6804 (metacat): update tests to comply with these chenages:
- new jars with many changes -- including new CN methods: ping, describe, listChecksumAlgorithm. Removed MN.setAccessPo...
12/16/2011
- 04:24 PM Revision 6803 (metacat): new jars with many changes -- including new CN methods: ping, describe, listChecksumAlgorithm. Removed MN.setAccessPolicy. Refactored CN.setOwner() to CN.setRightsHolder().
- 02:48 PM Bug #5560: Upgrade access control rules in Metacat DB
- I'm now also forcing the shared System Metadata map to reload into memory all the system metadata for data objects th...
- 12:21 PM Revision 6802 (metacat): refresh the SystemMetadata entry for EML and referenced data files when parsing EML access rules -- this ensures our in-memory system metadata map is up to date WRT the DB entries.
- 11:37 AM Revision 6801 (metacat): Using a branch name for the utilities project. This branch is a copy of the trunk and it uses the BSD license.
- We will move this branch to a tag soon.
- 11:00 AM Revision 6800 (metacat): add revision history to the generated ORE objects -- we use the revision history of the EML package as a basis because the each ORE revision mirrors the revision of the EML package.
- Add a placeholder for checking if an equivalent ORE map exists in the DataONE infrastructure - this will be a call to...
- 10:03 AM Bug #5522: download linked KNB data and convert links in EML to ORE packages
- From discussion yesterday:
Converting a node from KNB to D1
--------------------------------------------------
0. Ge... - 09:56 AM Revision 6799 (metacat): Update the parameter names expected for listObjects() to reflect the MN API changes in the architecture docs.
- 09:44 AM Revision 6798 (metacat): Change the query semantics such that we implement the MN.listObjects() where the lower datetime bound is inclusive (greater than or equal to" and the upper datetime bound in exclusive (less than). This allows easier paging in client applications.
- 09:42 AM Revision 6797 (metacat): for test to compile, provide BaseException param for setReplicationStatus. I used a NotAuthorized instance.
- 09:37 AM Revision 6796 (metacat): adjust after refactoring tests that use EML queries
- 07:42 AM Revision 6795 (metacat): In the call to MNReplication.replicate(), call back to CNReplication.setReplicationStatus() and set the status to failed when we get local exceptions, exceptions from the source MN when calling getReplica(). Send back an exception with a description when setting the status. Add a private setReplicationStatus() method to refactor these calls out.
- 07:36 AM Revision 6794 (metacat): Modify CNresourceHandler.setReplicationStatus() to use the new API signature, including the failure BaseException that is parsed out of the MMP as a file section. Log the exception message. Since this is an asynchronous call, ReplicationManager won't see a failed status, but the MNAuditTask eventually will.
- 07:32 AM Revision 6793 (metacat): Add collectReplicationStatus() to CNResourcHandler to return the BaseException or it's subclass, if any, provided in the the call to setReplicationStatus. The exception will be reported on the CN.
- 07:29 AM Revision 6792 (metacat): Change setReplicationStatus() to drop serialVersion and report the failure exception message in the CN log.
- 07:13 AM Revision 6791 (metacat): Add new D1 jars with update CNreplication API changes to SetReplicationStatus().
12/15/2011
- 05:32 PM Revision 6790 (metacat): query for deleted metadata when testing that replication communicated the deletion. to check data, we try to update the data object on the target node (which should fail)
- 05:11 PM Revision 6789 (metacat): add test for data locking
- 01:59 PM Revision 6788 (metacat): delete data and eml on the home Metacat and check that the change propagates to the target
- 01:29 PM Revision 6787 (metacat): set SystemMetadata.archived=true on MN.delete
- There is ongoing discussion on what the exact behavior should be here, but this mimics Metacat's delete-as-archive ac...
- 12:22 PM Bug #5536: Restore replicated data files that are 0 bytes
- Current proposal for upgrade script solution:
-find all data files in the configured data directory for Metacat
-dele... - 10:40 AM Bug #5561: Got a SQL error when click TPC workflows or TPC link on sanparks skin
- Jing says it's fixed!
- 10:31 AM Bug #5567 (Resolved): Click the schedule button on sankparks skin got an blank page
- Click TPC worklfow link on the sanparks skin, user will get a list of workflows. Every workflow has three associated ...
Also available in: Atom