MonetDB: rdf - Improve label quality
Changeset: 3e4ece2b7085 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3e4ece2b7085 Modified Files: monetdb5/extras/rdf/rdflabels.c Branch: rdf Log Message: Improve label quality - Computation of similarity between CS's and classes is now based on the assumption that all properties of a CS should belong to one ontology class, not that the CS has to consist of ALL properties of the corresponding ontology class. - Type values are usually multi-valued properties, the values represent the hierarchy the subject belongs to (e.g., if a subject in the dbpedia dataset has type 'Athlete', it also has types 'Person', 'Agent', 'Thing'). This hierarchy is analyzed and only the most specific type value (the leaf) is added to the data structures. This improves the label candidates that are computed using type values. diffs (284 lines): diff --git a/monetdb5/extras/rdf/rdflabels.c b/monetdb5/extras/rdf/rdflabels.c --- a/monetdb5/extras/rdf/rdflabels.c +++ b/monetdb5/extras/rdf/rdflabels.c @@ -851,19 +851,89 @@ int compareTypeAttributesFreqs (const vo #endif #if USE_TYPE_NAMES +/* Analyze hierarchy in a list of type values, add all leaf values to the histogram. Values that are not present in the hierarchy tree built from the ontologies are NOT added to the histogram. */ +static +void insertLeafsIntoTypeAttributesHistogram(oid* typeList, int typeListLength, TypeAttributesFreq*** typeAttributesHistogram, int** typeAttributesHistogramCount, int csFreqIdx, int type, BAT *ontmetaBat, OntClass *ontclassSet) { + int i, j, k; + int fit; + char*leaf; // flag whether a type value in 'typeList' is a leaf (1) or not (0) + BUN pos; + OntClasshierarchy; + + // start with: every type value is a leaf + leaf = GDKmalloc(sizeof(char) * typeListLength); + for (i = 0; i typeListLength; ++i) leaf[i] = 1; + + // analyze hierarchy + for (i = 0; i typeListLength; ++i) { + if (!leaf[i]) continue; + pos = BUNfnd(BATmirror(ontmetaBat), typeList[i]); + if (pos == BUN_NONE) { + // no ontology information for this type value, therefore it is not added to the hierarchy + leaf[i] = 0; + continue; + } + + // get hierarchy of this type value + hierarchy = ontclassSet[pos]; + + // loop over superclasses, set leaf=0 + for (j = 0; j hierarchy.numsc; ++j) { + for (k = 0; k typeListLength; ++k) { + if (i == k) continue; + if (ontclassSet[hierarchy.scIdxes[j]].cOid == typeList[k]) { + // found superclass at position 'k' + leaf[k] = 0; + } + } + } + } + + // add all leafs to the histogram + for (i = 0; i typeListLength; ++i) { + if (!leaf[i]) continue; + fit = 0; + for (j = 0; j typeAttributesHistogramCount[csFreqIdx][type]; ++j) { + if (typeAttributesHistogram[csFreqIdx][type][j].value == typeList[i]) { + // bucket exists + typeAttributesHistogram[csFreqIdx][type][j].freq += 1; + fit = 1; + break; + } + } + if (!fit) { + // bucket does not exist + // realloc + typeAttributesHistogramCount[csFreqIdx][type] += 1; + typeAttributesHistogram[csFreqIdx][type] = (TypeAttributesFreq *) realloc(typeAttributesHistogram[csFreqIdx][type], sizeof(TypeAttributesFreq) * typeAttributesHistogramCount[csFreqIdx][type]); + if (!typeAttributesHistogram[csFreqIdx][type]) fprintf(stderr, ERROR: Couldn't realloc memory!\n); + + // insert value + typeAttributesHistogram[csFreqIdx][type][typeAttributesHistogramCount[csFreqIdx][type] - 1].value = typeList[i]; + typeAttributesHistogram[csFreqIdx][type][typeAttributesHistogramCount[csFreqIdx][type] - 1].freq = 1; + } + } + + GDKfree(leaf); +} + /* Loop through all subjects to collect frequency statistics for type attribute values. */ static -void createTypeAttributesHistogram(BAT *sbat, BATiter si, BATiter pi, BATiter oi, oid *subjCSMap, CSset *freqCSset, int *csIdFreqIdxMap, int typeAttributesCount, TypeAttributesFreq*** typeAttributesHistogram, int** typeAttributesHistogramCount, char** typeAttributes) { +void createTypeAttributesHistogram(BAT *sbat, BATiter si, BATiter pi, BATiter oi, oid *subjCSMap,
MonetDB: default - Approved clients tests.
Changeset: 5d7fe15187f5 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5d7fe15187f5 Modified Files: clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures_nocfitsio.stable.out clients/Tests/MAL-signatures_sphinxclient.stable.out clients/Tests/SQL-dump.stable.out clients/Tests/SQL-dump_gsl.stable.out clients/Tests/SQL-dump_nogeom.stable.out Branch: default Log Message: Approved clients tests. diffs (truncated from 5076 to 300 lines): diff --git a/clients/Tests/MAL-signatures.stable.out b/clients/Tests/MAL-signatures.stable.out --- a/clients/Tests/MAL-signatures.stable.out +++ b/clients/Tests/MAL-signatures.stable.out @@ -2415,7 +2415,7 @@ address ALGgroupby; comment Produces a new BAT with groups identified by the head column. The result contains tail times the head value, ie the tail contains the result group sizes. command algebra.ilikesubselect(s:bat[:oid,:str],pat:bat[:oid,:str],esc:str) (l:bat[:oid,:oid],r:bat[:oid,:oid]) -address PCREilike_join_pcre; +address PCREilike_join_pcr5; function algebra.ilikesubselect(b:bat[:oid,:str],cand:bat[:oid,:oid],pat:str,esc:str,anti:bit):bat[:oid,:oid]; function algebra.ilikesubselect(b:bat[:oid,:str],pat:str,esc:str,anti:bit):bat[:oid,:oid]; command algebra.indexjoin(left:bat[:any_1,:any_2],right:bat[:any_2,:any_3]):bat[:any_1,:any_3] @@ -3021,14 +3021,6 @@ command batstr.like(s:bat[:oid,:str],pat address BATPCRElike2; command batstr.like(s:bat[:oid,:str],pat:str,esc:str):bat[:oid,:bit] address BATPCRElike; -command batstr.like_uselect(s:bat[:oid,:str],pat:str,esc:str):bat[:oid,:void] -address STRbatlike_uselect; -comment Perform SQL like operation against a string bat - -command batstr.like_uselect(s:bat[:oid,:str],pat:str):bat[:oid,:void] -address STRbatlike_uselect2; -comment Perform SQL like operation against a string bat - command batstr.ltrim(s:bat[:oid,:str]):bat[:oid,:str] address STRbatLtrim; comment Strip whitespaces from start of a string. @@ -3049,10 +3041,6 @@ command batstr.nbytes(s:bat[:oid,:str]): address STRbatBytes; comment Return the string length in bytes. -command batstr.replace(s:bat[:oid,:str],pat:str,s2:str):bat[:oid,:str] -address STRbatreplace; -comment Insert a string into another - command batstr.r_search(s:bat[:oid,:str],c:str):bat[:oid,:int] address STRbatRstrSearchcst; comment Reverse search for a substring. Returns position, -1 if not found. @@ -32082,18 +32070,6 @@ pattern bbp.bind(name:str):bat[:oid,:any address CMDbbpbind; comment Locate the BAT using its logical name -command bbp.compress(b:bat[:oid,:any_2],fnme:str):bat[:oid,:any_2] -address CMDbbpcompress; -comment Generate a compressed image of the BAT on a specific file - -command bbp.decompress(b:bat[:oid,:any_2],fnme:str):bat[:oid,:any_2] -address CMDbbpdecompress; -comment Obtain a temporary decompressed image of a BAT from a specific file - -command bbp.expand(b:bat[:oid,:any_2],fnme:str):bat[:oid,:any_2] -address CMDbbpexpand; -comment Expand a compressed image of BAT heaps - command bbp.getPageSize():int address CMDgetPageSize; comment Obtain the memory page size @@ -32158,10 +32134,6 @@ command bbp.getIndex(b:bat[:oid,:any_2]) address CMDbbpgetIndex; comment Retrieve the index in the BBP -command bbp.truncate(b:bat[:oid,:any_2],fnme:str):bat[:oid,:any_2] -address CMDbbptruncate; -comment Truncate the heaps if a compressed image exist - command blob.blob(s:str):blob address BLOBblob_fromstr; command blob.blob(s:blob):blob @@ -39651,30 +39623,6 @@ pattern language.source(f:str):void address CMDevalFile; comment Merge the instructions stored in the file with the current program. -command lock.create():lock -address LCKcreate; -comment Create an unset lock - -command lock.destroy(l:lock):void -address LCKdestroy; -comment Destroy a lock - -command lock.set(l:lock):void -address LCKset; -comment Try to set a lock. If set, block till it is freed - -command lock.tostr(l:lock):void -address lockToStr; -comment Overloaded atom function - -command lock.try(l:lock):int -address LCKtry; -comment Try a lock. If free set it, if not return EBUSY - -command lock.unset(l:lock):void -address LCKunset; -comment Unset a lock - command lsst.angsep(ra1:dbl,dec1:dbl,ra2:dbl,dec2:dbl):dbl address qserv_angSep; comment Returns the angular separation in degrees between two sphericalcoordinate pairs (ra1,dec1) and (ra2,dec2) @@ -40758,12 +40706,6 @@ comment Duplicate constant removal optim pattern optimizer.constants():str address OPTwrapper; -pattern optimizer.compression(mod:str,fcn:str):str -address OPTwrapper; -comment Compression code injection - -pattern optimizer.compression():str -address OPTwrapper; pattern optimizer.commonTerms(mod:any_1,fcn:any_2):str address OPTwrapper; comment Common sub-expression optimizer @@ -41038,57 +40980,22 @@ comment Collect trace of a specific oper pattern optimizer.trace():str
MonetDB: bamloader - Finished basic bam loader functionality. Di...
Changeset: a02498cf33c0 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a02498cf33c0 Added Files: sql/backends/monet5/bamloader/bam_db_interface.c sql/backends/monet5/bamloader/bam_db_interface.h sql/backends/monet5/bamloader/bam_wrapper.c sql/backends/monet5/bamloader/bam_wrapper.h Removed Files: sql/backends/monet5/bamloader/bam_sql.c sql/backends/monet5/bamloader/bam_sql.h sql/backends/monet5/bamloader/sql/bam_clear.sql sql/backends/monet5/bamloader/sql/bam_create_alignments_storage_0.sql sql/backends/monet5/bamloader/sql/bam_create_alignments_storage_1.sql sql/backends/monet5/bamloader/sql/bam_drop_alignments_storage_0.sql sql/backends/monet5/bamloader/sql/bam_drop_alignments_storage_1.sql sql/backends/monet5/bamloader/sql/bam_schema.sql Modified Files: sql/backends/monet5/bamloader/85_bam.sql sql/backends/monet5/bamloader/Makefile.ag sql/backends/monet5/bamloader/bam.mal sql/backends/monet5/bamloader/bam_globals.h sql/backends/monet5/bamloader/bam_loader.c sql/backends/monet5/bamloader/bam_loader.h Branch: bamloader Log Message: Finished basic bam loader functionality. Divided code nicely over multiple files so it will be relatively easy to separate the code between client-side code and server-side code at some later point. diffs (truncated from 4985 to 300 lines): diff --git a/sql/backends/monet5/bamloader/85_bam.sql b/sql/backends/monet5/bamloader/85_bam.sql --- a/sql/backends/monet5/bamloader/85_bam.sql +++ b/sql/backends/monet5/bamloader/85_bam.sql @@ -1,10 +1,13 @@ -CREATE PROCEDURE bam_loader_repos(bam_repos STRING, dbschema INT, storage_mask STRING, nr_threads INT) +CREATE PROCEDURE bam_loader_repos(bam_repos STRING, dbschema SMALLINT, nr_threads SMALLINT) EXTERNAL NAME bam.bam_loader_repos; -CREATE PROCEDURE bam_loader_file(bam_file STRING, dbschema INT, storage_mask STRING) +CREATE PROCEDURE bam_loader_files(bam_files STRING, dbschema SMALLINT, nr_threads SMALLINT) +EXTERNAL NAME bam.bam_loader_files; + +CREATE PROCEDURE bam_loader_file(bam_file STRING, dbschema SMALLINT) EXTERNAL NAME bam.bam_loader_file; -CREATE PROCEDURE bam_drop_file(file_id SMALLINT, dbschema SMALLINT) +CREATE PROCEDURE bam_drop_file(file_id BIGINT, dbschema SMALLINT) EXTERNAL NAME bam.bam_drop_file; diff --git a/sql/backends/monet5/bamloader/Makefile.ag b/sql/backends/monet5/bamloader/Makefile.ag --- a/sql/backends/monet5/bamloader/Makefile.ag +++ b/sql/backends/monet5/bamloader/Makefile.ag @@ -29,12 +29,14 @@ INCLUDES = .. \ ../../../../common/options \ ../../../../common/stream \ ../../../../gdk \ +../../../../tools/merovingian \ +../../../../tools/merovingian/daemon \ $(SAMTOOLS_CFLAGS) lib__bam = { MODULE DIR = libdir/monetdb5 - SOURCES = bam_loader.c bam_loader.h bam_lib.h bam_lib.c bam_sql.h bam_sql.c + SOURCES = bam_loader.c bam_loader.h bam_wrapper.c bam_wrapper.h bam_db_interface.c bam_db_interface.h bam_globals.h bam_lib.h bam_lib.c LIBS = ../../../../monetdb5/tools/libmonetdb5 \ ../../../../gdk/libbat \ $(SAMTOOLS_LIBS) diff --git a/sql/backends/monet5/bamloader/bam.mal b/sql/backends/monet5/bamloader/bam.mal --- a/sql/backends/monet5/bamloader/bam.mal +++ b/sql/backends/monet5/bamloader/bam.mal @@ -1,19 +1,23 @@ module bam; -# Bam_loader related signatures +# Bam loader related signatures -pattern bam_loader_repos(bam_repos_list:str, dbschema:int, storage_mask:str, nr_threads:int):void +pattern bam_loader_repos(bam_repos:str, dbschema:sht, nr_threads:sht):void address bam_loader_repos -comment Read the files in the given list of bam files and store them in the database; +comment Read all bam files in the given bam_repos directory (non-recursive) and store them in the given dbschema; -pattern bam_loader_file(bam_file:str, dbschema:int, storage_mask:str):void +pattern bam_loader_files(bam_files:str, dbschema:sht, nr_threads:sht):void +address bam_loader_files +comment Read all bam files in the file list stored in the file bam_files (separated by a newline) and store them in the given dbschema; + +pattern bam_loader_file(bam_file:str, dbschema:sht):void address bam_loader_file -comment Read the bam file given as the first parameter and store it in the database; +comment Read bam_file and store it in the given dbschema; -pattern bam_drop_file(file_id:sht, dbschema:sht):void +pattern bam_drop_file(file_id:lng, dbschema:sht):void address bam_drop_file -comment Drop alignment tables and header data for the given file +comment Drop alignment tables and header data for the bam file with the given file_id # Scalar signatures for bam_lib diff --git a/sql/backends/monet5/bamloader/bam_db_interface.c b/sql/backends/monet5/bamloader/bam_db_interface.c new file mode 100644 --- /dev/null +++
MonetDB: bamloader - Finished BAM loader code, added BAM recipe.
Changeset: c303c0dd237e for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c303c0dd237e Added Files: sql/backends/monet5/bamloader/BAMRecipe.pdf sql/backends/monet5/bamloader/Tests/All sql/backends/monet5/bamloader/Tests/bam/queryname/toy.bam sql/backends/monet5/bamloader/Tests/bam/toy.bam sql/backends/monet5/bamloader/Tests/bam/toy_coordinate.bam sql/backends/monet5/bamloader/Tests/bam/toy_coordinate.bam.bai sql/backends/monet5/bamloader/Tests/benchmarks.py sql/backends/monet5/bamloader/Tests/load.sql.src sql/backends/monet5/bamloader/Tests/sort.cmd.src Removed Files: sql/backends/monet5/bamloader/README sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/benchmark1.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/benchmark2.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query1.1.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query1.2.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query1.3.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query1.4.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query1.5.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.10.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.11.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.12.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.3.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.4.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.6.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.7.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.8.sql sql/backends/monet5/bamloader/Tests/benchmarks_0_minimaloutput/query2.9.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/benchmark1.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/benchmark2.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query1.1.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query1.2.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query1.3.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query1.4.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query1.5.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.10.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.11.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.12.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.3.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.4.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.6.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.7.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.8.sql sql/backends/monet5/bamloader/Tests/benchmarks_1_minimaloutput/query2.9.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/benchmark1.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/benchmark2.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query1.1.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query1.2.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query1.3.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query1.4.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query1.5.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.1.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.10.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.11.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.12.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.2.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.3.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.4.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.5.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.6.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.7.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.8.sql sql/backends/monet5/bamloader/Tests/benchmarks_2/query2.9.sql sql/backends/monet5/bamloader/Tests/benchmarks_2_minimaloutput/benchmark1.sql sql/backends/monet5/bamloader/Tests/benchmarks_2_minimaloutput/benchmark2.sql
MonetDB: bamloader - dded SAMrenderer to mclient. Some minor cha...
Changeset: b40553856fac for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=b40553856fac Modified Files: clients/mapiclient/mclient.c sql/backends/monet5/bamloader/bam_db_interface.c sql/backends/monet5/bamloader/bam_db_interface.h sql/backends/monet5/bamloader/bam_loader.c sql/backends/monet5/bamloader/bam_wrapper.c Branch: bamloader Log Message: dded SAMrenderer to mclient. Some minor changes in bam loader code. diffs (230 lines): diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c --- a/clients/mapiclient/mclient.c +++ b/clients/mapiclient/mclient.c @@ -75,6 +75,12 @@ #endif #endif +/* Samtools is not needed for the SAMrenderer, so commented out +#ifdef HAVE_SAMTOOLS +#include bam.h +#endif +*/ + #ifndef S_ISCHR #define S_ISCHR(m) (((m) S_IFMT) == S_IFCHR) #endif @@ -116,7 +122,8 @@ enum formatters { XMLformatter, TESTformatter, CLEANformatter, - TIMERformatter + TIMERformatter, +SAMformatter }; static enum formatters formatter = NOformatter; char *output = NULL; /* output format as string */ @@ -1030,6 +1037,79 @@ TIMERrenderer(MapiHdl hdl) printf(%s\n, timerHuman()); } + +static void +SAMrenderer(MapiHdl hdl) +{ +/* Variables keeping track of which result set fields map to qname, flag etc. (-1 means that it does not occur in result set) */ +int field_qname = -1; +int field_flag = -1; +int field_rname = -1; +int field_pos = -1; +int field_mapq = -1; +int field_cigar = -1; +int field_rnext = -1; +int field_pnext = -1; +int field_tlen = -1; +int field_seq = -1; +int field_qual = -1; + +int field_count = mapi_get_field_count(hdl); +int t_fields; + +int i; + +/* Samtools is not needed for rendering to SAM, so this is commented out +#ifndef HAVE_SAMTOOLS +mnstr_printf(toConsole, Result set can not be rendered to BAM file, since Samtools could not be found during compilation of mclient\n); +return; +#endif +*/ + +/* First, initialize field variables properly */ +for(i=0; ifield_count; ++i) { +char *field_name = mapi_get_name(hdl, i); +if(strcmp(field_name, qname) == 0) { field_qname = i; continue; } +if(strcmp(field_name, flag ) == 0) { field_flag = i; continue; } +if(strcmp(field_name, rname) == 0) { field_rname = i; continue; } +if(strcmp(field_name, pos ) == 0) { field_pos = i; continue; } +if(strcmp(field_name, mapq ) == 0) { field_mapq = i; continue; } +if(strcmp(field_name, cigar) == 0) { field_cigar = i; continue; } +if(strcmp(field_name, rnext) == 0) { field_rnext = i; continue; } +if(strcmp(field_name, pnext) == 0) { field_pnext = i; continue; } +if(strcmp(field_name, tlen ) == 0) { field_tlen = i; continue; } +if(strcmp(field_name, seq ) == 0) { field_seq = i; continue; } +if(strcmp(field_name, qual ) == 0) { field_qual = i; continue; } + +mnstr_printf(stderr_stream, Unexpected column name in result set: '%s'. Data in this column is not used.\n, field_name); +} + +/* Write all alignments */ +while (!mnstr_errnr(toConsole) (t_fields = fetch_row(hdl)) != 0) { +if (t_fields != field_count) { + mnstr_printf(stderr_stream, + invalid tuple received from server, + got %d columns, expected %d, ignoring\n, t_fields, field_count); + continue; +} + +/* Write fields to SAM line */ +mnstr_printf(toConsole, %s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n, +(field_qname == -1 ? * : mapi_fetch_field(hdl, field_qname)), +(field_flag == -1 ? 0 : mapi_fetch_field(hdl, field_flag )), +(field_rname == -1 ? * : mapi_fetch_field(hdl, field_rname)), +(field_pos == -1 ? 0 : mapi_fetch_field(hdl, field_pos )), +(field_mapq == -1 ? 255 : mapi_fetch_field(hdl, field_mapq )), +(field_cigar == -1 ? * : mapi_fetch_field(hdl, field_cigar)), +(field_rnext == -1 ? * : mapi_fetch_field(hdl, field_rnext)), +(field_pnext == -1 ? 0 : mapi_fetch_field(hdl, field_pnext)), +(field_tlen == -1 ? 0 : mapi_fetch_field(hdl, field_tlen )), +(field_seq == -1 ? * : mapi_fetch_field(hdl, field_seq )), +(field_qual == -1 ? * : mapi_fetch_field(hdl, field_qual))); +} +} + + static void SQLheader(MapiHdl hdl, int *len, int fields, char more) { @@ -1381,7 +1461,9 @@ setFormatter(char *s) formatter = TESTformatter; } else if (strcmp(s, timer) == 0) { formatter = TIMERformatter; - } else { +} else if (strcmp(s, sam) == 0) { +formatter = SAMformatter; +} else {
MonetDB: default - Fixed Open Geospatial Consortium (OGC) tests.
Changeset: 521596f93598 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=521596f93598 Added Files: geom/sql/Tests/T1.reqtests geom/sql/Tests/T1.stable.err geom/sql/Tests/T1.stable.out geom/sql/Tests/T10.reqtests geom/sql/Tests/T11.reqtests geom/sql/Tests/T12.reqtests geom/sql/Tests/T13.reqtests geom/sql/Tests/T13.stable.err geom/sql/Tests/T13.stable.out geom/sql/Tests/T14.reqtests geom/sql/Tests/T14.stable.err geom/sql/Tests/T14.stable.out geom/sql/Tests/T15.reqtests geom/sql/Tests/T15.stable.err geom/sql/Tests/T15.stable.out geom/sql/Tests/T16.reqtests geom/sql/Tests/T17.reqtests geom/sql/Tests/T17.stable.err geom/sql/Tests/T17.stable.out geom/sql/Tests/T18.reqtests geom/sql/Tests/T18.stable.err geom/sql/Tests/T18.stable.out geom/sql/Tests/T19.reqtests geom/sql/Tests/T19.stable.err geom/sql/Tests/T19.stable.out geom/sql/Tests/T2.reqtests geom/sql/Tests/T2.stable.err geom/sql/Tests/T2.stable.out geom/sql/Tests/T20.reqtests geom/sql/Tests/T20.stable.err geom/sql/Tests/T20.stable.out geom/sql/Tests/T21.reqtests geom/sql/Tests/T22.reqtests geom/sql/Tests/T22.stable.err geom/sql/Tests/T22.stable.out geom/sql/Tests/T23.reqtests geom/sql/Tests/T23.stable.err geom/sql/Tests/T23.stable.out geom/sql/Tests/T24.reqtests geom/sql/Tests/T24.stable.err geom/sql/Tests/T24.stable.out geom/sql/Tests/T25.reqtests geom/sql/Tests/T25.stable.err geom/sql/Tests/T25.stable.out geom/sql/Tests/T26.reqtests geom/sql/Tests/T27.reqtests geom/sql/Tests/T27.stable.err geom/sql/Tests/T27.stable.out geom/sql/Tests/T28.reqtests geom/sql/Tests/T28.stable.err geom/sql/Tests/T28.stable.out geom/sql/Tests/T29.reqtests geom/sql/Tests/T29.stable.err geom/sql/Tests/T29.stable.out geom/sql/Tests/T3.reqtests geom/sql/Tests/T3.stable.err geom/sql/Tests/T3.stable.out geom/sql/Tests/T30.reqtests geom/sql/Tests/T30.stable.err geom/sql/Tests/T30.stable.out geom/sql/Tests/T31.reqtests geom/sql/Tests/T31.stable.err geom/sql/Tests/T31.stable.out geom/sql/Tests/T32.reqtests geom/sql/Tests/T32.stable.err geom/sql/Tests/T32.stable.out geom/sql/Tests/T33.reqtests geom/sql/Tests/T34.reqtests geom/sql/Tests/T34.stable.err geom/sql/Tests/T34.stable.out geom/sql/Tests/T35.reqtests geom/sql/Tests/T35.stable.err geom/sql/Tests/T35.stable.out geom/sql/Tests/T36.reqtests geom/sql/Tests/T36.sql geom/sql/Tests/T36.stable.err geom/sql/Tests/T36.stable.out geom/sql/Tests/T37.reqtests geom/sql/Tests/T38.reqtests geom/sql/Tests/T39.reqtests geom/sql/Tests/T4.reqtests geom/sql/Tests/T4.stable.err geom/sql/Tests/T4.stable.out geom/sql/Tests/T40.reqtests geom/sql/Tests/T41.reqtests geom/sql/Tests/T42.reqtests geom/sql/Tests/T43.reqtests geom/sql/Tests/T43.stable.err geom/sql/Tests/T43.stable.out geom/sql/Tests/T44.reqtests geom/sql/Tests/T45.reqtests geom/sql/Tests/T46.reqtests geom/sql/Tests/T47.reqtests geom/sql/Tests/T48.reqtests geom/sql/Tests/T49.reqtests geom/sql/Tests/T49.stable.err geom/sql/Tests/T49.stable.out geom/sql/Tests/T5.reqtests geom/sql/Tests/T50.reqtests geom/sql/Tests/T51.reqtests geom/sql/Tests/T52.reqtests geom/sql/Tests/T6.reqtests geom/sql/Tests/T7.reqtests geom/sql/Tests/T7.stable.err geom/sql/Tests/T7.stable.out geom/sql/Tests/T8.reqtests geom/sql/Tests/T9.reqtests geom/sql/Tests/T9.stable.err geom/sql/Tests/T9.stable.out geom/sql/Tests/binary.sql geom/sql/Tests/binary.stable.err geom/sql/Tests/binary.stable.out geom/sql/Tests/conformance_drop.sql geom/sql/Tests/conformance_drop.stable.err geom/sql/Tests/conformance_drop.stable.out geom/sql/Tests/conformance_load.sql geom/sql/Tests/conformance_load.stable.err geom/sql/Tests/conformance_load.stable.out geom/sql/Tests/normalized.sql geom/sql/Tests/normalized.stable.err geom/sql/Tests/normalized.stable.out Removed Files: geom/sql/Tests/ogc_conformance.sql geom/sql/Tests/ogc_conformance.stable.err geom/sql/Tests/ogc_conformance.stable.out geom/sql/Tests/ogc_destroy.sql geom/sql/Tests/ogc_destroy.stable.err geom/sql/Tests/ogc_destroy.stable.out
MonetDB: newstorage - merge with default
Changeset: 09dcf82952ce for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=09dcf82952ce Added Files: geom/sql/Tests/T1.reqtests geom/sql/Tests/T1.stable.err geom/sql/Tests/T1.stable.out geom/sql/Tests/T10.reqtests geom/sql/Tests/T11.reqtests geom/sql/Tests/T12.reqtests geom/sql/Tests/T13.reqtests geom/sql/Tests/T13.stable.err geom/sql/Tests/T13.stable.out geom/sql/Tests/T14.reqtests geom/sql/Tests/T14.stable.err geom/sql/Tests/T14.stable.out geom/sql/Tests/T15.reqtests geom/sql/Tests/T15.stable.err geom/sql/Tests/T15.stable.out geom/sql/Tests/T16.reqtests geom/sql/Tests/T17.reqtests geom/sql/Tests/T17.stable.err geom/sql/Tests/T17.stable.out geom/sql/Tests/T18.reqtests geom/sql/Tests/T18.stable.err geom/sql/Tests/T18.stable.out geom/sql/Tests/T19.reqtests geom/sql/Tests/T19.stable.err geom/sql/Tests/T19.stable.out geom/sql/Tests/T2.reqtests geom/sql/Tests/T2.stable.err geom/sql/Tests/T2.stable.out geom/sql/Tests/T20.reqtests geom/sql/Tests/T20.stable.err geom/sql/Tests/T20.stable.out geom/sql/Tests/T21.reqtests geom/sql/Tests/T22.reqtests geom/sql/Tests/T22.stable.err geom/sql/Tests/T22.stable.out geom/sql/Tests/T23.reqtests geom/sql/Tests/T23.stable.err geom/sql/Tests/T23.stable.out geom/sql/Tests/T24.reqtests geom/sql/Tests/T24.stable.err geom/sql/Tests/T24.stable.out geom/sql/Tests/T25.reqtests geom/sql/Tests/T25.stable.err geom/sql/Tests/T25.stable.out geom/sql/Tests/T26.reqtests geom/sql/Tests/T27.reqtests geom/sql/Tests/T27.stable.err geom/sql/Tests/T27.stable.out geom/sql/Tests/T28.reqtests geom/sql/Tests/T28.stable.err geom/sql/Tests/T28.stable.out geom/sql/Tests/T29.reqtests geom/sql/Tests/T29.stable.err geom/sql/Tests/T29.stable.out geom/sql/Tests/T3.reqtests geom/sql/Tests/T3.stable.err geom/sql/Tests/T3.stable.out geom/sql/Tests/T30.reqtests geom/sql/Tests/T30.stable.err geom/sql/Tests/T30.stable.out geom/sql/Tests/T31.reqtests geom/sql/Tests/T31.stable.err geom/sql/Tests/T31.stable.out geom/sql/Tests/T32.reqtests geom/sql/Tests/T32.stable.err geom/sql/Tests/T32.stable.out geom/sql/Tests/T33.reqtests geom/sql/Tests/T34.reqtests geom/sql/Tests/T34.stable.err geom/sql/Tests/T34.stable.out geom/sql/Tests/T35.reqtests geom/sql/Tests/T35.stable.err geom/sql/Tests/T35.stable.out geom/sql/Tests/T36.reqtests geom/sql/Tests/T36.sql geom/sql/Tests/T36.stable.err geom/sql/Tests/T36.stable.out geom/sql/Tests/T37.reqtests geom/sql/Tests/T38.reqtests geom/sql/Tests/T39.reqtests geom/sql/Tests/T4.reqtests geom/sql/Tests/T4.stable.err geom/sql/Tests/T4.stable.out geom/sql/Tests/T40.reqtests geom/sql/Tests/T41.reqtests geom/sql/Tests/T42.reqtests geom/sql/Tests/T43.reqtests geom/sql/Tests/T43.stable.err geom/sql/Tests/T43.stable.out geom/sql/Tests/T44.reqtests geom/sql/Tests/T45.reqtests geom/sql/Tests/T46.reqtests geom/sql/Tests/T47.reqtests geom/sql/Tests/T48.reqtests geom/sql/Tests/T49.reqtests geom/sql/Tests/T49.stable.err geom/sql/Tests/T49.stable.out geom/sql/Tests/T5.reqtests geom/sql/Tests/T50.reqtests geom/sql/Tests/T51.reqtests geom/sql/Tests/T52.reqtests geom/sql/Tests/T6.reqtests geom/sql/Tests/T7.reqtests geom/sql/Tests/T7.stable.err geom/sql/Tests/T7.stable.out geom/sql/Tests/T8.reqtests geom/sql/Tests/T9.reqtests geom/sql/Tests/T9.stable.err geom/sql/Tests/T9.stable.out geom/sql/Tests/binary.sql geom/sql/Tests/binary.stable.err geom/sql/Tests/binary.stable.out geom/sql/Tests/conformance_drop.sql geom/sql/Tests/conformance_drop.stable.err geom/sql/Tests/conformance_drop.stable.out geom/sql/Tests/conformance_load.sql geom/sql/Tests/conformance_load.stable.err geom/sql/Tests/conformance_load.stable.out geom/sql/Tests/normalized.sql geom/sql/Tests/normalized.stable.err geom/sql/Tests/normalized.stable.out Removed Files: geom/sql/Tests/ogc_conformance.sql geom/sql/Tests/ogc_conformance.stable.err geom/sql/Tests/ogc_conformance.stable.out geom/sql/Tests/ogc_destroy.sql geom/sql/Tests/ogc_destroy.stable.err geom/sql/Tests/ogc_destroy.stable.out