Metacat: Issueshttps://projects.ecoinformatics.org/ecoinfo/https://projects.ecoinformatics.org/ecoinfo/ecoinfo/favicon.ico?14691340362017-04-13T15:10:57ZEcoinformatics Redmine
Redmine Bug #7182 (New): Allow partial package downloads when some of the objects are private https://projects.ecoinformatics.org/ecoinfo/issues/71822017-04-13T15:10:57ZLauren Walkerwalker@nceas.ucsb.edu
<p>When you try to download a package that has at least one private object, you get a 401 - Unauthorized response. When I am authorized to read at least one object in a package, I would expect to still be able to download the .zip package with those objects.</p>
<p>It's difficult for MetacatUI to tell when the "Download All" will fail, since it would need to check the /isAuthorized/{pid}?action=read result for every single object in the package, which can sometimes be >100. So right now we have an issue where users are getting a failed package download.</p> Bug #5821 (New): Allow certificate-based Metacat administrationhttps://projects.ecoinformatics.org/ecoinfo/issues/58212013-01-24T22:12:04Zben leinfelderleinfelder@nceas.ucsb.edu
<p>As we move toward the DataONE API where the MN does not provide identity and authorization services, perhaps the Metacat administrative functions should also follow suit. This would be a pretty large change for our users, but ultimately will simplify things so that we are not using two different identity/auth schemes to manage a single server.</p>
<p>In cases where the Metacat administrator did not have a useable (CILogon) identity we cold provide a utility to generate a client certificate for administrative use (or something akin to this). Ultimately this would need to be available in a browser UI where the bulk of our admin/config is performed.</p> Bug #5599 (New): absence of line feeds in eml causes pathQuery to not find some elementshttps://projects.ecoinformatics.org/ecoinfo/issues/55992012-05-07T22:54:42Zgastil gastilmarygastil@yahoo.com
<p>Presence of line feeds seems to be needed for an eml doc to get loaded properly so pathQuery can find attributeList or attribute. Not just one line feed at the end.<br />We detected this on metacat 1.9.5 at metacat.lternet but tested it on metacat 2.0 (lava.lternet)</p>
<p>Evidence:<br />in lava.lternet.edu</p>
<p>knb-lter-kbs.10.19 has no line feeds at all in the document.</p>
<p>revision 20 is same as 19 except stmml-1.1 is spelled right.<br />revision 21 is same as 20 except it has one line feed at the end of the file.<br />(so revision 21 has one line)</p>
<p>revisions 19 thru 21, while they were the last revision, did not have their attributeList found by pathQuery.</p>
<p>revision 22, with 165 lines feeds DOES have its attributeList seen by pathQuery.</p>
<p>wc -l knb-lter-kbs.10.*<br /> 0 knb-lter-kbs.10.19.xml<br /> 0 knb-lter-kbs.10.20.xml<br /> 1 knb-lter-kbs.10.21.xml<br /> 165 knb-lter-kbs.10.22.xml</p>
<p>pathQuery result snippets from two separate queries (when two different revisions were the last revision):</p>
<p><document><br /><docid>knb-lter-kbs.10.22</docid><br /><docname>eml</docname><br /><doctype>eml://ecoinformatics.org/eml-2.1.0</doctype><br /><createdate>2012-05-07</createdate><br /><updatedate>2012-05-07</updatedate><br /><param name="attributeList"></param><br /><param name="@packageId">knb-lter-kbs.10.22</param><br /></document></p>
<p>older query:</p>
<p><document><br /><docid>knb-lter-kbs.10.21</docid><br /><docname>eml</docname><br /><doctype>eml://ecoinformatics.org/eml-2.1.0</doctype><br /><createdate>2012-05-07</createdate><br /><updatedate>2012-05-07</updatedate><br /><param name="@packageId">knb-lter-kbs.10.22</param><br /></document></p> Bug #4437 (New): allow-public-read rule is not being honoredhttps://projects.ecoinformatics.org/ecoinfo/issues/44372009-10-06T21:00:39ZMargaret O'Brienmob@msi.ucsb.edu
<p>This EML201 doc: knb-lter-sbc.3.7 contains 4 datatables. It has a dataset level access tree which includes an allow-public-read statment. Each data table also has additionalMetadata tree referencing it, also with allow-public-read statements. But one of the tables returns this message:</p>
<p>User public does not have permission to read the document with the docid sbclter.728.1</p>
<p>When you look at the doc, be sure to include the revision number. the most recent revision will have all those additionalMetadata trees removed.</p> Bug #3830 (New): Add the ability to modify multi-line propertieshttps://projects.ecoinformatics.org/ecoinfo/issues/38302009-02-19T00:35:21ZMichael Daigledaigle@nceas.ucsb.edu
<p>Right now, SortedProperties will read a multi-line property, but not modify one. It should be able to modify a multi-line property and maintain format.</p> Bug #3765 (New): Backup configured passwords as encrypted valueshttps://projects.ecoinformatics.org/ecoinfo/issues/37652009-01-22T18:11:36ZMichael Daigledaigle@nceas.ucsb.edu
<p>Currently, the user has to add the passwords for the db, skins and metacat ldap web every time they upgrade. This should use the EncryptionUtil class to save encrypted passwords in the backup files.</p>
<p>Note, the EncryptionUtil class has been implemented with triple-DES encryption, but has not been used or tested yet.</p> Bug #3710 (New): apt-get couldn't install metacathttps://projects.ecoinformatics.org/ecoinfo/issues/37102008-12-17T23:43:02ZJing Taotao@nceas.ucsb.edu
<p>I followed the instruction on Mike's email to install metacat in naples.nceas.ucsb.edu, which is a 64-bit machine:</p>
<p>To try it out, edit /etc/apt/sources.list and add the following two lines (or set it up<br />in the Software Sources GUI):</p>
<pre><code>deb-src <a class="external" href="http://indus.msi.ucsb.edu/apt">http://indus.msi.ucsb.edu/apt</a> sid main contrib non-free<br /> deb <a class="external" href="http://indus.msi.ucsb.edu/apt">http://indus.msi.ucsb.edu/apt</a> sid main contrib non-free</code></pre>
<p>Then refresh apt-get by typing</p>
<pre><code>sudo apt-get update</code></pre>
<p>Now type</p>
<pre><code>apt-get install metacat</code></pre>
<p>However, when i ran "sudo apt-get update" and i got the error:<br />W: Failed to fetch <a class="external" href="http://indus.msi.ucsb.edu/apt/dists/sid/main/binary-amd64/Packages.gz">http://indus.msi.ucsb.edu/apt/dists/sid/main/binary-amd64/Packages.gz</a> 404 Not Found</p>
<p>W: Failed to fetch <a class="external" href="http://indus.msi.ucsb.edu/apt/dists/sid/contrib/binary-amd64/Packages.gz">http://indus.msi.ucsb.edu/apt/dists/sid/contrib/binary-amd64/Packages.gz</a> 404 Not Found</p>
<p>W: Failed to fetch <a class="external" href="http://indus.msi.ucsb.edu/apt/dists/sid/non-free/binary-amd64/Packages.gz">http://indus.msi.ucsb.edu/apt/dists/sid/non-free/binary-amd64/Packages.gz</a> 404 Not Found</p> Bug #3416 (New): ArrayIndexOutOfBoundsException in DBConnectionPoolhttps://projects.ecoinformatics.org/ecoinfo/issues/34162008-06-25T18:15:35ZDuane Costadcosta@lternet.edu
<p>The following error has appeared in the Tomcat log files at LTER several times:</p>
<p>Jun 25, 2008 9:55:54 AM org.apache.catalina.core.StandardWrapperValve invoke<br />SEVERE: Servlet.service() for servlet metacat threw exception<br />java.lang.ArrayIndexOutOfBoundsException: 9 >= 9<br /> at java.util.Vector.elementAt(Vector.java:432)<br /> at edu.ucsb.nceas.metacat.DBConnectionPool.printMethodNameHavingBusyDBConnection(DBConnectionPool.java:617)<br /> at edu.ucsb.nceas.metacat.MetaCatServlet.handleGetOrPost(MetaCatServlet.java:481)<br /> at edu.ucsb.nceas.metacat.MetaCatServlet.doPost(MetaCatServlet.java:312)<br /> at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)<br /> at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)<br /> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)<br /> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)<br /> at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:122)<br /> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)<br /> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)<br /> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)<br /> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)<br /> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)<br /> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)<br /> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)<br /> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)<br /> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)<br /> at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)<br /> at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)<br /> at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)<br /> at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)<br /> at java.lang.Thread.run(Thread.java:595)</p>
<p>The relevant source code in DBConnectionPool.java is:</p>
<pre><code>/**
* Method to print out the method name which have busy DBconnection<br /> */<br /> public void printMethodNameHavingBusyDBConnection()
{</code></pre>
<pre><code>DBConnection db = null; //single DBconnection<br /> int poolSize = 0; //size of connection pool<br /> //get the size of DBConnection pool<br /> poolSize = connectionPool.size();<br /> //Check every DBConnection in the pool<br /> for ( int i=0; i&lt;poolSize; i++)
{</code></pre>
<pre><code>db = (DBConnection) connectionPool.elementAt(i);<br /> //check the status of db. If it is free, count it<br /> if (db.getStatus() == BUSY)
{<br /> logMetacat.warn("This method having a busy DBConnection: " <br /> +db.getCheckOutMethodName());<br /> logMetacat.warn("The busy DBConnection tag is: " <br /> +db.getTag());<br /> }//if<br /> }//for</code></pre>
<pre><code>}//printMethodNameHavingBusyDBConnection</code></pre>
<p>It looks like this could be a thread safety issue. Perhaps the poolSize changes between the time that it is assigned:</p>
<pre><code>poolSize = connectionPool.size();</code></pre>
<p>and the time that the Vector is accessed:</p>
<pre><code>db = (DBConnection) connectionPool.elementAt(i);</code></pre>
<p>If this is the case, then it seems that a synchronized() block might be needed.</p>
<p>Thanks,<br />Duane</p> Bug #3272 (New): Add Keywords for SANParks and SAEON when uploading spatial datahttps://projects.ecoinformatics.org/ecoinfo/issues/32722008-05-02T23:00:12Zben leinfelderleinfelder@nceas.ucsb.edu
<p>Use the constrained keywords based on what skin is used when uploading spatial [meta]data:</p>
<p>SANParks, South Africa<br />SAEON, South Africa</p> Bug #3175 (New): Add a thread to build xml_queryresult table when metacat startuphttps://projects.ecoinformatics.org/ecoinfo/issues/31752008-03-13T22:46:25ZJing Taotao@nceas.ucsb.edu
<p>xml_queryresult table is a big addition to improve metacat query performance. Currently metacat will build records of xml_queryresult when a query first hit it. If we build them during the metacat startup, everytime metacat can get results from xml_queryresult rather than from xml_node table.</p>
<p>The returnfield sets will be the returnfields in metacat common query clients, e.g., morpho, kepler and all skins.</p> Bug #2548 (New): Architecture for filtering features from WMS requestshttps://projects.ecoinformatics.org/ecoinfo/issues/25482006-09-11T22:00:04ZMatthew Perryperry@nceas.ucsb.edu
<p>Currently, all of the documents in the metacat database are stored in the spatial cache. When the web client requests a map image, all the features in that extent are shown.</p>
<p>We need to intercept the WMS request (possibly by using a servlet filter, possibly by writing our own WMS handler) and prevent features from being included in the map based on various contraints:</p>
<p>1) Access permissions. If a user doesn't have read permissions, they shouldn't see the feature in the map.</p>
<p>2) Queries. The WMS request may be paired with a non-spatial query, the results of which should define a subset of documents that are to be drawn.</p>
<p>3) Skin configuration. Some skins may want to filter the map features based on organization name or other contraints.</p>
<p>For now the critical part is the access constraints. In the mean time, we'll just cache only public docs.</p> Bug #2501 (New): Add links to FGDC-tranformed version of EML documentshttps://projects.ecoinformatics.org/ecoinfo/issues/25012006-07-27T16:51:32ZWill Tyburczytyburczy@nceas.ucsb.edu
<p>When viewing EML documents, the user should be provided with a link (under "Metadata Downloads") that gives the EML-to-FGDC transformed version of the metadata.</p> Bug #2229 (New): Allowing web registry pull-down menu for "Station Name" to select multiple stat...https://projects.ecoinformatics.org/ecoinfo/issues/22292005-10-11T23:07:08ZWill Tyburczytyburczy@nceas.ucsb.eduBug #1324 (New): A Commit or Save Work button that wrote intermediate results to the metadatahttps://projects.ecoinformatics.org/ecoinfo/issues/13242004-02-06T03:38:14ZSaurabh Gargsgarg@nceas.ucsb.edu
<p>From Ricks comments:<br />Entering metadata using the Data Repository screen can take 10 to 30 minutes or <br />longer; sometimes Internet connections can fail or browsers crash, which leads <br />to loss of data. It would be reassuring and productivity-enhancing if the <br />screen had a ‘Commit’ or ‘Save Work’ button that wrote intermediate results to <br />the metadata. I realize that this can be done by saving and then re-opening the <br />(existing) data package for further entry; but a ‘one-button’ solution would be <br />even better.</p> Bug #195 (In Progress): allow metacat to store files on multiple fshttps://projects.ecoinformatics.org/ecoinfo/issues/1952001-04-09T19:53:06ZMatt Jonesjones@nceas.ucsb.edu
<p>Metacat currently stores files on a single file system. Need to changes this so<br />that Metacat can be configured to store files on multiple file systems in case<br />space management by the administrator requires this.</p>