====================================================================== Endeca MDEX Engine GENERAL (6.1.4) * Release Date: December 2010 * The release notes may have been updated since the release date. Access the Product Downloads section of the Endeca Developer Network (https://eden.endeca.com) for the most recent version of the release notes. BUG FIXES (6.1.4) Dgraph (6.1.4) * Enhancement (CHG17882): EQL now supports filtering by absence of assigment. * Bug Fix (BUG17180, BUG17891): Multiselect OR dimensions are no longer improperly contracted. * Bug Fix (BUG17981): Configuration updates that enter the system during a long-running partial update will no longer block regular queries from running until the config update begins executing. * Bug Fix (BUG17202): A Dgraph failure occured when an invalid field name was used in an analytics query. This has been fixed. * Enhancement (CHG13337): Added a new flag --diacritic-folding that folds accents in both the Latin1 and Latin1 extended-A character sets. For usage, see the MDEX Engine Basic Development Guide. * Bug Fix (Bug18360): Fixed a bug where searching with partial or any matches would overwrite if the match was found via thesaurus which would cause relrank interp to rank records incorrectly. * Bug Fix (BUG18315): Record filter performance has been improved for the case where the same filter is rarely re-used. * Bug Fix (BUG11452): Snippetting would sometimes truncate non-searchable characters at the start or end of a text field, even if the snippet settings should have caused those characters to be included. This is no longer the case. * Bug Fix (BUG12692): The Exact relrank module sometimes did not exactly match exact terms when the --latin1 flag was on. This has been fixed. * Bug Fix (BUG18117): The DYM count that is returned in the search report is the number of records that would be returned if that DYM is searched. The DYMs now use the same Cross Field Match Mode that the main query has. * Bug Fix (BUG18040): Performance of record search against large datasets with record prefiltering in play was improved, particularly phrase searches and multi-term thesaurus expansions with spell correction enabled. * Enhancement (CHG12910, CHG18016): The base records returned for an aggregated record query may now be sorted using the new "As=" URL parameter, or the new ENEQuery.setAggrERecActiveSortKeys() method, or via a element in the element in the MAX API. * Enhancement (CHG17248): The aggressiveness by which the Dgraph merges generation files is now configurable. The average throughput of some applications with a high update rate can be improved by more aggressive merging. * Bug Fix (BUG17626): The accuracy of sub-phrase ranking for matchpartial when cross-field matching is enabled has been improved. * Bug Fix (BUG17801): Duplicated record specifications across Forge rollover data files were not detected. They now are properly flagged and dropped. * Bug Fix (BUG18021): The 'failed_updates' directory now defaults to being a subdirectory of the update directory, rather than the current directory. The default may be overridden by the new '--failedupdatedir ' command line option. Additionally, the update directory, the dataset and the failed update directory may be located on different filesystems if desired. * Bug Fix (BUG18266): The performance of Navigation queries on Nehalem EX processors has been substantially improved. * Bug Fix (BUG18358): An empty update file for an op=update could cause poor query performance after the update. Also, the name of the empty file could not be re-used for a future update. The fix for this bug addresses the query performance issue, and enables the name of an empty file to be re-used in the future. * Bug Fix (BUG17814): The Dgraph now respects DVAL_STATIC_RANK attribute set on individual dimensions as documented rather than just ignoring it. * Bug Fix (BUG18298): The Dgraph (and Dgidx) will shut down more quickly when many properties and dimensions are in the index. * Bug Fix (BUG17815, BUG17565, BUG17521,BUG17227): The MDEX cache now scales better when a high --threads value is used. * Change Request (CHG14787): Eneperf prints an error message when the logfile is missing. * Bug Fix (BUG18285): Boolean proximity (NEAR and ONEAR) performance for high-recall terms was especially slow. This has been improved. * Bug Fix (BUG13735): The --latin1 flag now works on stemming dictionaries. * Bug Fix (BUG12072, BUG12534, BUG12635, BUG13445, BUG15152, BUG15883): Various stemming problems were addressed. For English, the plurals of "blouse", "polo" and "melanoma" were corrected. For French, "cuissard" and "cussarde" are now separate word forms, as are "dock" and "docker". For Italian, the word forms of "cappella" and "cappello" were corrected. * Bug Fix (BUG13842): The --latin1 flag now correctly removes accent characters from stop words and prevents accented stop words from being returned in query results. * Change Request (CHG18020): != operator is now available in EQL. * Bug Fix (BUG15516): admin?op=logroll would not work in some cases. This is now fixed. * Bug Fix (BUG17851): Phrase search involving a very large number of frequently occuring words could take consider query time and be the basis of a denial of service (DOS) attack. Phrases are now by default truncated to 10 words. The '--phrase_max' Dgraph flag can be used to change the default. * Bug Fix (BUG17880): Use of Dn parameter with multi-select dimensions could cause the dimension search to not return some valid results. Additionally, this fix now makes it possible for Dn to take more than 1 dval from a multi-select dimension. * Bug Fix (BUG18142): Static relevance ranking modules that are far down in the ranking strategy could cause poor performance when they are evaluating a small number of records. * Change Request (CHG16122): VMWare vSphere 4 is now supported with RHEL5 or Windows 2008 as the guest OS. * Change Request (CHG17753): The Dgraph no longer returns the Accept-Ranges HTTP header for all requests. * Change Request (CHG13338): The First relevance ranking module is now supported for wildcard queries. * Bug Fix (BUG17834): When using Exact relrank as part of the default relrank strategy and when performing multiple searches in a single query on that search interface, the Dgraph performed poorly. This has been fixed. * Bug Fix (BUG17952): When using the XQuery interface, wordinterp results would be concatenated together. They are now comma separated. * Bug Fix (BUG17533): The current multi-assign status of a property is now kept up-to-date in the face of updates. This fixes potential incorrectness in the following algorithms: analytics 'GROUP BY', analytics 'WHERE', and refinement least common ancestor. * Bug Fix (BUG17658): There were a number of improvements made to refinement generation and refinement counts. As a result, the --implicit_exact and --implicit_sample Dgraph flags have been deprecated. * Bug Fix (BUG17775): The NUM_REFINEMENTS_IN_GROUP attribute of the STATS element in refinement_config.xml will no longer be sometimes missing its output (DGraph.Refinements dim val property) in the presence of caching. * Bug Fix (BUG17630): Text Search was incorrectly being affected by the EQL filter. After the fix, the results of Text Search (spell corrections, match mode fall-through decisions, etc) will depend only on the Record Filter. This only affects text search queries performed as part of an EQL query. * Bug Fix (BUG17523): Snippeting now correctly includes the last word of a field when the second-to-last word is a text search match. * Bug Fix (BUG16296): An analytics expression with a WHERE clause no longer fails when referencing an unknown key. * Change Request (CHG16813): Spell correction can be enabled or disabled per query. The Dgraph and Agraph now process the "spell+nospell" query option, which disables spelling for that query. This can be used for record (Ntx) or dimension (Dx) search, on the Dgraph or Agraph. * Bug Fix (BUG17246, BUG15434, BUG15433): On Windows, the Dgraph tried to use port 666, and would fail to start if another process (including another Dgraph) was using it. The DGraph has been modified to request a free port from the operating system, instead. * Bug Fix (BUG17067): Queries containing only wildcards would previously consume very large amounts of CPU and/or memory. Wildcard-only queries now are caught in advance and gracefully aborted. * Bug Fix (BUG16172): A query that had more stop words among its terms than the MIN_WORDS_INCLUDED for its interface returned no results. Such queries now return the correct number of results. * Bug Fix (BUG15746): The interaction between dynamic ranking and collapsible dimensions was not satisfactory for some implementations. Historically, when dynamically ranking a dimension with collapsible nodes, we would only consider leaf nodes for refinement. A command line flag, --dynrank_consider_collapsed, has been added to allow the user to choose an alternate behavior where all intermediate nodes are also considered for refinement. * Bug Fix (BUG15763): Collapsible dimensions can be navigable. (collapsible and navigable are now orthogonal features and do not affect each other) * Bug Fix (BUG16540): Update requests (admin/op=update) are now queued, so that multiple such requests will not consume query threads. * Bug Fix (BUG17582): Fixed an infrequent failure when relevance ranking query results from queries with multiple record searches. * Bug Fix (BUG17448): In rare cases due to sampling algorithms, the count reported for a refinement assigned to almost all records in a query returning a large number of records could be reported as the number of records returned for the query. These counts are now accurate. * Bug Fix (BUG18019): In some cases, partial updates that modify a dimension caused the Dgraph to fail. This has been fixed. Agraph (6.1.4) * Bug Fix (BUG18362): When using text search and analytics, if a child Dgraph matches records only with non-cross-field matching, and a child Dgraph matched records with cross-field matching, then the agraph would crash. Additionally, when using matchpartialmax with text search and analytics, if not all Dgraphs match the same number of terms then the Agraph would crash. * Bug Fix (BUG18451): The agraph's COUNTDISTINCT analytics function had a performance problem when merging results from the child Dgraphs. * Bug Fix (BUG17489): Record sorting on multi-assigned dimensions or string properties did not sort by the lowest-valued assignment. This has been fixed. * Bug Fix (BUG17730): If refinements are requested for multiple dimensions with refinement counts and dynamic ranking enabled and the child dgraphs conflict in one dimension but return the same refinements for another dimension, the agraph could fail to return a More link for the latter dimension even if there are more refinements available for that dimension. Such queries will now correctly return a More link if necessary. Dgidx (6.1.4) * Bug Fix (BUG17724 ): Dgidx now prints out a warning, including record spec, if a record takes longer than a specified number of seconds to process (defaults to 60 seconds, controllable via the --record-read-warning-thresh flag). * Bug Fix (BUG18298): Dgidx could take a significant amount of time to shutdown if the number of properties and dimensions in the system became very large (hundreds of thousands). This no longer occurs. * Bug Fix (BUG18279): When indexing a very large dataset, Dgidx performs some number of longer intermediate merges before the final one. The performance of these merges has been improved. * Change (CHG18135): Dgidx would provide a superfluous error message related to non-positional indexing. This error message has been eliminated as this feature was removed in a previous release. * Bug Fix (BUG17243): Dgidx blew up the index size when wildcard indexing large words. The fix adds a guard to the number of characters in a word, above which that word will not be wildcard indexed. * Bug Fix (BUG15763): Made it so collapsible dimensions can still be navigable (collapsible and navigable are now orthogonal features and do not affect each other) INSTALLER (6.1.4) * Bug Fix (BUG17158): The installation program now checks if $target/endeca exists, if so, it checks for write permissions. If it does not exist then it checks for write permissions on $target. DOCUMENTATION (6.1.4) * Bug Fix (BUG17186): Documentation on property types (Time, DateTime and Duration) has been moved from the Analytics Guide and added to a new chapter "Property Types" in the Basic Developer's Guide. Additional information on property types and their format has been added to this chapter. KNOWN ISSUES (6.1.4) * Known Issue (BUG18080): When a system-wide installation of the MDEX Engine is performed by an admin user on Windows after a single-user installation has been installed by a non-admin user, uninstalling the single-user installation leaves behind an empty directory structure that prevents reinstallation to that same directory. You must manually remove these empty directories if you wish to reinstall to the same location. ====================================================================== MDEX Engine (6.1.3 Revision A) * Support for Windows Server 2008. The MDEX Engine has added support for Windows Server 2008. For best performance on Windows Server 2008, Endeca recommends the Enterprise Edition R2. If you experience poor performance running Windows Server 2008, see the Performance Tuning Guide 6.1.3 (Revision A) for more information. Note: Running the MDEX Engine 6.1.3 on Windows 2008 requires the following packages that also support Windows 2008: - Platform Services 6.1.0 - Developer Studio 6.1.0 - Endeca Workbench (all editions) 2.1 - Content Acquisition System (CAS) 2.2. See the installation guides for all packages for more details on Windows 2008 support in each version. Documentation (6.1.3 Revision A): * The following MDEX Engine guides have been updated with Revision A to address support for Windows 2008 R2: - MDEX Engine Installation Guide 6.1.3 Revision A - MDEX Engine Migration Guide 6.1.3 Revision A - MDEX Engine Performance Tuning Guide 6.1.3 Revision A ============================================================================= Endeca MDEX Engine GENERAL (6.1.3) * Release Date: December 2009 * The release notes may have been updated since the release date. Access the Product Downloads section of the Endeca Developer Network (https://eden.endeca.com) for the most recent version of the release notes. MIGRATION (6.1.3) * Refer to the Endeca MDEX Engine Migration Guide for information specific to MDEX Engine migration. BEHAVIOR CHANGE (6.1.3) * The recommended TCP TIME_WAIT timeout for Solaris has been changed to 30000 milliseconds. The tcp_time_wait_tune.sh script will change the setting to the new value. BUG FIXES (6.1.3) Dgidx (6.1.3) * Bug Fix (BUG16537): Dgidx took a very long time to index datasets with very wide records (~30K properties per record). This fix improves the performance on such datasets considerably. Dgraph (6.1.3) * Change Request: (CHG15337) The IAP platform support for VMware ESX 3.5 has been reinstated. The MDEX Engine is supported on VMware ESX 3.5 for the following guest operating system platforms: - Windows 2003 - RHEL 5 The recommended MDEX Engine server configuration is as follows: - Configure four VCPUs on a virtual machine - Allocate a single Dgraph per virtual machine - Specify four threads for each Dgraph Note that the number of threads should not exceed the number of VCPUs. Endeca does not recommend running more than one MDEX Engine per virtual machine. * Bug Fix (BUG16323): Fixed the calculation of queue status in the Dgraph request log. * Change Request (CHG15162): The /admin?op=update now supports the updatefile= parameter to explicitly specify a single update file to apply. This file must exist in the updates directory when this command is invoked. * Bug Fix (BUG16384): Sorting on a multi-assign string dimension or dimension value could return incorrect results. This has been fixed. * Change Request (CHG16115): The WFreq relevance ranking strategy now preserves more precision from the weight computation. * Bug Fix (BUG16612): The Dgraph did not list 'update', 'updatehistory' and 'logroll' as admin operations in response to an 'admin?op=help' query. It does so now. * Bug Fix (BUG16342): --latin1 did not work correctly for dimension search. This was broken in 6.1.2 and has now been fixed. * Bug Fix (BUG16454): XQuery Update: Updating expressions no longer exhibit undetermined behavior with try/catch. Any updates added to the pending update list in a try block in which an exception occurs are now ignored. * Bug Fix (BUG16724): The relevance ranking strategy was ignored in the case of dimension and compound dimension search queries sent using the MDEX API through XQuery (MAX). This has been fixed. * Bug Fix (BUG15447): The language to be used for search can now be specified on a per-query basis in MAX, with the mdex:navigation-query, mdex:dimension-search-query, and mdex:compound-dimension-search-query functions. * Bug Fix (BUG16496): Fixed a bug wherein no Aspell spelling suggestion file was produced when dynamic wordforms were used with MIN_WORD_OCCURRENCES=1, resulting in no Aspell spelling suggestions being available. * Bug Fix (BUG15847): When reading a numeric property from an update file, an empty string was parsed as a garbage value. Parsing empty strings will now fail, rejecting the associated record. * Change Request (CHG11307): The Dgraph now accepts Presentation API queries using POST. The .NET Presentation API will send queries whose bodies are longer than the .NET 2.0 URL length limit as POST requests, thus allowing these types of queries to execute. Queries sent as POST requests are still logged as if they were sent as GET requests. * Bug Fix (BUG16342): When cross field relevance ranking was enabled, --latin1 did not work correctly for record search. It does now. * Bug Fix (BUG16260): Fixed a bug wherein queued updates would report incorrect Response Duration and Processing Time statistics to the Dgraph log. * Bug fix (BUG15504): Refinements are now dynamically ranked according to aggregate record counts when --stat-abins Dgraph flag is used. * Bug Fix (BUG16224): Aggregated record counts were incorrect for multiselect-or dimensions, when the navigation state included more than one selection from another multiselect-or dimension. * Bug Fix (BUG16150): Fixed a bug that caused the Dgraph to crash on geocode range filter queries, when rendering of a result record's geocode field is turned off. * Bug Fix (BUG16272): Certain types of updates that succeeded with a warning in 6.1.1 appeared to fail with an error in 6.1.2. These updates actually succeeded, but the Dgraph printed an error, and the update file was moved to the "failed_updates" directory. The conditions were: adding a duplicate dimension value or property value to a record, and deleting a dimension value assignment that doesn't exist on a record. Fixed the Dgraph to exhibit the same behavior as in 6.1.1. * Bug Fix (BUG16239): Fixed a bug that caused the Dgraph to crash when a BusinessRulesFilter was malformed. * Bug Fix (BUG16295): Snippets were being cut off before reaching specified size limit when the search word is near the start or the end of the document. This has been fixed by using a sliding window of the specified snippet size to extract snippets, rather than always fixing the search word in the middle of the snippet. * Bug Fix (BUG16605): Snippets were being cut off before reaching the specified size limit when the search word was near the start or the end of the matching text. This problem is similar to BUG16295 but affected a different snippeting strategy. * Bug Fix (BUG16321): Substantially improved the latency and memory usage of analytics queries that group into a large number of buckets (i.e. grouping by a property or dimension with a large number of unique values). An example of this would be an Analytics query on 4 million records, grouped by a dimension with 2 million values. * Bug Fix (BUG16518, BUG16695): Maxfield and field relevance ranking modules previously would not rank cross-field results correctly if a term required thesaurus expansion and a non cross-field match was available. * Bug Fix (BUG16688): Fixed a race condition that could be triggered by multikey relevance rankers. * Bug Fix (BUG16755): Fixed record ordering when multiple search interfaces are specified in a query, and the relevance ranking score results in a tie. * Bug Fix (BUG16783): Fixed a crash in EQL which happened when a path had an intermediate dimension value with no children. * Bug Fix (BUG16830): Fixed a bug in derived attributes for strings. The MIN and MAX functions did not give desired results for strings. * Bug Fix (BUG16849): Previously in XQuery Web services, use of an axis step had the potential to cause a crash of the Dgraph. This was most likely triggered with use of a descendant-or-self() axis step. This issue has been fixed. * Bug Fix (BUG16845): Fixed a bug in Boolean search with both keyrestrict and proximity operators in which the proximity operators did not respect the keyrestricts. * Bug Fix (BUG17050): Supplement sections of a response were broken so that snippeting did not display in record lists. This fix allows snippets to display in record lists in supplements from business rules. Eneperf (6.1.3) * Bug Fix (BUG16674): Eneperf can now handle request logs with a large number of entries. Documentation (6.1.3) * Bug Fix (BUG16975): In previous versions of the MDEX Engine Basic Developer's Guide, the behavior of the key restrict operator in queries that contain Boolean search was described incorrectly. The documentation stated that both properties in Boolean search had to be included in a search interface to be considered. The documentation has been updated. The correct description is below. If you have two properties, for example, Actor and Director, regardless of whether or not they are included in any search groups together, you can issue a query which involves a Boolean expression consisting of both the Actor and Director properties (for example, "Search for records where the director was DeNiro and the actor does not include Pacino"). Users can successfully conduct a search using the following query which will execute the desired result: Actor: Deniro AND NOT Director: Pacino This is useful because it allows you to search for properties that are outside of the search interface configuration. In addition, this means that you can create and maintain fewer search interfaces. * Bug Fix (BUG16230): In previous versions of the Endeca Analytics Guide, the Analytics BNF erroneously stated that numeric literals supported exponential notation and trailing indicators for floats and doubles. Neither of these is supported. The documentation has been corrected. * Bug Fix (BUG16551): In previous versions of the Endeca Performance Tuning Guide, the contents of the Queue Status column of the MDEX Engine request log was described incorrectly. In particular, the documentation indicated that this column displays the number of query threads that are idle, such as when the value of Q is a negative number, for example -2. Starting with the version 6.1.2, this is no longer true. The documentation has been updated. The correct description is below. The Queue Status column displays the number of threads busy when the request was received. This number is calculated when the request was received, thus this request is not included in this number. In previous releases, this column reported the number of threads busy (when Q was a positive number), or the number of query threads that are idle (when Q was a negative number). Starting with the MDEX Engine version 6.1.2, this column does not report the number of query threads that are idle because there is no longer a one-to-one relationship between threads and queries. Specifically, when you use the --threads flag to specify the number of threads to the MDEX Engine, the number you specify determines the total number of threads available to the MDEX Engine, which includes query processing threads and other threads that support query processing. As an implication, there is a greater chance that a non-saturated Dgraph could experience minor queuing, even in the case when the number of query requests in the queue is less than the number of threads specified. ====================================================================== Endeca MDEX Engine GENERAL (6.1.2) * Release Date: June 2009 (Rev C) * This release is not compatible with data indexed using previous releases. * The release notes may have been updated since the release date. Access the Product Downloads section of the Endeca Developer Network (https://eden.endeca.com) for the most recent version of the release notes. MIGRATION (6.1.2) * Refer to the Endeca MDEX Engine Migration Guide for information specific to MDEX Engine migration. RESTORED FEATURE (6.1.2) * Version 6.1.2 restores support of clustering queries (part of the Relationship Discovery module). BUG FIXES (6.1.2) Agraph (6.1.2) * Bug Fix (BUG15742): Fixed a bug where some Analytics queries that had statements depending on other statements were returning incorrect results. * Bug Fix (BUG15913): Fixed a bug that caused the Agraph not to return refinements when exposing a dimension value below the navigation state and requerying for accurate refinement counts. * Bug Fix (BUG14931): Fixed an issue where clustering results would sometimes be inadvertently omitted from the Agraph response. Dgidx (6.1.2) * Bug Fix (BUG14974): Multiple record specifier properties are not allowed. Dgidx will now fail if more than one record specifier property is indicated in the record_spec config file. * Change Request (CHG15096): Dgidx now emits a more helpful error message if it finds no valid records in its input. * Bug Fix (BUG15791): "TextSearchQueryEngine" entries no longer display quadratic behavior relative to number of searchable fields. Dgraph (6.1.2) * Bug Fix (BUG15172): Dimension search with invalid dimension value provided for Dimension Search scope erroneously matches results. This has been fixed. * Bug Fix (BUG15769): Certain types of analytics applications saw a performance regression between 5.1.4 and 6.1.1. This has been resolved. * Bug Fix (BUG15711): Fixed a bug that caused the Dgraph to return extra records for some edge-case wildcard queries. * Bug Fix (BUG15183): The Dgraph now respects the -A flag that disables admin?op=exit and admin?op=restart. * Bug Fix (BUG15753): In some circumstances the Dgraph could use the wrong rollup key in calculating DGraph.AggrBins. The Dgraph will now use the specified rollup key. * Bug Fix (BUG15747): The Dgraph could crash in cases where a client aborted a connection early. This no longer occurs. * Bug Fix (BUG14041): Fixed a bug that would cause the Dgraph to terminate during an update if it could not write the update to disk. Now, the update will fail and return an error, but the Dgraph will not terminate. * Bug Fix (BUG15903): Fixed a bug that caused the Dgraph not to return DGraph.AggrBins refinement information when using "More..." on refinements. * Bug Fix (BUG15875): The MDEX Engine now respects the '--latin1' flag for dimension search queries. * Bug Fix (BUG15007): The MDEX Engine would crash with no error message when --persistdir specified a directory that was not writable or did not exist. An error message is now produced. * Bug Fix (BUG15795): "TextSearchQueryEngine" entries no longer display quadratic behavior relative to number of searchable fields when verbose logging is enabled. * Bug Fix (BUG15071): The Dgraph would crash if a rule trigger referenced a nonexistent dimension value. We now print an error and skip the trigger. * Bug Fix (BUG15796): The MDEX Web service now gives a more informative error message when it receives a GET request instead of the POST request it expects. * Bug Fix (BUG15182): Refinement generation and dynamic refinement ranking could be very slow in applications with many dimension values. Starting with version 6.1.2, the MDEX Engine has been improved to calculate these refinements faster. * Bug Fix (BUG15438): MAX now works with back-compat enabled for the Dgraph. * Bug Fix (BUG15369): User profiles are now supported in MAX. * Bug Fix (BUG15657): MAX results no longer return "More..." refinements. The "HasMore" attribute of the "Refinements" element still accurately represents whether there are more refinements than shown. * Bug Fix (BUG15653): The MDEX Engine returned a 404 when multiple 0-valued dimension values were in the navigation state (that is, "N=0+0"). This has been corrected. Extra 0-valued dimension values are now ignored. * Bug Fix (BUG15161): The Dgraph now returns helpful error messages in many cases where it used to return a generic "Error processing the query" error. * Bug Fix (BUG15144): The MDEX Engine now responds to HTTP HEAD requests. * Bug Fix (BUG15346): In XQuery, elements and attributes passed type matching when they should not have. This could cause unexpected behavior when using a typeswitch or treat as expression with an element test or attribute test. Such cases now correctly fail to match. For example, the following expression previously succeeded but will now fail: "9.0e0 treat as element(*, xs:double)". Even though the element contains a representation of a double value, the element (like all elements in the absence of validation) has type xs:untyped, not xs:double. * Bug Fix (BUG15757): In Analytics, COALESCE of an aggregation could return the wrong result. This has been fixed. * Bug Fix (BUG15187): Fixed a bug in dimension search that caused unassigned dimension values to be returned when they should have been filtered out. * Bug Fix (BUG14668): In XQuery decimal arithmetic, some operations would produce incorrect results. This has been fixed. * Bug Fix (BUG14689): When using fn:last() for indexed access to XQuery sequences a type error may have erroneously been raised. This has been fixed. * Bug Fix (BUG15070): In some cases, some Web services queries would not be logged to the verbose log when running in verbose mode. Now, all queries are reported to the verbose log with their path and, in the case of a Web services query, the POST body logged when running with the verbose flag (-v). * Bug Fix (BUG15198): In a few corner cases, wildcard text search could return false positives or false negatives. * Bug Fix (BUG15186): When the Dgraph has an Agraph in front of it, the Agraph's port number always showed up as 8888 in the Dgraph's request log. * Bug Fix (BUG14838): Ascending and Descending order record sorting using a precomputed sort now returns records with ties in the same order. * Bug Fix (BUG15018): Fixed thread safety of admin?op=audit requests. Multiple requests of this type were potentially unsafe and could cause a crash or incorrect results. Now these requests can be executed simultaneously. * Bug Fix (BUG14454): XQuery schema validation errors now include stack traces. * Bug Fix (BUG15218): Stack traces now include the path of source files. * Bug Fix (BUG15383): Sorts of records with no value in one or more of the sort fields returned varying results over time, especially when using precomputed and descending order sorts. Such sorts are now consistent. * Bug Fix (BUG15661): The Web service request http://hostname:port/ws/ with a trailing slash does not return a "404 Not Found" error and lists available services instead. * Bug Fix (BUG13727): Improved the quality of messages that are printed in verbose mode with regard to memory usage. * Bug Fix (BUG15756): Fixed a crash in Analytics when a key used in a having clause had the same name as a real Dgraph dimension or property that was also multi-assigned. * Change Request (CHG15016): Successful loading of each Web service module is now always logged (even without the verbose option). * Bug Fix (BUG15278): A more useful error message is given when a module fails to compile because of a failure to find or compile a library module. * Bug Fix (BUG15015): Errors in static processing of library and main modules are now included in the response to an admin?op=reload-services request in addition to being logged. * Bug fix (BUG15828): When using both the dynamic word forms and snippeting features and a thread setting greater than 1, the Dgraph could crash. This is now fixed. Note that dynamic word forms information is calculated at baseline indexing time only and is not updated during partial updates. * Bug fix (BUG15907): Cached Analytics data can cause occasional crashes in CategoryForestRef. This bug was introduced in 6.1.0. * Bug fix (BUG14945): Record filter performance for very wide filter expressions is improved. * Bug fix (BUG14686): The number of occurences of a property or dimension value in a record that can be indexed for search is now much larger, except in unusual cases when a dimension value has a very large number of synonyms. * Bug fix (BUG15917): Disk usage could be higher than intended when using Analytics and updates, because cached Analytics results could prevent old generation files from being deleted after an update. * Bug Fix (BUG15983): MAX BusinessRulesPreviewTime and RangeFilters queries can now be used together. * Bug Fix (BUG15987, BUG15981): Fixed a problem where performance of espell spelling correction could be poor when prefixes of search terms were high- frequency components of other record search index terms. * Bug fix (BUG15865): If an update takes place with dimension adds under an Agraph, and then the updated dimension is aggregated, the Dgraph may have crashed. Now it is safe to update dimensions and aggregate over them under an Agraph. Eneperf (6.1.2) * Bug Fix (BUG15066): Fixed an issue where eneperf would send duplicate Content-Length and Host headers to the Dgraph when processing Web service request logs in the three column format. Now eneperf strips Content-Length and Host headers from the headers column in the specified request log and provides its own self-generated Content-Length and host headers. Installer (6.1.2) * Bug Fix (BUG15025): Fixed a bug where the MDEX installer went into an infinite loop in silent mode. This happened when one input anything other than Y/N for the license agreement. Documentation (6.1.2) * Bug Fix (BUG15427): Fixed an error in the MDEX Migration Guide topic "Upgrading from 6.0 to 6.1." The topic erroneously referred to the ENDECA_MDEX_HOME environment variable, but should have instead have referred to the ENDECA_MDEX_ROOT environment variable. ====================================================================== Endeca MDEX Engine GENERAL (6.1.1) * Release Date: March 2009 * The release notes may have been updated since the release date. Access the Product Downloads section of the Endeca Developer Network (https://eden.endeca.com) for the most recent version of the release notes. NO MDEX SUPPORT FOR 32-BIT PROCESSORS * 32-bit versions of any operating systems are not supported by the MDEX Engine in any environment. Starting with the McKinley release of the MDEX Engine (6.x), only 64-bit based hardware and operating systems platforms are supported. Beyond upgrading to 64-bit platforms, no change to the deployment methodology or existing technical artifacts (ITL pipelines, application code, etc) should be required related to this topic. The list of currently supported platforms can be found in the MDEX Installation Guide. Any references to 32-bit platforms for software contained within the MDEX installer should be ignored. DISABLED FEATURE (6.1.1) * Version 6.1 currently does not support clustering queries (part of the Relationship Discovery module). Contact your Endeca representative for more information about plans and time lines for support for clustering in future 6.1 releases. BUG FIXES (6.1.1) Agraph * Bug Fix (BUG15236): Fixed an issue where the Agraph crashed during evaluation of analytics queries using group by on a dimension. * Bug Fix (BUG15020): Fixed an issue where spell correction conflict resolutions were being dropped upon requerying. Dgraph * Bug fix (BUG15347): Fixed a bug that caused the --net-timeout and --backlog-timeout values to be interpreted in milliseconds instead of seconds. * Bug Fix (BUG15130): Improved the performance of dimension search queries that use relevance ranking. * Bug Fix (BUG15291): In most situations, "leaf" precedence rules would not fire correctly. They now fire as expected. * Bug Fix (BUG15205): Previously, when updates were applied to an MDEX Engine with compound dimension search disabled, needless work was performed as part of updates processing. Updates no longer perform this work when compound dimension search is disabled. * Bug Fix (BUG15166): Fixed a bug that resulted in incorrect sorting when an explicit sort shared a prefix with a precomputed multi-key default sort. * Bug Fix (BUG15125): Fixed a bug in verbose mode (-v) that caused a crash on Windows when EQL filters contained '%' characters. * Bug Fix (BUG15020): Fixed an issue where an encoded "+" in an attribute option would be decoded and treated as a separator, causing the string after the encoded "+" to get dropped. * Bug Fix (BUG15138): Fixed an issue where refinements may not have been properly generated. * Bug Fix (BUG15092) Reduced update time when working with data sets with a large number of dimension values. * Bug Fix (BUG15129): Reduced query latency for queries using multi-key sorts where the individual keys were each defined as a separate precomputed sort. Agidx * Bug Fix (BUG15087): Fixed excessive CPU usage in Agidx when working with data sets with more than 1M total dimension values. * Bug Fix (BUG15179): Fixed performance regression in Agidx introduced in 6.0.1. Documentation The Java and .NET API documentation for the ERecSearch class ERecSearch constructor erroneously identified the delimiter for a list of opts as the plus sign (+). The correct delimiter for a list of opts is the space character ( ). ====================================================================== Endeca MDEX Engine GENERAL (6.1.0) * Release Date: January 2009 * This release is not compatible with data indexed using previous releases. * The release notes may have been updated since the release date. Access the Product Downloads section of the Endeca Developer Network (https://eden.endeca.com) for the most recent version of the release notes. MIGRATION (6.1.0) * Refer to the Endeca MDEX Engine Migration Guide for information specific to MDEX Engine migration. BUG FIXES (6.1.0) Agraph (6.1.0) * Bug Fix (BUG12632): Fix a crash when using wordinterp on child Dgraphs and searchpartialmax in a query. * Bug Fix (BUG14137): Agraph "More..." links now match the behavior of Dgraph "More..." links in the cases of multi-or models and when the requested expansion differs from the current navigation selection. * Bug Fix (BUG14726): The Agraph would in some cases send bad dimension search queries to the Dgraph, which would cause the Dgraph to crash during spell correction. Fixed the agraph to not send bad queries, and fixed the dgraph to handle bad queries more gracefully. Dgraph (6.1.0) * Change Request (CHG08278): Clients that write or read slowly will no longer occupy worker threads or spike the CPU utilization of the Dgraph. * Change Request (CHG14018): In release 6.0.0 EA, verbose request messages in the Dgraph error log did not include the thread ID of the thread handling the request, for web services requests. This has been fixed. * Bug Fix (BUG14209): Previously the stats page omitted web services requests when measuring the total number of requests and throughput. This has been fixed. * Bug Fix (BUG14110): If the Dgraph was started up on data indexed on a platform of different endianness or bitness, it would assume the data was corrupted and delete it. We have fixed this so that it will log an error instead of deleting the data. * Bug Fix (BUG14949): (XQuery) fn:boolean() failed to typecheck with an xs:anyURI argument. fn:boolean() now accepts xs:anyURI arguments. * Bug Fix (BUG13602): In previous releases, running admin?op=update could crash the MDEX Engine if it was started without the --updatedir flag. The MDEX Engine will no longer crash. * Change Request (CHG13310): If a single double quote character was passed into the MDEX Engine in a text search, the MDEX Engine would treat all sequent terms as part of a phrase search. For example, 11" paper dog would treat "paper dog" as a phrase search. When a lone double quote character is included in a text search, the MDEX Engine will no longer treat it as part of a phrase search. * Bug Fix (BUG14470): (XQuery) During startup, if an XQuery main module is placed in the XQuery library path, or if a library module is placed in the XQuery main module path, an error suggesting that the user move the file to the appropriate path is now provided. * Bug Fix (BUG14462): The --latin1 flag was not properly enabling snippeting for accented characters. This has been fixed, and all characters are now returning the proper snippets. * Bug Fix (BUG14115): In 6.0.1, the undocumented URL format /xq/service-name was equivalent to the documented format /ws/service-name, for invoking an XQuery web service. Support for the /xq format has been removed. * Bug Fix (BUG14826): admin?op=updatehistory did not show all update files which had been applied. This query showed only update files which had been applied since the last MDEX restart. This has been fixed. * Bug Fix (BUG12629): The relevance ranking interp module did not distinguish between full and partial matches in previous releases. It does now. * Bug Fix (BUG14512): (XQuery) User-defined functions in library modules were evaluated in the calling main module's static context. In particular, the main module's boundary-space mode, default collation, base URI, construction mode, default order for empty sequences, and copy-namespaces mode were used. Note that this only affected evaluation; static processing was done correctly. This problem has been fixed. * Bug Fix (BUG14434): (XQuery) An internal error was raised if a value of type xs:QName was constructed using fn:QName with the first argument being the empty string or the empty sequence. This problem has been fixed. * Bug Fix (BUG14922): In 6.0, admin?op=stats could crash the MDEX Engine when Web services were enabled. This problem has been fixed. * Bug Fix (BUG14923): In 6.0, admin?op=statsreset could crash the MDEX Engine when Web services were enabled. This problem has been fixed. * Bug Fix (BUG14795): A superfluous error message "Attempted to flush a buffer that was already flushed" occurred each time a bulk export query was submitted. This error message has been eliminated. * Change Request (CHG12739): The primary dimension no longer has special treatment in Endeca software. * Change Request (CHG03871): The primary dimension is not needed during updates (See CHG12739). * Bug Fix (BUG14048): Dimensions set as primary and multiselect OR now act as if only multiselect OR has been set (See CHG12739). * Bug Fix (BUG12301): The primary dimension will no longer be returned as a refinement during content spotlighting evaluation. * Bug Fix (BUG14814): MDEX will no longer crash when doing range filtering on alpha types that are enabled for record filtering. * Bug Fix (BUG14411): (XQuery) The MDEX Engine Statistics page now counts all queries, whether or not they raise an error, under the statistic "XQuery: Total Time in XQuery Engine". * Bug Fix (BUG14979): (XQuery) The XQuery specification allows multiple library modules to specify the same module URI, which has the effect of combining them into a single, logical library module that contains the combined declarations of the separate physical modules. In 6.0, if a module specifies multiple location hints for a module import statement, the declarations from each of the physical modules corresponding to these location hints are imported, but conflicts between these declarations are not correctly detected or resolved. This problem has been temporarily resolved by making it an error to specify multiple location hints for a module import statement. * Bug Fix (BUG12376): The Dgraph formerly didn't recognize the ID attribute of the MERCH_RULE_GROUP element. The Dgraph now handles the attribute. * Bug Fix (BUG03186): Log rolling (due to log size or admin operation) was not thread safe, resulting in corrupted responses. This has been fixed. * Bug Fix (BUG03638): Content spotlighting now honors render_config settings. * Bug Fix (BUG11289): The admin operation admin?op=updatehistory no longer crashes the MDEX Engine if no --updatedir has been specified. * Bug Fix (BUG13602): The admin operation admin?op=update no longer crashes the MDEX Engine if no --updatedir has been specified. * Bug Fix (BUG13778): Invalid property names in business rule zone definition no longer cause a crash on startup. * Bug Fix (BUG14409): When using the Dgraph in Web services mode, URL paths that contained URL-encoded spaces would get written to the Dgraph log with the spaces decoded, which caused the log format to be inconsistent. This has been fixed. * Bug Fix (BUG14494): The return type of fn:compare was implemented as xs:integer rather than xs:integer?, which could cause unexpected behavior if either argument is empty. The return type has been corrected. * Bug Fix (BUG13310): A mismatched double-quote character would previously trigger a phrase search that would terminate at the end of the query. The new behavior is that any lone double-quote character or trailing odd-numbered double-quote character will be replaced by a single space before being tokenized. This will not affect escaped double-quote characters. * Bug Fix (BUG13900): Specifying ENABLE_AUTO_SUGGEST and ENABLE_DID_YOU_MEAN in the recsearch_config.xml is not supported, but will not result in a Dgraph crash. * Bug Fix (BUG14593): (XQuery) A computed attribute constructor with a dynamic node name with no prefix would be expanded and placed into the default element namespace if one was defined when it actually should have been placed in no namespace. * Bug Fix (BUG14581): (XQuery) fn:ceiling and fn:floor now produce correct results when passed decimal values. * Bug Fix (BUG14646 and BUG14647): (XQuery) Comparison and casting operations on Xs::ANY_URI values were previously not implemented. Comparison and casting are now supported with Xs::ANY_URI values. * Bug Fix (BUG14413): (XQuery) The external function http:get-fragment-id() has been removed. * Bug Fix (BUG272813): Interp relevance ranking would previously neglect to rank records containing all of the terms above records with only some of the terms from a text search when using match mode any. This behavior is now fixed. * Bug Fix (BUG14493): (XQuery) Some built-in functions that take the context item as an implicit argument (such as fn:root and fn:lang) did not check that the context item is defined and of the correct type. They now correctly report an error if the context item is not defined or of the wrong type. * Bug Fix (BUG14721): Update deletes now succeed in the presence of DVal synonyms. * Bug Fix (BUG14715): (XQuery) Axis steps using a wildcard name test selected all nodes along the given axis. Now such steps only match the named nodes (elements or attributes, as appropriate). * Bug Fix (BUG14711): (XQuery) An error was raised during static analysis if the target type of a castable expression had an occurrence indicator. Such expressions now pass static analysis. * Bug Fix (BUG14714): (XQuery) Error XPST0017 was raised if a predicate consisted of a constructor function (e.g. xs:integer()). Such expressions now pass static analysis. * Bug Fix (BUG14671 and BUG14672): (XQuery) The order by clause returned erroneous results for some types of queries, such as descending ordering and multiple orderspecs. Also, empty sequence and NaN ordering were not respected. Order by now correctly orders the results. * Bug Fix (BUG14832): (XQuery) A double representing not-a-number did not serialize properly (printed as garbage characters). It now serializes as "NaN". * Bug Fix (BUG14833): (XQuery) Doubles representing positive and negative infinity serialized as very large positive and negative doubles. They now serialize as "INF" and "-INF" respectively. * Bug Fix (BUG14453, BUG14352): (XQuery) Span information in error messages and stack traces now includes module file names. * Change Request (CHG14448): (XQuery) Stack traces in error messages now span multiple lines to improve readability. * Bug Fix (BUG14793 and BUG14794): Sorts/RelevanceRanking and IncludedRecordAttributes of MAX Navigation Queries are now handled. * Bug fix (BUG14836): Wildcard dimension searches with tokens smaller than MAX_NGRAM_LENGTH sometimes showed a large performance regression relative to 5.1.4. This regression has been fixed. * Bug Fix (BUG14500): (XQuery) The constructor for xs:QName and types derived from xs:Notation now properly accept a string literal as an argument. Similarly, cast and castable to these types now work. * Bug Fix (BUG12829): When the Dgraph is run as "dgraph", rather than from a complete path such as "/path/to/dgraph", then sending admin?op=restart will no longer crash the Dgraph. * Bug Fix (BUG14575): Navigation GLB/Top Down and Navigation GLB/Bottom Up stats were not getting reset on a call to /admin?op=statsreset. They are now getting reset. * Bug Fix (BUG14748): Cleaned up confusing stats related to text indexing. - Removed the "Install" subsections because they were always zero. - Removed the "Dictionary wildcard" section because it was always zero (this time is actually accounted for as part of the "Wildcard" values). - Renamed "Fulltext" to "Record", and "Index" to "Text indexing". * Bug Fix (BUG14669): (XQuery) Issues around serialization of floating point values were fixed. - Special values like INF, -INF and NaN are now handled correctly for floats - Values 0 and -0 are handled correctly for both floats and doubles - Fixed some issues around printing floating point values in exponent form. * Bug Fix (BUG15131): A record filter containing both a dimension and property no longer causes a crash. * Bug Fix (BUG15049): Fixed calculation of queue status in DGraph request log. * Bug Fix (BUG15059): The SelectedDimensionValueIds element can be empty in the input to mdex:navigation-query(). * Bug Fix (BUG14970): Performance statistics on the stats page are now updated correctly. Dgidx (6.1.0) * Bug Fix (BUG14645): Dgidx no longer accepted adding duplicate synonyms during partial updates in 6.0.1. This regression has been fixed so the same string can be used as a synonym for multiple dimension values. The documentation for partial updates has been also updated. * Bug Fix (BUG14655): A possible crash at Dgidx exit when execution time was less than 10 seconds was resolved. * Bug Fix (BUG09537): Dgidx partitions can no longer generate different DVal IDs for the primary dimension. * Bug Fix (BUG13480): Dgidx no longer fails when trying to generate a primary dimension if no other dimensions have been defined. * Bug Fix (BUG11812): Dgidx formerly utilized 100% CPU without making progress after processing DVals with ID=0. Dgidx now rejects ID=0 DVals. * Bug Fix (BUG11832): Dgidx no longer crashed when asked to process a deep (> 64 levels) dimension tree. * Bug Fix (BUG14123): A superfluous error message about mismatched data has been eliminated from Dgidx. * Bug Fix (BUG12448): Dgidx could fail when a very large amount of ngrams are generated during wildcard indexing. Eneperf (6.1.0) * Bug Fix (BUG14466):eneperf now reports information when it encounters certain error conditions (such as socket connection errors) where it previously did not. * Bug Fix (BUG03500): Eneperf would core if passed a non-existent log file. Eneperf now reports the file as missing under these circumstances and exits without a core. DOCUMENTATION (6.1.0) * Bug Fix (BUG14648): The property used for retrieving refinement counts for aggregated records is DGraph.AggrBins. The documentation in the Development Guide in version 6.0 incorrectly stated the name of this property. In version 6.1.0, the topics in the Basic Development Guide about --stat-abins flag for the Dgraph have been corrected to reflect the Dgraph.AggrBins property that should be used with aggregated records. * Bug Fix (BUG14764): The MDEX Installation Guide for 6.1.0 now lists the following disk space requirements on Windows. Even if you are installing on the other drive than the system drive C, to avoid an "out of drive space" error during the installation process, you need to have 190MB of space available on system drive before installing (you may need to clear this space, if it is not available). The Windows installation process unpacks its .msi installation file and other temporary and log files to a location on the system drive, regardless of which drive you choose for the installation, and regardless of the drive indicated by the TEMP and TMP environment variables. When the installation completes, it frees the space it consumed. If the system drive does not have this much free space available, the installation fails with a "There is not enough space on the disk" error. KNOWN ISSUES (6.1.0) * Known Issue (BUG15039): When the Shttpd server times out on Windows, it does not return a status code. It should return a 408 Request Timeout. ====================================================================== Endeca MDEX Engine GENERAL (6.0.1) * Release Date: September 2008 * This release is not compatible with data indexed using previous releases. * The release notes may have been updated since the release date. Access the Product Downloads section of the Endeca Developer Network (https://eden.endeca.com) for the most recent version of the release notes. INSTALLATION (6.0.1) * Refer to the Endeca MDEX Engine Installation Guide for MDEX Engine installation information. MIGRATION (6.0.1) * Refer to the Endeca Migration Guide for information specific to MDEX Engine migration. BASIS LIBRARY VERSION CHANGE (6.0.1) * In 6.0.1, Endeca upgraded to Basis version 6.0.0. (Version 5.1.x of the Endeca IAP used version 5.3.1 of the Basis software.) BUG FIXES (6.0.1) Dgidx (6.0.1) * Bug Fix (BUG13850): Indexing performance was very slow if the disk's write-back cache was not turned. Dgraph (6.0.1) * Bug Fix (BUG12330): Merch time triggers not obeying daylight saving time. * Bug Fix (BUG13974): Why Did It Match and Exact RelRank were returning incorrect results or crashing on a record with multiple dimval assignments from the same dimension. * Bug Fix (BUG13824): On the stats page, the "peak footprint" and the memory usage per property and dimension were inaccurate, so they were removed. The "total footprint" was also removed from the HTML stats page. On the XML stats page, it was renamed to "address space". * Bug Fix (BUG14038): Fixed dgraph crash when making an aggregated navigation query which requested all constituent records (e.g. EneQuery.NavNumBulkAggERec = 2). * Feature (CHG14029): Exact RelRank second stratum expanded. Exact RelRank now uses phrase matching to determine its second-stratum matches. This will place more documents into the second stratum. The first stratum is still computed as previously. * Bug Fix (BUG14021): The Most Expensive mdex:query Queries stats section was removed. Information on total query time is reported as part of the Most Expensive Queries section on the stats page. XQuery (6.0.1) * Bug Fix (BUG13884): If XQuery output contains a character that is not allowed in well-formed XML 1.0, it raises an error (err:SERE0003) instead of serializing the character. * Bug Fix (BUG13990): An error no longer occurs when the return value of the internal function mdex:add-navigation-descriptors() is used. * Bug Fix (BUG14000): The second argument to the two-argument version of fn:distinct-values() is now typechecked. Eneperf (6.0.1) * Bug Fix (BUG14036): eneperf --quitonerror will no longer quit when it sees a processing instruction (such as RECORD: or EXEC:), or if a request URL is malformed, because these are not errors in connecting to the server. Also, when it does encounter a fatal error, it now prints out a description of the error when it exits. KNOWN ISSUES (6.0.1) ====================================================================== GENERAL (6.0.0) * Release Date: TBD * This release is not compatible with data indexed using previous releases. Agraph (6.0.0) * Bug Fix (BUG12599): Fixed a problem where agraph may return an autosuggestion which is identical to the original search term * Bug Fix (BUG12243): Fixed a problem where the agraph would sometimes return an incorrect refinement count, especially when the number of results was low. * Bug Fix (BUG12705): The agraph used to crash when keyprops=all was passed as one of the parameters in the query. This happened whenever one tried to find properties for non-existent models. This issue has been fixed. * Bug Fix (BUG13800): The agraph would sort edges incorrectly in certain cases after having requeried the dgraphs to get correct record counts. This issue has been fixed. Dgraph (6.0.0) * Bug Fix (BUG13792): Fixed several cache accounting bugs that were causing undue memory growth while using analytics. * Bug Fix (BUG12336): Fix enecerts crash while creating eneCert.p12 on Windows. * Feature: The --pcmem flag on the Dgraph has been deprecated. This flag will now be ignored. * Feature: The --esamp flag is removed from the Dgraph and should not be used. This flag was deprecated in the previous releases. * Feature: Added an Ars parameter for aggregated record queries. This parameter is to Nrs as Ar is to Nr. * Feature: Removed legacy analytics (Nl= / stat= expressions). Queries containing these arguments will return a 410 HTTP error code * Feature: Cleaned up the Dgraph stats page to more closely represent the current state of the software. Added stats from the query layer such as most expensive queries and a new XQuery server stats section. Added stats sections for all sorting methods in the hot spots analysis section, a new datalayer operations stats section and a new disk usage stats section for the on disk indices. Reorganized existing stats sections such as resource usage stats and hot spots analysis. Removed unused stats sections such as page cache and offline string stats. * Feature (CHG10933): We now allow collapsible dimension values to be selected as navigation descriptors. Previously, queries with collapsible dvals in the navigation state would cause an invalid query error to be returned to the calling application, and an error message to be logged to the dgraph --out log. * Bug Fix: Memory usage, as displayed on the stats page, is now reported more accurately on Windows. Instead of peak physical memory usage, we now report total virtual memory usage, as is done with other platforms. * Bug Fix (BUG13698, BUG13717): With SSL enabled, requests with URLs longer than 4092 were truncated. This has been fixed. * Bug Fix (BUG12354): Fixed a parsing problem with Nrs not expression and multiple children. Not expressions should now work correctly. * Bug Fix (PRB12433): In multithreaded applications, highly desirable cache results have a high probability of being inaccessible in the cache, but still taking up considerable room. This was due to a mis-handling of evictions of duplicate entries. Now fixed. * Bug Fix (BUG12481): Fixed a problem where dgraph would crash in rare circumstances related to updates. * Bug Fix (BUG12593): When a search is auto-corrected using word break analysis, the search report returned by the dgraph now indicates to the client that spelling correction was used. In other words, for purposes of this returned flag, word break is considered to be a type of spelling correction. This allows the agraph to work better when some child graphs return results using word break correction, and some return results without using it - the agraph will favor results that didn't require modification (via word breaks or spelling) in order to match records. * Bug Fix (BUG12592): Fixed a bug in which connections between an AGraph and Dgraphs that were meant to use SSL were not in some cases (dim search and /bin requests). This caused the AGraph to return in error without ever communicating with the DGraphs. The fix was to honor the useSSL flag when connecting to the DGraphs in all cases. * Bug Fix (BUG12497): Fixed the lack of control over match mode in standalone relevance ranking queries by adding a new parameter, Nrm. This is to the mode portion of Ntx as Nrr is to the relrank portion of Ntx. As a by-product, changed the API to use ERecRank rather than ERecSearch to aggregate the standalone relevance ranking parameters. Use of ERecSearch for that task is now deprecated. * Bug Fix (BUG12732): If a wildcard query was submitted where the wildcard was separated from the rest of the query only by non-searchable characters (e.g. *-abc), the dgraph would crash. This has been fixed. * Bug Fix (BUG12647, BUG12845): On 64-bit Windows, the default cache size was incorrectly set to 256MB. The default cache size is now 1024MB. * Bug Fix (BUG13671): If a dimension search query did not specify a language, the default language specified with the --lang option was ignored, causing incorrect stemming. The default language is now used in such cases. * Bug Fix (BUG13621): The wsdl files, namely query.wsdl, eval.wsdl and echo.wsdl had definition "name" defined right on top which is not NCName compliant. The names had a blank space. This space has now been removed. * Bug Fix (BUG13599): Paths of the form /xq* that are not /xq/ were not parsed correctly. This has been fixed so that now such paths are parsed correctly (and so return 404 as expected) * Bug Fix (BUG13598): Nothing was logged when some non-OK status codes were returned for webservice results. In particular, for 501:Not Implemented and 400:Bad Request. Status code and a message for all non-OK status codes for webservice results are now logged. * Bug Fix (BUG13597): Webservice results had Content-Type set to application/xml by default. In XQuery, the http:set-header external function can be used to set the Content-Type header. In particular, setting the Content-Type to text/xml will allow .NET webservice clients to work as expected. The default Content-Type is now text/xml. * Bug Fix (BUG13595): If a client sent chunked requests to the XQuery port an error status code 501 (Not Implemented) was returned and the connection was closed. This is now fixed and chunked requests are accepted and processed. Trailing headers are currently not accepted. * Bug Fix (BUG13664): Service /xq/query reported IR version as 510. This is now fixed and IR version is 600. * Bug Fix (BUG13707 and BUG13610): Premature HTTP connection close events on the xquery port caused a core dump in the beta release. Now these exceptional circumstances are handled properly. * Bug Fix (BUG13723): The XQuery external function http:get-body() returned an empty string when called from a main module invoked by a GET request or a POST request with an empty body. Now the function returns an empty sequence when no request body is present. * Bug Fix (BUG13731): Dgraph would hang on exit when using the --threads 0 option along with the new web services stack. This is no longer the case. * Bug Fix (BUG13765): Webservices URLs that contain % characters could cause crash the dgraph. This is now fixed. * Bug Fix (BUG12615): MDEX performance has improved in some cases when content spotlighting is enabled. * Bug Fix (BUG13658): High precision double values not correctly cached in Range Filters. This led to some incorrect results. This has now been fixed. * Bug Fix (BUG13696): Applied BUG13658 fix to an another Range Filter method that creates cache keys. This fixes incorrect refinement counts that were returned because of cache key sharing between different queries. * Bug Fix (BUG13917): Parsing of floating point values sometimes resulted in very slightly different internal representations for the same number in scientific notation and decimal forms. All equivalent values should now be parsed to the same internal representation. Data sets containing floating point values should be reindexed for accurate retrieval. XQuery (6.0.0) * Bug Fix (BUG13666): XQuery used to give confusing error messages when the same prefix was used to refer to two different namespaces. It now makes new prefixes to avoid this duplication, and emits a list of prefixes and the URIs they map to. * Bug Fix (BUG13634): XQuery used to have catastrophic precision problems in decimal math. Because the division of integers results in a decimal, expressions like "(4/3) * 40" would incorrectly overflow. Decimals will now correctly use at least 18 digits of precision. * Bug Fix (BUG13793): XQuery typechecking of a step with a name test from a document node was unsound, and a crash could occur if the step resulted in the empty sequence. Typechecking is now fixed. * Bug Fix (BUG13809): XQuery typechecking of the two-argument fn:min and fn:max functions was unsound, and a crash could occur if the second argument did not evaluate to a sequence starting with a string. Typechecking is now fixed. * Bug Fix (BUG13806): Prefixes in module import statements are now bound prior to processing function signatures. Control Interpreter (6.0.0) * Bug Fix: When creating a ShellTask in the Control Interpreter on Windows, two environment variables necessary for proper execution (COMSPEC and SYSTEMROOT) are now inherited from the JCD's environment unless they are specifically overridden in an environment brick. Documentation (6.0.0) * Bug Fix (BUG12462): The "Simple cross-tabulation" sample query in the Analytics Guide contained syntax errors. The example has been corrected. * Bug Fix (Bug13404 and Bug13515): The Administration Guide incorrectly stated that on 64-bit Windows, the default Dgraph cache size was set to 256MB. The default Dgraph cache size is now 1024MB for all 64-bit platforms, and 256MB for 32-bit Windows. In addition, updated information on the default memory usage for the page cache, which is 32MB for 32-bit platforms and 64MB for 64-bit platforms. The currently deprecated --pcmem Dgraph flag was used in previous releases to specify the page cache. * Bug Fix (Bug12886): The URL Query Syntax appendix of the Developer's Guide had incorrect information for the Nmrf paramter. The Nmrf (Merchandising Rule Filter) section has been revised with corrected type and description information. ======================================================================