From 10/09/2011 to 11/07/2011


05:43 PM Bug #4356: knb website query result shows old version of a document
Ben and I tested the updating and query on both forced replication and timed replication between two metacats. We cou... Jing Tao
04:07 PM Bug #4356: knb website query result shows old version of a document
I used a morpho to create a eml document and insert it to metacat. Then i did a search and records was added to xml_q... Jing Tao
05:16 PM Revision 6618 (metacat): New D1 libraries, fix for MNode.isNodeAuthorized() and other exception handling.
Chris Jones
05:03 PM Revision 6617 (metacat): MockCNode.getSystemMetadata() no longer throws InvalidRequest.
Chris Jones
03:53 PM Revision 6616 (metacat): add note about alternative methods for getting cert/key
ben leinfelder
03:50 PM Revision 6615 (metacat): use prepared statement place holder (?)
ben leinfelder
02:31 PM Revision 6614 (metacat): use DateTimeMarshaller for all replication date transfers
ben leinfelder
12:31 PM Revision 6613 (metacat): print the stacktrace when there is an error -- debuggin!
ben leinfelder
11:50 AM Revision 6612 (metacat): remove catch blocks for unthrown exceptions
ben leinfelder
10:55 AM Revision 6611 (metacat): use SSL to get content from stream
ben leinfelder
10:52 AM Revision 6610 (metacat): Update methods in MNodeService to reflect they modifications of the MN API with regard to exceptions being raised. Largely removed InvalidRequest from a number of methods, and instead threw an appropriate NotFound or ServiceFailure instead.
Chris Jones
10:01 AM Revision 6609 (metacat): D1NodeService get(), getSystemMetadata(), and isAuthorized() no longer throw InvalidRequest.
Chris Jones


04:33 PM Bug #5533 (Resolved): Sanpark skin main page has login issue
Hi Jing
Yes I see that it works on firefox the problem is that all our staff have to use IE So is there a way to f...
Jing Tao
03:18 PM Bug #5532 (Resolved): Use strict build tag strategy for 2.0.0 release
Currently Metacat relies on a number of external projects and repositories. We should take this opportunity to finali... ben leinfelder
03:17 PM Revision 6608 (metacat): Add new D1 jars with 1.0.0 API additions (MNStorage.systemMetadataChanged()) and libclient fixes.
Chris Jones
03:04 PM Revision 6607 (metacat): newer seek tag
ben leinfelder
02:45 PM Revision 6606 (metacat): uses prepared statement instead of plain old statement.
deprecated the DBConnection.createStatement() method to discourage direct parameter value use in favor of parameter b... ben leinfelder
02:35 PM Revision 6605 (metacat): Add a test for systemMetadataChanged. This should be fleshed out more so that the test uses a CN certificate.
Chris Jones
02:21 PM Revision 6604 (metacat): Fix getReplica() handling code for getReplica() and systemMetadataChanged(). Calls to getReplica() in MNode were calling get(), so the lack of resource handling was being missed.
Chris Jones
02:19 PM Revision 6603 (metacat): Handle multipart params where the libclient methods are using them.
Chris Jones
12:32 PM Revision 6602 (metacat): uses prepared statement parameter binding for queries ben leinfelder
10:26 AM Bug #5531 (Resolved): Remove/make optional the DataONE MN registration that occurs during Metacat configuration
Right now when I [re]configure Metacat I hit the DataONE CN in an attempt to register myself as a MN. This should be ... ben leinfelder


12:59 PM Revision 6601 (metacat): Add new D1 jars with the new MNStorage.systemMetadataChanged() additions.
Chris Jones
12:55 PM Revision 6600 (metacat): Add in the systemMetadataChanged() method in MNodeService to respond to notifications. Only allow subjects from CNs listed in the node list to make the call. Update the local copy of the system metadata document for the given pid.
Chris Jones
10:36 AM Revision 6599 (metacat): Include the serialVersion in the call to CN.setReplicationStatus() after replicating data.
Chris Jones


10:10 PM Revision 6598 (metacat): correctly set the prepared statement parameters for start and end date
ben leinfelder
10:09 PM Revision 6597 (metacat): check object format id values since they are not Comparable objects
ben leinfelder
09:58 PM Revision 6596 (metacat): make MNodeServiceTest pass JUnit testing
ben leinfelder
08:40 PM Revision 6595 (metacat):
ben leinfelder
08:08 PM Revision 6594 (metacat): Update CNodeService test to include serialVersion in it's calls as appropriate.
Chris Jones
08:04 PM Revision 6593 (metacat): Update CNodeService to use the serialVersion parameter and compare it to the current serialVersion of the system metadata found in the hzSystemMetadata map. Throw an InvalidRequest exception if they are not equal. This affects updateReplicationMetadata(), setReplicationStatus(), setReplicationPolicy(), setAccessPolicy(), and setOwner().
Chris Jones
08:00 PM Revision 6592 (metacat): Handle calls to CNReplication REST services. Modify handle() to field calls to /replicaPolicies, /replicaMetadata, /replicaAuthorizations, and /replicaNotifications. Add the isNodeAuthorized(), setReplicationPolicy(), setReplicationStatus(), and updateReplicationMetadata() methods to parse and pass multipart form data and params on to the CNodeService implementing class.
The CNreplication additions also include support for the serialVersion parameter that was added to some of the API ca... Chris Jones
07:50 PM Revision 6591 (metacat): Add new d1_common jar with the API changes that add serialVersion parameters to CNAuthorization and CNReplication methods.
Chris Jones
07:46 PM Revision 6590 (metacat): Add support for the various CNReplication calls. Add collectReplicationPolicy() to parse the policy out of the multipart form, and collectReplicaMetadata() to parse out the replica to be updated.
Chris Jones
05:32 PM Revision 6589 (metacat): restore -- apparently this was used with reflection in a test...
ben leinfelder
09:20 AM Revision 6588 (metacat): change to 2.0.0 release ben leinfelder


07:35 PM Revision 6587 (metacat): skip verification -- remaining TODO
ben leinfelder
07:08 PM Revision 6586 (metacat): verify certificate
ben leinfelder
06:41 PM Revision 6585 (metacat): inspect keystore entries for matching client certificate
ben leinfelder
05:27 PM Revision 6584 (metacat): lookup the correct property for keystore file
ben leinfelder
04:53 PM Revision 6583 (metacat): drop old identifier when upgrading from 1.9.5 to 2.0.0
ben leinfelder
03:23 PM Revision 6582 (metacat): use HttpClient to set up SSL connection when doing replication calls -- this will use the server's configured certificate as the client certificate on the request. The server it is calling can then inspect that certificate and decide whether or not it trusts the caller.
ben leinfelder
02:10 PM Bug #5499: citation format odd for metacat data sets
added to EML project and updated the Metacat build to pull from that tagged style update. ben leinfelder
01:57 PM Bug #5499: citation format odd for metacat data sets
Close. All that needs to change is delete #3 -- if BOTH are provided, only list the individualName and omit the orga... Matt Jones
12:43 PM Bug #5499: citation format odd for metacat data sets
After looking more closely at the code, I think we already have what you propose -- it just depends on the content of... ben leinfelder
02:09 PM Revision 6581 (metacat): use EML style tag for: only show organization when the individual is omitted ben leinfelder
01:34 PM Revision 6580 (metacat): newer d1 jar (for good measure)
ben leinfelder
01:33 PM Revision 6579 (metacat): check client-provided certificate when servicing ReplicationServlet requests.
ben leinfelder
11:54 AM Revision 6578 (metacat): Add updateReplicationMetadata() to the CN service implementation. This was missing from the API, and likely never called. It fully replaces the given replica item in the list of replicas in system metadata.
Chris Jones
09:10 AM Revision 6577 (metacat): MN.setAccessPolicy() is deprecated, commenting out the test.
Chris Jones
08:59 AM Revision 6576 (metacat): getReplica() should log replication events as DataONE Types.Event.replicate (vs 'getreplica')
Chris Jones
08:54 AM Revision 6575 (metacat): Minor indentation cleanup.
Chris Jones
06:48 AM Revision 6574 (metacat): Modify isAuthorized() to get the most up to date system metadata from the hzSystemMetadata map.
Chris Jones
06:40 AM Revision 6573 (metacat): Add a placeholder setAccessPolicy() method in MNodeService that throws NotImplemented since this method is being deprecated. Note: need to confirm that this shouldn't be calling D1Client.getCN().setAccessPolicy().
Chris Jones
06:37 AM Revision 6572 (metacat): Update getSystemMetadata() to lock(); get(); unlock() to ensure we have the latest version of system metadata from the hzSystemMetadata map. Remove the setAccessPolicy() method since it is being deprecated in the MNAuthorization API.
change insertSystemMetadata() to use a finer grained Date object on insertion. Locking of the pid happens in the sub... Chris Jones
06:33 AM Revision 6571 (metacat): Add setAccessPolicy() to CNodeService since the CN should only make changes to access policies for objects registered with the D1 system. Increment the serial version after locling and getting the most up to fdate system metadata.
Note: CCIT meeting decision says the serial version of the system metadata (during the change) should equal the curre... Chris Jones


05:21 PM Bug #2495: Charset bug: Internationalization
Moving this to 2.0.0.
Also, I think relying on the XML-declared encoding is a much safer (easier) bet than inspectin...
ben leinfelder
05:13 PM Bug #5519: Replicated data files are 0 bytes
After installing Metacat 1.9.5 on I was able to see the failure point. It was something that I fixe... ben leinfelder
02:18 PM Bug #5519: Replicated data files are 0 bytes
There's no difference between 1.9.5 tag and trunk for the ReplicationService.handleGetDataFileRequest() method -- may... ben leinfelder
02:06 PM Bug #5519: Replicated data files are 0 bytes
Now with BOTH servers using Apache certificate/SSL mechanisms the replication is still successful.
ben leinfelder
01:25 PM Bug #5519: Replicated data files are 0 bytes
Switching to use Apache for the SSL handling still left the data replication working as expecte... ben leinfelder
12:34 PM Bug #5519: Replicated data files are 0 bytes
I set up one-way replication from -->
Using the Tomcat-only certificate gene...
ben leinfelder
04:37 PM Revision 6570 (metacat): In CNodeService, separate the CN.create() functionality from the MN.create() functionality while still using the superclass to call create(). Deal with Hazelcast locks and setting serial versions only in the CN implementation.
Chris Jones
02:27 PM Bug #5530: Sanparks skin shows update and delete action when user public reads a FGDC package
also see: ben leinfelder
02:21 PM Bug #5530 (Resolved): Sanparks skin shows update and delete action when user public reads a FGDC package
Here is an email from Judith:
Hi Jing
I have successfully uploaded a number of GIS layers What concerns me is
Jing Tao
02:27 PM Bug #5394: FGDC interface does not correctly show controls and permission settings
consolidating into one bug ben leinfelder
01:13 PM Revision 6569 (metacat): Change updateSystemMetadata() to evaluate the incoming system metadata serial version against that found in the hzSystemMetadata map. If they are the same, do the update. If not, throw an InvalidRequest explaining that they need the most current version.
Chris Jones
08:40 AM Bug #5499: citation format odd for metacat data sets
No, I don't think that's quite right. If a Creator contains an individualName, use that and not the organization. If ... Matt Jones


07:21 PM Revision 6568 (metacat): Modify CNodeService's registerSystemMetadata() with support for SystemMetadata's serialVersion field. Also, use the hzSystemMetadata map for all system metadata reads using a lock on the pid in order to get the very latest version. This affected isNodeAuthorized(), getChecksum(), and assertRelation(). Since we're using Hazelcast, exceptions are masked as RuntimeException, so throw a ServiceFailure with the underlying message.
Chris Jones


09:46 PM Revision 6567 (metacat): Modify CNodeService's updateSystemMetadata(), setReplicationStatus(), setReplicationPolicy(), and setOwner() with support for SystemMetadata's serialVersion field. Other methods still pending an update. Use the hzSystemMetadata map for all system metadata reads using a lock on the pid in order to get the very latest version.
Chris Jones
08:42 PM Revision 6566 (metacat): removing non-junit file from the test area
ben leinfelder
08:39 PM Revision 6565 (metacat): load hazelcast test files from the classpath rather than from rob's personal directory.
ben leinfelder
04:25 PM Bug #5499: citation format odd for metacat data sets
Does there need to be an XSLT parameter that allows different skins to specify whether they want organizations treate... ben leinfelder
04:21 PM Bug #5499: citation format odd for metacat data sets
Okay, what's the final decision here?
We have givenName, surName and an organizationName. It sounds like the citatio...
ben leinfelder
04:05 PM Revision 6564 (metacat): SystemMetadataManager's functionality is handled by IdentifierManager. Removing it and it's test.
Chris Jones
04:01 PM Revision 6563 (metacat): MetadataTypeRegister is now replaced by ObjectFormatService. Removing it and it's test.
Chris Jones
02:48 PM Bug #5526 (Resolved): final test issue
One final test, sorry for the spam. Matt Jones
02:46 PM Bug #5525: test issue again
Test bug. Matt Jones
02:36 PM Bug #5525 (Resolved): test issue again
Another test to be ignored. Matt Jones
02:36 PM Bug #5524: test issue
Test bug. Closing. Matt Jones
02:34 PM Bug #5524 (Resolved): test issue
Please ignore -- this is a test issue. Matt Jones
02:23 PM Bug #5522: download linked KNB data and convert links in EML to ORE packages
Creation of SystemMetadata when no SystemMetadata is provided (i.e. any object creation not through the DataONE API) ... Chris Jones
02:06 PM Bug #5522 (New): download linked KNB data and convert links in EML to ORE packages
The KNB data sets, and EML data in general, represent linkages to data as online/url linkages in EML documents. When... Matt Jones
02:16 PM Bug #5523 (Resolved): setting authoritative MN and rightsHolder for KNB data on conversion
When EML and data in the NCEAS and LTER metacat is converted to use in the new KNB MN, we need to generate system me... Matt Jones
01:28 PM Bug #5515: change version to 2.0.0 in prep for release
db version scripts and properties are updated to 2.0.0 ben leinfelder
01:23 PM Bug #3815: Ampersand character not correctly encoded
I only see delNormalize() being called from the deleteData() function in register-dataset.cgi -- but perhaps similar ... ben leinfelder
01:11 PM Bug #3815: Ampersand character not correctly encoded
The specific example looks to have its origins in delNormalize (sic) within register-dataset.cgi -- the first regex o... Shaun Walbridge
01:17 PM Bug #4907: Replication error stops insert/update of valid EML document
Added clearer error handling when replication lock requests cannot be gotten ben leinfelder
01:16 PM Revision 6562 (metacat): include clearer error message when UPDATE action is requested on a replicated document and we fail to successfully get a lock from the source Metacat server ben leinfelder
01:01 PM Bug #4083: Metacat doesn't declare XML document encoding
For incoming XML files, Metacat will inspect the encoding specified in the prolog and use that if found; defaulting t... ben leinfelder
12:48 PM Bug #2236: metacat parser allows eml with missing content
I tried inserting this document as is: it was fine because it validates against the 2.0.1 schema.
I tries modifying i...
ben leinfelder


10:23 PM Bug #3815: Ampersand character not correctly encoded
Using the Java MetacatClient API to insert a document with & also worked fine (no additional encoding of the & sy... ben leinfelder
08:23 PM Bug #3815: Ampersand character not correctly encoded
Using the dev skin to load an XML document with an ampersand encoded as: & kept the character intact. To me, this... ben leinfelder
07:41 PM Bug #5054: Unable to insert large EML documents and no error status returned
On first inspection, it appears that the request is coming into Metacat with no parameters set when I use the dev ski... ben leinfelder
07:00 PM Bug #5273: docs with inline-data allow invalid xml into metacat
I tried this with the attached inline.xml file that has an invalid unescaped ampersand in the inline section -- Metac... ben leinfelder
06:58 PM Bug #5273: docs with inline-data allow invalid xml into metacat
This file uses unescaped ampersand (&) in the inline data section. ben leinfelder
05:51 PM Revision 6561 (metacat): move the DataONE 1.0.0-SNAPSHOT
ben leinfelder
04:33 PM Revision 6560 (metacat): correctly check for missing config values during geoserver configuration
ben leinfelder
04:05 PM Bug #5515: change version to 2.0.0 in prep for release
updated docs and the source tree to use tomcat6 rather than tomcat5.5 ben leinfelder
04:05 PM Revision 6559 (metacat): call the web.xml tomcat6 not tomcat5
ben leinfelder
04:01 PM Revision 6558 (metacat): remove reference to tomcat5.5 in favor of tomcat6. including the "custom" start up script that used the sun jdk -- this can be configured rather than coded into the script.
ben leinfelder
03:59 PM Revision 6557 (metacat): correctly check for missing config values during geoserver configuration
ben leinfelder
03:45 PM Revision 6556 (metacat): remove reference to the "custom" /etc/init.d/tomcat6 script -- this should not be used since there are now better ways to customize the tomcat start up
ben leinfelder
03:27 PM Revision 6555 (metacat): use 2.0.0
ben leinfelder
03:21 PM Revision 6554 (metacat): -use 2.0.0 version
-use tomcat6
-use /var/lib/tomcat6 as the example tomcat home directory
ben leinfelder
02:22 PM Revision 6553 (metacat): use 2.0.0 -- stub out the release notes
ben leinfelder
02:13 PM Revision 6552 (metacat): Configure and use CertificateManager in order to act as the MN when performing replicate() and getReplica() mthods.
ben leinfelder
01:30 PM Bug #3811: Spatial caches should be backed up and restored
If someone wants to put the spatial cache in /var/metacat they will have to do it manually, then configure metacat (w... ben leinfelder
01:01 PM Bug #2084: Pathquery support for temporal search on date fields
Will exercise this during testing for release. ben leinfelder
01:00 PM Revision 6551 (metacat): use logging, not system.out
ben leinfelder
12:40 PM Revision 6550 (metacat): change upgrade scripts/routines to use 2.0.0 version number instead of 1.10.0
ben leinfelder
11:35 AM Revision 6549 (metacat): make sure we close the prepared statement always
ben leinfelder
11:17 AM Revision 6548 (metacat): The incoming source node param is just a string, not XML, so don't attempt to deserialize it. Rather, just make a new NodeReference object and set it's value to the value of the incoming param.
Chris Jones
08:58 AM Revision 6547 (metacat): include CILogon link and more explanation about what is going on with the mapping.
ben leinfelder
08:49 AM Revision 6546 (metacat): Change the version from 1.9.4 to 1.9.5.
Jing Tao


06:59 PM Bug #5520 (Resolved): Create replication integration test suite
Replication integration tests should include:
-force replication between two servers -- A, B (write, update, delete)...
ben leinfelder
06:31 PM Bug #5519 (Resolved): Replicated data files are 0 bytes
We set up 2-way replication between PPBio and PELD (Brazilian Metacat instances) and have since seen that the replica... ben leinfelder
04:30 PM Bug #2084: Pathquery support for temporal search on date fields
This should be in 2.0.0 since it is already in the trunk. The upgrade script is the only thing I am worried about -- ... ben leinfelder
04:11 PM Bug #5262: EML document owner can't read the document
Probably solution is to use Java's canonicalization routines to normalize the DN, as Ben has done on the DataONE DNs.... Matt Jones
03:59 PM Bug #5244: ldapweb.cgi shouldn't report ou=Account accounts since they're unusable
Need to check with Shaun if this is actually fixed. Matt Jones
03:54 PM Bug #4651: data packages losing data tables (and then finding them again)
Unable to replicate. Please reopen if more details emerge. Matt Jones
03:48 PM Bug #4442: Spatial indexing should not run and block metacat
Related to bug #3811. Matt Jones
03:47 PM Bug #5518 (In Progress): Track down the performance issue of metacat query.
Matt queried knb with the word "water". It took one minute and half. We need to figured out why it so slow. Jing Tao
03:46 PM Bug #3811: Spatial caches should be backed up and restored
Decided that its best to move these files to /var/metacat by default. Matt Jones
03:44 PM Bug #5234: Replication -- user does not have permission to update access rule for data file
In v1.9.5 we use a null replication user to perform replication (rather than the user_owner from the xml_documents ta... ben leinfelder
03:17 PM Bug #4900: LDAP referral connection timeout
Decided that #3 is not feasible since accounts may be in groups defined on various LDAP servers. ben leinfelder
01:20 PM Bug #5517 (Resolved): mark EcoGrid and Servlet APIs as deprecated
EcoGrid and Servlet APIs in metacat are being replaced (gradally) by the DataONE services. Mark these older APIs as ... Matt Jones
01:19 PM Bug #5516 (Resolved): continue updating user documentation
Documentation needs editing to describe new 2.0.0 features, including support for new DataONE APIs, deprecation of ol... Matt Jones
01:15 PM Bug #5515 (Resolved): change version to 2.0.0 in prep for release
To prepare for the release, change te version number to 2.0.0 for all documentation, including README, Sphinx docs, etc. Matt Jones
01:01 PM Bug #5288: Metacat got "java.lang.OutOfMemoryError: PermGen space" after new geoserver update
Not sure if there is an action here. Maybe add this information to the Metacat documentation/faq? Matt Jones
12:47 PM Bug #4083: Metacat doesn't declare XML document encoding
I think these encoding issues have been fixed by Ben in trunk, but we need to discuss it to see if anything further n... Matt Jones
12:38 PM Bug #1601: Metacat will add default value for optional parameter into eml 2 document
Marking as complete, because the read problem is fixed based on now reading original from disk. The insert problem i... Matt Jones
12:34 PM Bug #4275: Earthgrid REST API Implementation
Task now being handled via #5011 DataONE service API implementation. This original work on interfaces has been obsol... Matt Jones
12:17 PM Bug #5514: implement DataONE service API
Duplicate bug to #5011. Matt Jones
12:15 PM Bug #5514 (Resolved): implement DataONE service API
Support the new DataONE service API for interoperable data repositories:
Matt Jones
12:10 PM Bug #5513 (Resolved): add support for DOI identifiers from EZID
DOI identifiers can be created through the EZID service run by the California Digital Library. See:
Matt Jones
11:08 AM Revision 6545 (metacat): correctly check that user is logged into metacat before proceeding
ben leinfelder
11:07 AM Revision 6544 (metacat): use null session for now
ben leinfelder


05:54 PM Revision 6543 (metacat): draft of legacy-to-d1 account mapping interface
ben leinfelder


02:03 PM Revision 6542 (metacat): add User-Agent logging to support D1 requirements
ben leinfelder
12:40 PM Revision 6541 (metacat): remove old RestServlet handler -- not used now
ben leinfelder


10:47 AM Revision 6540 (metacat): Add debugging output to MNodeService.
Chris Jones


05:49 PM Revision 6539 (metacat): use default fmtid if we can't find the user-supplied data mime type in our list
ben leinfelder
05:13 PM Revision 6538 (metacat): including newer d1 libclient that uses Foresite (and Jena) to construct/parse ORE resource maps for DataONE
ben leinfelder
02:57 PM Revision 6536 (metacat): delete the xml access rules by either docid or guid to make sure we have the most up to date information
ben leinfelder
10:45 AM Revision 6535 (metacat): Fix a data-typing issue when pulling replicationAllowed from postgres. Use getBoolean(), not getString().
Chris Jones


05:13 PM Revision 6534 (metacat): cleaned up to use for populating a DataONE MN using the D1 api. Retrieves packages from a Metacat and generates system metadata for them before calling MN.create() for both data and metadata.
NOTE: you need a client certificate that the target server accepts (either DataONE-generated for testing or a CILogon... ben leinfelder


07:19 PM Revision 6533 (metacat): IdentifierManager.getSystemMetadata() was missing the number_replicas and replication_allowed fields when building a ReplicationPolicy section of a SystemMetadata document being returned. Add in these two attributes.
Chris Jones
11:17 AM Revision 6532 (metacat): update D1 jars to include recent SubjectList -> SubjectInfo refactoring and the SUBJECT_PUBLIC constant
ben leinfelder
11:08 AM Revision 6531 (metacat): include SystemMetadata when replicating data and metadata documents -- this allows us to establish the guid-to-docid mapping that is crucial for being able to read the replicated document by guid (d1 api)
ben leinfelder
10:00 AM Revision 6530 (metacat): throw InvalidToken when the Session parameter is null for create() ben leinfelder


08:37 PM Revision 6529 (metacat): Fix service versioning in so that when Metacat nodes are registered they report the correct service version for use in resolve() -- i.e., use "v1" instead of "0.6.4" in resolve urls.
Matt Jones


02:50 PM Revision 6528 (metacat): Once a CN calls replicate() on an MN, the MN needs to call getReplica() on the source MN (not get()). Once the bytes are retrieved, the MN must then call back to the CN with setReplicationStatus() to indicate that the replication status is complete. Modify MNodeService to do so.
Chris Jones

Also available in: Atom