From 05/08/2012 to 06/06/2012


09:57 PM Revision 7257 (metacat): add 'fulldist' target to combine building of src and bin distributions
ben leinfelder
09:56 PM Revision 7256 (metacat): include gastil's changes re: pathquery and 'delete' ben leinfelder
09:56 PM Bug #5619: metacat homepage Login anchor link not connected to id
changed to use iframe class ben leinfelder
09:40 PM Bug #5616: See bug #5615 for EML
Added data download link reordering to EML branch:
ben leinfelder
09:25 PM Bug #5616: See bug #5615 for EML
Hi Ben,
The only skin change I'll die if you dont fix is
(1) the location of the data download link on the table-lev...
ben leinfelder
08:40 PM Bug #5516: continue updating user documentation
one important edit is the description of the "delete" behavior.
The other edits are just references to Figures and a...
gastil gastil
07:39 PM Revision 7254 (metacat): Add details for configuring Apache to use client certificate authentication.
ben leinfelder


03:33 PM Revision 7253 (metacat): use production CN url as the default (instead of cn-dev)
ben leinfelder
03:14 PM Revision 7252 (metacat): Oops, previous commit suffered from a happy trigger finger. During deleteReplicationMetadata(), don't delete the replica on the replica Member Node. Call CN.delete() for that functionality. This call just updates sytem metadata (according to the API description).
Chris Jones
03:10 PM Revision 7251 (metacat)
Chris Jones
01:13 PM Revision 7250 (metacat): remove distribution tar.gz and zip files on fullclean.
ben leinfelder
12:55 PM Revision 7249 (metacat): use iframe id for the login anchor since the anchor inside the iframe does not work. ben leinfelder
12:50 PM Revision 7248 (metacat): get utilities source from the correct checkout location
ben leinfelder
12:50 PM Revision 7247 (metacat): clarify release notes for 2.0.0 (minor)
ben leinfelder
12:50 PM Bug #2084: Pathquery support for temporal search on date fields
Invalid dates are allowed into Metacat 2.0.0 if the eml is 2.0.1.
I thought those were supposed to be caught.
If you...
gastil gastil
11:01 AM Revision 7246 (metacat): correct Javadoc link
ben leinfelder
10:23 AM Revision 7245 (metacat): Minor logging change.
Chris Jones
10:19 AM Bug #5620: access order="denyFirst" now means public deny (except pre-existing docs)
Results of pathQuery:
In the current inventory on the LTER metacat, the only occurance of access order="denyFirst" a...
gastil gastil
10:07 AM Bug #5620 (Resolved): access order="denyFirst" now means public deny (except pre-existing docs)
This is a feature, not a bug:
Metacat 2.0.0 no longer implements denyFirst, only allowFirst.
Ben explained to me ...
gastil gastil
10:01 AM Revision 7244 (metacat): Add debug logging to delete() to understand why we're getting InsufficientKarmaException.
Chris Jones
09:42 PM Bug #5516: continue updating user documentation
Applied Gastil's edits to intro.rst and configuration.rst ben leinfelder
05:46 PM Bug #5516: continue updating user documentation
Minor edits to configuration page: two same-page links and one word change. gastil gastil
09:42 PM Revision 7243 (metacat): apply Gastil's edits.
ben leinfelder
09:20 PM Revision 7242 (metacat): add section about configuring the with the paths to the server certificate and key
ben leinfelder
07:02 PM Revision 7241 (metacat): remove unused replication properties (all certificate file based now)
ben leinfelder
06:25 PM Bug #5619 (Resolved): metacat homepage Login anchor link not connected to id
On the metacat homepage or first-page, knb/style/skins/default/index.jsp, the (Login) link to #loginanchor goes nowhe... gastil gastil


04:46 PM Revision 7240 (metacat): use 1.0.1 DataONE jars
ben leinfelder
04:44 PM Revision 7239 (metacat): use KNB identifier table (post DOI generation) to update LTER identifier table. ben leinfelder
04:41 PM Bug #5516: continue updating user documentation
Section 4. Downloading and Installing
Just a presentation issue.
In Firefox, Safari, and chrome, htt...
gastil gastil
04:20 PM Bug #5516: continue updating user documentation
diff -u intro.rst intro_mgb.rst
--- intro.rst 2012-06-05 13:15:16.000000000 -0700
+++ intro_mgb.rst 2012-06...
gastil gastil
04:12 PM Bug #5516: continue updating user documentation
Edits to metacat/trunk/docs/user/metacat/metacat/source/intro.rst
The edited version is attached. Matt said to prov...
gastil gastil
03:34 PM Revision 7238 (metacat): exclude the MockObjectPathMap class from the test target since it is not a junit test.
Jing Tao
03:22 PM Revision 7237 (metacat): exclude QueryRunner in test target. This is not a junit test file.
Jing Tao
02:07 PM Revision 7236 (metacat): Since we already have determined access via isAuthorized() and isAdminAuthorized(), act as the Metacat administrator during calls to DocumentImpl.delete() in archive(), passing in null username and group.
Chris Jones
12:37 PM Bug #5616: See bug #5615 for EML
Gastil and Margaret will examine current skins on
find critical missing parts o...
Margaret O'Brien
11:48 AM Bug #5616 (Resolved): See bug #5615 for EML
For good Metacat public relations, it is essential that EML documents be well- and completely presented.
The EML d...
Margaret O'Brien
09:32 PM Bug #5597: eml xsl templates incomplete
included in default EML stylesheets for Metacat 2.0.0 RC2 ben leinfelder
08:49 PM Revision 7234 (metacat): restrict getLogRecrods (both MN and CN) to be called only by admin users (the CN) ben leinfelder
08:15 PM Revision 7233 (metacat): use updated tag for EML stylesheet-only changes ben leinfelder
08:04 PM Revision 7232 (metacat): use updated tag for EML stylesheet-only changes ben leinfelder


05:46 AM Revision 7231 (metacat): In setReplicationStatus() and UpdateReplicationMetadata(), don't allow a status state change from COMPLETED to anything other than INVALIDATED. This prevents the completed status from being overwritten due to race conditions.
Chris Jones


12:47 PM Revision 7229 (metacat): do not include releaseCandidate property - does not seem to be used except for debian? packaging which was never fully implemented.
ben leinfelder
12:39 PM Revision 7228 (metacat): use non-snapshot D1 jars in prep for tagging/release. Still RCs
ben leinfelder
10:45 AM Revision 7227 (metacat): script to aid in converting denyFirst rules to allowFirst ben leinfelder
10:40 AM Revision 7226 (metacat): use kepler account as default
ben leinfelder
10:39 AM Revision 7225 (metacat): use current default tomcat6 deploy directory
ben leinfelder
09:35 AM Revision 7224 (metacat): include test shoulder defaults for KNB, PISCO and LTER
ben leinfelder
09:25 PM Revision 7223 (metacat): Fixed formatting problem in a documentation file.
Matt Jones
09:04 PM Revision 7222 (metacat): use to specify the default checksum algorithm to use -- this way it will be easy for us to switch to whatever DataONE decrees. ben leinfelder
06:16 PM Revision 7221 (metacat): put(sm) for every pid we have a SM value for so that all members receive the entry event and can save locally.
ben leinfelder


02:11 PM Revision 7220 (metacat): add section about importing self-signed certificates into the Java keystore (now that we use strict verification on the java client side when calling replication endpoints).
ben leinfelder
02:01 PM Revision 7219 (metacat): a few additional notes about Metacat replication configuration.
ben leinfelder
10:56 AM Revision 7218 (metacat): Throw an exception when NOT allowed, not when allowed =).
Chris Jones
10:53 AM Revision 7217 (metacat): ignore partition owner -- always attempt to look up form local store if we were unable to get the SM from the shared map.
ben leinfelder
10:13 AM Revision 7216 (metacat): do not check if this CN has a "perfect" copy of the SM identifiers -- we need any CN coming online to contribute the records that they have locally so that in the event that all three CNs have a partial view of things they all eventually share each others' SM entries.
ben leinfelder
10:10 AM Revision 7215 (metacat): Also get the list size, which may throw an NPE.
Chris Jones
09:53 AM Revision 7214 (metacat): Only add an AccessPolicy to SystemMetadata during generation when the AccessPolicy is not empty. We've had some scenarios where IdentifierManager.getaccessPolicy() is returning an empty policy because of an empty permission list coming from the db. This was causing InvalidSystemMetadata exceptions during MN to MN replication.
Chris Jones
09:19 AM Revision 7213 (metacat): push SystemMetadata entries from the CN that has them all to the shared map where other nodes may not have all entries. The CN with the complete copy only pushes SM entries that it does not own and that return as null because those are the ones that are missing on the other, non-complete CNs.
This is different from the previous approach where a stale CN tried to PULL it's missing entries from the shared map.... ben leinfelder
10:00 PM Revision 7212 (metacat): trace level log for looping over EVERY pid in the system.
ben leinfelder
09:47 PM Revision 7211 (metacat): meant to log the guids (source) not the pids (target)
ben leinfelder
08:51 PM Revision 7210 (metacat): trace level log for looping over EVERY pid in the system.
ben leinfelder
08:18 PM Revision 7209 (metacat): logging for each step of shared identifiers loading.
ben leinfelder
08:07 PM Revision 7208 (metacat): remove pause/resume - seemed to make metacat just hang on SM retrieval. Add more logging when returned SM is null -- want to make sure it is becuase the local node "owns" the pid key even though there is no value for it.
ben leinfelder
06:12 PM Revision 7207 (metacat): due to hudson build issue, did not actually end up testing pause/resume -- trying that again
ben leinfelder
05:53 PM Revision 7206 (metacat): pause/resume was not enough. trying shutdown/restart
ben leinfelder
05:02 PM Revision 7205 (metacat): experiment with lifecycle pause/resume. hopefully it prevents our node from taking ownership of any keys before we are sure we have them all.
ben leinfelder


08:29 AM Revision 7204 (metacat): increase logging and add back in the call to saveLocally() in case the SM object has already been loaded into the shared map but before this node came back online.
ben leinfelder
11:21 PM Revision 7203 (metacat): no need to call saveLocally explicitly since loading from the shared store triggers that behavior locally because of the configured listeners.
use an iterator over the shared identifiers in case this set is constantly changing. ben leinfelder
10:10 PM Revision 7202 (metacat): make only one DB call to look up local pids - no need to do a pstmt for every single shared pid.
ben leinfelder
09:05 PM Revision 7201 (metacat): on init (start up) launch a synchronization thread that ensures all shared identifier entries have a corresponding local System Metadata entry.
ben leinfelder


04:19 PM Revision 7200 (metacat): use 'allowFirst' for access rules. We have deprecated 'denyFirst' and deny rules in Metacat as of 2.0.0
ben leinfelder
03:02 PM Revision 7199 (metacat): handle https-only server configuration -- must pull resources from https not http for the skins etc.
ben leinfelder
02:53 PM Revision 7198 (metacat): handle https-only server configuration -- must pull resources from https not http for the skins etc.
ben leinfelder
10:31 AM Revision 7197 (metacat): fix NPE (logMetacat object was not initialized) that was occurring during store()
ben leinfelder
09:33 AM Revision 7196 (metacat): stack trace the HZ put exception during CN-CN replication
ben leinfelder
07:37 AM Revision 7195 (metacat): additional debugging statements for CONCURRENT_MAP_PUT error during CN-CN replication.
ben leinfelder


01:25 PM Revision 7194 (metacat): include eml2.0.0beta4 DTD during Metacat build so that we can continue to accept (and validate) beta4 documents.
This arose when testing Metacat as DataONE Coordinating Node where legacy documents are being housed in the CN. ben leinfelder


09:03 AM Revision 7193 (metacat): encode '/' and ':' in the DOI used for the resolve URL
ben leinfelder


06:20 PM Revision 7192 (metacat): Don't set the replication status to failed for an object when it is called by a public user. Just throw the NotAuthorized exception. This prevents this node from being de-prioritized because of public calls to the method.
Chris Jones


04:23 PM Revision 7191 (metacat): include revisions table in the initial temp table population.
use the "first" creator listed in the EML (either org or person).
use other reasonable default values as needed to fu...
ben leinfelder
02:30 PM Revision 7190 (metacat): add columns: publisher and pub_date. include default values for all columns - even data files should have title.
still a few todos but closer.
ben leinfelder
12:07 PM Revision 7189 (metacat): script to generate DOI registration spreadsheet ben leinfelder


04:41 PM Revision 7188 (metacat): share the same dbConnection when inserting and then updating SystemMetadata objects in the backing store.
any errors encountered during the update will rollback the entire transaction and the SM record will not exist, even ... ben leinfelder
03:28 PM Revision 7187 (metacat): Do not loadAllKeys() for SystemMetadataMap when Metacat first starts up. hzIdentifiers will be populated with a simple SQL statement rather than the serial loading of every single SystemMetadata object. It will remain in synch using the usual entryXXX() methods as before.
This should save us resources where we were previously attempting to load ALL SystemMetadata into memory on startup. ben leinfelder
02:22 PM Revision 7186 (metacat): use LRU eviction policy and a small (1000) map size limit to avoid running out of memory because of a large number of system metadata objects
ben leinfelder
02:17 PM Revision 7185 (metacat): Set the default maximum number of database connections back to 200. After discussion, we've decided it will be better to increase the PostgreSQL limit to 300 and keep Metacat's pool size pretty big.
Chris Jones
09:57 AM Revision 7184 (metacat): include pidFilter handling - only matches the complete pid. Issues a warning in the Metacat logs when pidFilter cannot be applied but allows the call to getLogs() to return as though there was no pidFilter given. ben leinfelder
09:33 AM Revision 7183 (metacat): use at least one thread on single-processor machines. ben leinfelder
05:46 PM Revision 7182 (metacat): Change the database.maximumConnections property to 100. PostgreSQL's docs says it can handle "a few hundred", and would need to be increased from the default 100 max_connections. For DataONE optimization, we increase max_connections, however there are more processes making connections other than metacat, so I'll reduce metacat's default share.
Chris Jones


04:52 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
I've drafted a script that corrects FK violations and re-applies the original constraints. The xml_index table takes ... ben leinfelder
04:47 PM Revision 7181 (metacat): script for re-applying missing FK constraints on KNB production DB. ben leinfelder


03:04 PM Revision 7180 (metacat): include TRACE level debugging for specific classes we want to have performance metrics for.
ben leinfelder
02:31 PM Revision 7179 (metacat): Add a few logging statemnts for round trip replication metrics.
Chris Jones
02:12 PM Revision 7178 (metacat): add trace statements for measuring time to complete SM generation.
ben leinfelder
11:25 AM Revision 7177 (metacat): new D1 jars:
prevent NPEs from the object format cache when formatId.value is null. This came up during PISCO testing ben leinfelder


03:05 PM Revision 7176 (metacat): default replication policy set to 0.
ben leinfelder
12:09 PM Revision 7175 (metacat): instead of generating SM and ORE maps during dataone configuration/MN registration, moved this all to the replication admin screen where we can target generation for specific nodes. That way it's more controlled as to when and where we generate DataONE required content. ben leinfelder
12:00 PM Revision 7174 (metacat): include all EML versions (had been only eml 2.1 for testing)
ben leinfelder
11:59 AM Revision 7173 (metacat): new d1 jars for: remove exception from method decl - was not matching the interface def and not compiling.
ben leinfelder
05:43 PM Revision 7172 (metacat): Append more information such as user name and group to the validating session response.
Jing Tao


12:46 PM Revision 7171 (metacat): remove exception from method decl - was not matching the interface def and not compiling.
ben leinfelder


05:17 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
The server_location = -2 docs are a mismash:
docid | rev
ben leinfelder
05:16 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
the server_location=5 docs are 'seabloom' and 'borer' prefixes:
ben leinfelder
05:14 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
catalog_id = 27 is a "-//" doctype with docid=jdoe.23.1
We have that ...
ben leinfelder
05:10 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
For the index errors we can safely delete the index records in violation of the constraint and apply it.
For the ser...
ben leinfelder
05:08 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
The errors encountered were....
ALTER TABLE xml_documents ADD
CONSTRAINT xml_documents_rep_fk
FOREIGN KEY (server_lo...
ben leinfelder


02:36 PM Revision 7170 (metacat): add "Generate System Metadata" button to the replication server list display. When clicked, we generate SM for records belonging to that source server. This is only enabled when DataONE has been configured. ben leinfelder
12:27 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
14.4.9. Some Notes About pg_dump:
ben leinfelder
12:14 PM Bug #5608 (New): Enable all FK constraints in Metacat production [copies]
Looks like the FK constraints have been removed from the production knb database.
> select conname, contype, conkey,...
ben leinfelder


03:45 PM Revision 7169 (metacat): expose serverLocation parameter to run GenerateSystemMetadata for different replication parters as needed. ben leinfelder
11:08 AM Bug #5604: Question how to add EPSG 900913 for Google layers and how list results within a bounding-box
Hi Eva-Maria,
With Metacat 2.0.0 (which is still in a pre-release state) you'll be able to use the OpenLayers client ...
ben leinfelder
01:08 AM Bug #5604 (Resolved): Question how to add EPSG 900913 for Google layers and how list results within a bounding-box
Dear Metacat developer team,
I would like to ask you 2 questions:
I am trying to use Google maps as backgr...
unknown unknown
05:14 PM Bug #5599: absence of line feeds in eml causes pathQuery to not find some elements
While this is indeed odd, my hunch is that we get a placeholder leaf node for the line feed that separates <attribute... ben leinfelder


04:30 PM Revision 7168 (metacat): only generate system metadata for original objects. ben leinfelder
12:33 PM Bug #5599: absence of line feeds in eml causes pathQuery to not find some elements
to clarify, these pathQueries were for
<queryterm casesensitive="false" searchmode="starts-with">
gastil gastil
12:32 PM Bug #5599: absence of line feeds in eml causes pathQuery to not find some elements
To diagnose this further:
I ran pathQuery for returnfield dataset/dataTable/attributeList/, that is, the whole x...
gastil gastil

Also available in: Atom