https://projects.ecoinformatics.org/ecoinfo/https://projects.ecoinformatics.org/ecoinfo/ecoinfo/favicon.ico?14691340362001-07-16T20:27:52ZEcoinformatics RedmineMetacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8582001-07-16T20:27:52ZJivka Bojilovabojilova@nceas.ucsb.edu
<ul></ul><p>DONE<br />Included utility function about gettig the latest docid for a user:<br />DBUtil.getLastDocid(username).<br />Required Metacat' parameters:<br />- action='getlastdocid'<br />- username</p>
<p>The SQL Statement used:<br />SELECT docid, rev, date_updated<br /> FROM xml_documents<br /> WHERE user_owner = @username<br /> AND date_updated = (SELECT <abbr title="date_updated">MAX</abbr><br /> FROM xml_documents<br /> WHERE user_owner = @username)<br />UNION<br />SELECT docid, rev, date_updated<br /> FROM xml_revisions<br /> WHERE user_owner = @username<br /> AND date_updated = (SELECT <abbr title="date_updated">MAX</abbr><br /> FROM xml_revisions<br /> WHERE user_owner = @username)<br />ORDER BY date_updated</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8592001-07-16T20:30:50ZJivka Bojilovabojilova@nceas.ucsb.edu
<ul></ul><p>DONE</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8602001-10-15T23:40:11ZDan Higginshiggins@nceas.ucsb.edu
<ul></ul><p>It appears that Metacat does NOT return the LAST ID (It seems to return the last<br />id of a dataset document. But there are other documents in a dataset which have<br />larger ids.) Morpho adds 5 to the numbe returned, but this is not always a good fix.</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8612001-10-17T03:12:52ZMatt Jonesjones@nceas.ucsb.edu
<ul></ul><p>Need to change this function so that metacat returns the largest id number used<br />for a particular scope, regardless of which user owns the documents. Thus, we<br />may need to rename the function to "getMaxIdForScope" or something similar.</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8622001-10-19T00:37:32ZDan Higginshiggins@nceas.ucsb.edu
<ul></ul><p>The current version of this code in Metacat will work correctly with the current<br />version of Morpho. The problem was related to accession numbers being assigned<br />in Morpho in a different order than documents were inserted into Metacat. (The<br />Metacat code checks insertion times rather than accession numbers.)</p>
<p>Morpho has been changed to insert documents in the same order that accession<br />numbere are assigned. Also, the next accession id stord in the profile is now<br />updated when Morpho starts up.</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8632001-10-19T23:48:44ZMatt Jonesjones@nceas.ucsb.edu
<ul></ul><p>Rewrote the SQL function to select the MAX accession number used for a given<br />scope. The scope is now passed into Metacat using a "scope" parameter. Renamed<br />functions to properly reflect that they are selecting the MAX id rather than the<br />last id. The new SQL algorithm looks like this:</p>
<pre><code>"SELECT docid, rev, acc FROM " +<br /> "( " +<br /> "SELECT docid, rev, acc FROM " +<br /> "(" +<br /> "SELECT docid, rev, " + <br /> "SUBSTR(docid, INSTR(docid, '" + sep + "', 1)+1)+0 acc " +<br /> "FROM xml_documents " +<br /> "WHERE docid LIKE ? " +<br /> "ORDER BY acc DESC " +<br /> ") " +<br /> "WHERE rownum = 1 " +<br /> "UNION " + <br /> "SELECT docid, rev, acc FROM " +<br /> "(" +<br /> "SELECT docid, rev, " + <br /> "SUBSTR(docid, INSTR(docid, '" + sep + "', 1)+1)+0 acc " +<br /> "FROM xml_revisions " +<br /> "WHERE docid LIKE ? " +<br /> "ORDER BY acc DESC " +<br /> ") " +<br /> "WHERE rownum = 1 " +<br /> ") " +<br /> "ORDER BY acc DESC" <br /> );</code></pre> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8642001-10-19T23:50:07ZMatt Jonesjones@nceas.ucsb.edu
<ul></ul><p>FIXED with previosuly committed changes.</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8652001-10-19T23:56:40ZMatt Jonesjones@nceas.ucsb.edu
<ul></ul><p>Resolved/FIXED.</p> Metacat - Bug #248: id finder needed for metacathttps://projects.ecoinformatics.org/ecoinfo/issues/248?journal_id=8662013-03-27T21:13:45ZRedmine Admin
<ul></ul><p>Original Bugzilla ID was 248</p>