From: Mark G. <mg...@us...> - 2005-08-30 00:02:22
|
Update of /cvsroot/gmod/apollo/src/java/apollo/dataadapter/chado/jdbc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14052/src/java/apollo/dataadapter/chado/jdbc Modified Files: JdbcChadoAdapter.java Log Message: loading a dataset from bdgp was incredibly slow in apollo - it was taking 4 minutes! - turns out this dataset had a huge amount of features in one tier ~7000 - in drawableFeatureSet.addFeatureDrawable findDrawable was being called - for eveyry feature added - and findDrawable iterates through every drawable in the set to make sure its not already there - for large sets this is extremely costly. i added this a few months ago to deal with splits adding the same feature twice - this is not the way to address this issue (at the time i thought it a nice check to have - little did i know the bottleneck i added) - so i took out the offending code and the 4 minute load went down to 26 seconds - steve searle noticed this problem as well and took out for in the non-editing case - but really it needs to be taken out for all cases as one might be editing on very large datasets as is currently the case. also put in non-analysis check for gene query. Index: JdbcChadoAdapter.java =================================================================== RCS file: /cvsroot/gmod/apollo/src/java/apollo/dataadapter/chado/jdbc/JdbcChadoAdapter.java,v retrieving revision 1.105 retrieving revision 1.106 diff -C2 -d -r1.105 -r1.106 *** JdbcChadoAdapter.java 29 Aug 2005 21:48:43 -0000 1.105 --- JdbcChadoAdapter.java 30 Aug 2005 00:02:05 -0000 1.106 *************** *** 928,931 **** --- 928,932 ---- "AND trans2gene." + objFeatCol + " = gene.feature_id " + "AND gene.type_id = " + getFeatureCVTermId("gene") + " " + + "AND gene.is_analysis = 'f' " + featLocWhereClause + "ORDER BY gene.feature_id, trans.feature_id, exonloc." + fminCol + " "; |