From 05/02/2012 to 05/31/2012
- 09:25 PM Revision 7223 (metacat): Fixed formatting problem in a documentation file.
- 09:04 PM Revision 7222 (metacat): use metacat.properties to specify the default checksum algorithm to use -- this way it will be easy for us to switch to whatever DataONE decrees.
- 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.
- 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).
- 02:01 PM Revision 7219 (metacat): a few additional notes about Metacat replication configuration.
- 10:56 AM Revision 7218 (metacat): Throw an exception when NOT allowed, not when allowed =).
- 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.
- 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.
- 10:10 AM Revision 7215 (metacat): Also get the list size, which may throw an NPE.
- 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.
- 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....
- 10:00 PM Revision 7212 (metacat): trace level log for looping over EVERY pid in the system.
- 09:47 PM Revision 7211 (metacat): meant to log the guids (source) not the pids (target)
- 08:51 PM Revision 7210 (metacat): trace level log for looping over EVERY pid in the system.
- 08:18 PM Revision 7209 (metacat): logging for each step of shared identifiers loading.
- 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.
- 06:12 PM Revision 7207 (metacat): due to hudson build issue, did not actually end up testing pause/resume -- trying that again
- 05:53 PM Revision 7206 (metacat): pause/resume was not enough. trying shutdown/restart
- 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.
- 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.
- 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.
- 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.
- 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.
- 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
- 03:02 PM Revision 7199 (metacat): handle https-only server configuration -- must pull resources from https not http for the skins etc.
- 02:53 PM Revision 7198 (metacat): handle https-only server configuration -- must pull resources from https not http for the skins etc.
- 10:31 AM Revision 7197 (metacat): fix NPE (logMetacat object was not initialized) that was occurring during store()
- 09:33 AM Revision 7196 (metacat): stack trace the HZ put exception during CN-CN replication
- 07:37 AM Revision 7195 (metacat): additional debugging statements for CONCURRENT_MAP_PUT error during CN-CN replication.
- 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.
- 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.
- 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...
- 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.
- 12:07 PM Revision 7189 (metacat): script to generate DOI registration spreadsheet
- 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 ...
- 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.
- 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
- 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.
- 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.
- 09:33 AM Revision 7183 (metacat): use at least one thread on single-processor machines.
- 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.
- 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 ...
- 04:47 PM Revision 7181 (metacat): script for re-applying missing FK constraints on KNB production DB.
- 03:04 PM Revision 7180 (metacat): include TRACE level debugging for specific classes we want to have performance metrics for.
- 02:31 PM Revision 7179 (metacat): Add a few logging statemnts for round trip replication metrics.
- 02:12 PM Revision 7178 (metacat): add trace statements for measuring time to complete SM generation.
- 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
- 03:05 PM Revision 7176 (metacat): default replication policy set to 0.
- 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.
- 12:00 PM Revision 7174 (metacat): include all EML versions (had been only eml 2.1 for testing)
- 11:59 AM Revision 7173 (metacat): new d1 jars for: remove exception from method decl - was not matching the interface def and not compiling.
- 05:43 PM Revision 7172 (metacat): Append more information such as user name and group to the validating session response.
- 12:46 PM Revision 7171 (metacat): remove exception from method decl - was not matching the interface def and not compiling.
- 05:17 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
- The server_location = -2 docs are a mismash:
docid | rev
- 05:16 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
- the server_location=5 docs are 'seabloom' and 'borer' prefixes:
- 05:14 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
- catalog_id = 27 is a "-//ecoinformatics.org//eml-software-2.0.0beta5//EN" doctype with docid=jdoe.23.1
We have that ...
- 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...
- 05:08 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
- The errors encountered were....
ALTER TABLE xml_documents ADD
FOREIGN KEY (server_lo...
- 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.
- 12:27 PM Bug #5608: Enable all FK constraints in Metacat production [copies]
- 14.4.9. Some Notes About pg_dump:
- 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,...
- 03:45 PM Revision 7169 (metacat): expose serverLocation parameter to run GenerateSystemMetadata for different replication parters as needed.
- 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 ...
- 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...
- 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...
- 04:30 PM Revision 7168 (metacat): only generate system metadata for original objects.
- 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">
- 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...
- 03:54 PM Bug #5599 (New): absence of line feeds in eml causes pathQuery to not find some elements
- Presence of line feeds seems to be needed for an eml doc to get loaded properly so pathQuery can find attributeList o...
- 08:08 AM Bug #5597: eml xsl templates incomplete
- changing version to 2.0.0, though this will require modifications to the EML project if we alter the default XSLTs
- 06:32 PM Bug #5597 (Resolved): eml xsl templates incomplete
- Some xslt templates for eml transform to html are incomplete in metacat 2.0.0 (on lava).
Attached are two screensh...
- 04:29 PM Bug #5518: Track down the performance issue of metacat query.
- Yeah. Kepler issues a query for different metadata type because the ecogrid could handle only one return doctype. I b...
- 03:26 PM Bug #5518: Track down the performance issue of metacat query.
- Running the same query (well, with "Insect" (not plural) so the results were not cached) with 50 threads makes this p...
- 02:43 PM Bug #5518: Track down the performance issue of metacat query.
- I wrote a small test that issues the same Metacat query to a given server with parallel threads (25 for this example)...
- 02:50 PM Revision 7167 (metacat): test for running concurrent Metacat queries to mimic Kepler data search.
- 04:21 PM Revision 7166 (metacat): check if person's equivalentIdentity list is null before processing recursively
- 03:59 PM Revision 7165 (metacat): D1 common lib AuthUtils update
- 03:47 PM Bug #5518: Track down the performance issue of metacat query.
- There seems to be renewed concern that this is not resolved.
During the Kepler/sensor workshop Matt reported query pe...
- 09:11 AM Revision 7164 (metacat): include testSynchronizationFailed() and call as the CN subject so that it is authorized.
- 09:06 AM Revision 7163 (metacat): use MN (self) as the Session.subject so that the MN.delete() call is successful.
- 08:58 AM Revision 7162 (metacat): handle authorization for delete() differently for CN vs MN.
- On the CN, only the CN (or tbd admin user) can call it.
On the MN, both the CN (or admin user) and the _same_ MN can ...
Also available in: Atom