TOLERANT Match Release 2.0

2014/12/04

Notices

  • This is the major release of Tolerant Match for Autumn 2014.
  • The german manuals were updated.
  • There is a new parameter fullBackup for the silent installation.
    The installer now checks before upgrading which files were changed, created or deleted after the last installation (using the checksums file from the last installation). If fullBackup is not set to „true“, only the created or modified files will be backuped before the upgrade.
  • If an upgrade installation is performed manually, there will be a new question concerning the backup.
    If a full backup is made, the installer will behave as in the old releases. If a partial backup is selected only those files that were created or modified after the last installation will be backuped. The installer uses the checksums file from the last installation. Additionally the installer lists all created, modified or deleted files that were changed after the last installation. After the upgrade was performed the installer lists those files again and states whether the changes were overridden or reverted during the upgrade.
  • Because of the new installer option to install an example, the silent installation file has a new boolean parameter doInstallServiceExample.
  • The Attributes logfiletracefileclusterlogfileconsoleLogLevellogfileLogLeveltracefileLogLevelclusterlogfileLogLevel are no longer supported for matchProject and matchRuntime. Logging can be configured using the logging and log tags only.
  • The undocumented attribute noRuleThrow is no longer supported for matchProfile.
  • The undocumented attribute phoneticWeight is no longer supported for matchProfileField.
  • The JDBC driver for the Microsoft SQLServer is no longer bundled with the software. If you were using the driver, please download the driver directly from Microsoft (look for „Microsoft JDBC Driver for SQL Server“) and copy it into the directory „lib/ext“.
  • If you are using the MongoDb database and the database server runs without user authentication, then you have now to omit user/password in the database configuration.
  • The hot deployment feature of the jetty Webservice has been disabled, because it is not used anyway.
  • If you use the GUIs with security restriction, then it is necessary to add the new file system rights (described below in security section) in security.xml file. Otherwise the file system dependent actions cannot be used.
  • The session timeout for all GUIs was set from 30 minutes to 120 minutes.
  • Tolerant Match is delivered with a new JRE (Version 1.7.0_71)
  • All GUIs are only supported for FireFox 3+ and Internet Explorer 9-11 in document mode 8-10.

New Product Features

Configuration- and Administration GUI

  • A new tab in runtime settings was added to configure cluster settings.
  • For the input field configuration it is now possible to configure „Length handling“(lengthErrorAction) and „Max. length“(length).
  • A new column for the product instance list and project instance list is added, which shows for a service instance the last identified state of service respectively project. Both can updated with the refresh button. The refresh button on the project instance list is new.
  • Product instances with the type SERVICE_INSTANCE (named service instance) have new features:
    • For the product instances view a new menu „Runtime“ was added, to get the current runtime state with „Get state“ or update the runtime with „Update“. This is only possible if a service instance is selected.
    • The context menu of a service instance was enhanced with the menu item „Edit runtime settings…“. This opens the runtime settings view like other product instance with the difference that the menu „File–>Save“ is not available. Instead the save action can executed by the menu „Runtime–>Save“, which saves the changes in the configuration file of the running service, but does not reconfigure the service. This can performed by the menu action „Runtime–>Update“.
    • The new menu „Project“ was added, to get the current project state with „Get state“, start and stop the project with „Start“ and „Stop“, update the project with „Update“ or create a save point with „Save index“. At the service instance project list it is also possible to create a new project with the „Add project …“-Button. A project can be delete with the project context menu item „Delete project“ and copied with „Copy project“.
    • The context menu of a service instance project is enhanced with a menu item „Edit project…“. This opens the project settings view like the project at other product instance with the difference that the menu „File–>Save“ is not available. Instead the save action can executed by the menu „Project–>Save“, which saves the changes in the configuration file of the running service, but does not reconfigure it. This can performed by the menu action „Project–>Update“.
  • A new menu item „New from file…“ is added to the file menu. A new product instance will be generated from the selected configuration file.
  • The listing and selection of files and directories at GUI was overworked. These changes have no visual effect, but now it is possible to allow only certain users a look of certain files or directories. For more information see the security section below.
  • There are some little changes on the product instance list.
    • The content of „product“ and „type“ column are now equal to the values of the add/edit product instance popUp combo boxes.
    • A new column „protocol“ is added and per default hidden.
    • The columns „port“ and „host“ are now per default hidden.
    • A new column „baseUrl“ is added.
  • The selection after a Drag & Drop operation was made more intuitively. Now, the drag node is selected after the Drag & Drop operation was done.

Client GUI

  • Input field length handling and maximum length is now interpreted by Match Client GUI. The lengthErrorAction=“ERROR“ leads to a validation error if the maximum length was exceeded. A lengthErrorAction=“CLIP“ will result in a validation warning, if the maximum length was exceeded.
  • The current service state from a project is now displayed with a icon on the project chooser. The icon is updated periodically if an arbitrary action is performed.

Batch

  • As alternative to reading input (input, reference, negative) from CSV-Files, input can now be read from database tables. Similarly, output can now be written to database tables. Please see manual for more details.
  • The default value of nrTestRecords was set from 0 to 100.
  • MATCH batch can now generate an extra output file containing information and statistics about the batch-run. This new option can be configured using the matchProject sub-element summaryFile.

Service

  • The Element serviceInputField now has a new attribute optional. If set to „Y“, the field is not longer mandatory for insert- or search requests. The default is „N“
  • There is a new service state NO_CONFIGURATION when the service is started without configuration file.
  • The command line tools „matchInspectPagingDatabase“ and „matchAdjustPagingDatabase“ now support the new option „encrPassword“ for encrypted passwords.
  • Some performance metrics of database connections are now written to the trace file. This may be controlled by the following new attributes of tag database:
    • statsMaxInterval: Maximum time in seconds between writing of metrics
    • statsMaxCount: Maximum number of events (read operations, write operations, errors, …) between writing of metrics
    • statsMaxChangePercentage: Maximum change in percent of one of the mean values (read time, write time, …) between writing of metrics

General

  • It is now possible to configure the maximum length of an output field. If the length of the output field exceeds the maximum length, the content of the field will be clipped to the configured maximum length.

Installer

  • The installer provides an option to install an example service configuration along with sample data when Match Service is installed. If installed, the example service can be started directly after installer finishes.
  • The service stop port is now mandatory under Windows.

Security

  • A new right „service.stop“ has been added to the „security.xml“. This right is needed when stopping Match service.
  • The „security.xml“ has some new rights for file system access at GUI. They are:
    • file.get: Load a file from file system
    • file.modify: Does changes on a file from file system
    • file.copy: Copies a file on file system to another location
    • file.check: Get information about a file from file system
    • dir.list: Lists files and directories from file system
    • system.get: Get information about the file system

    For the usage of the admin GUI, it is advised to create a role with all of these rights assigned. Please use the new rights to allow users to browse and select files in the admin GUI.

  • In the „security.xml“ it is now possible to have constraints for all the new file system rights, with the exception of system.get. A constraint is an sub element of element right and can have the attributes „name“ and „value“. Exclude constraints have an higher priority as include constraints. A file system right without constraints includes per default all $-path environment variables. The following constrains are now possible:
    name value
    include.file file path on file system which is allowed f.g. „C:\inputData\synonym.ini“ (the filename can contains wildcards)
    exclude.file file path on file system which is not allowed f.g. „C:\inputData\customerData.csv“ (the filename can contains wildcards)
    include.dir directory path on file system which child files and all sub directories are allowed f.g. „C:\referenceData“
    exclude.dir directory path on file system which child files and all sub directories are not allowed f.g. „C:\Users“
    exclude.dollarPaths no value needed, because all $-path environment variables, like „$TOLERANT_HOME“ or „$TLDATA“ are not allowed
    include.all no value needed, because the whole file system is allowed
  • The latest java virtual machine 1.7.0_71 is now bundled with the software.

Miscellaneous

  • There is a new experimental tool, that can be used to convert a BATCH configuration into a SERVICE configuration and vice versa. To start it, call
    matchConfigConverter.sh -configfile -projectid [-method ] -outputfile  The tool converts only the given project.

    • If the input is a BATCH configuration, then the -method option has to be used, to define which matchMethod is to be converted. For the reference file in a BATCH, a configuration for an initial load is generated. As a BATCH input does not need to provide a KEY-Field, it is assumed, that the first input field can be used as KEY.
    • If the input is a SERVICE configuration, then the BATCH will use the „REFERENCE“ method. The initial load configuration will be used as reference input in the BATCH.

Fixed Bugs

Configuration and Administration GUI

  • Bug #1894: It was possible to set the „ruleCut“ option for rules even if the „ruleCut“ was already set by his profile. Also it was possible to set the „chooseMode“ even if the „ruleCut“ was set at profile.
  • Bug #2179: Invalid default value for „Number of test records“ on advanced Match Batch project settings. Hence the default value is 100 and the field validation checks if the value is greater than 0.
  • Bug #2187: At initial load it was possible to delete the last input field which is mapped to „match.Key“.
  • Bug #2190: The automatic $-path detection was case sensitive under windows.
  • Bug #2191: Double clicking at a tree node deselected the node. If a node was deselected in the navigation tree, it was no longer clear, which view was active Now a tree node cannot be deselected anymore.
  • Bug #2199: The database password at database list was not annonymized.
  • Bug #2276: At a match service configuration it was possible to have an output field which has a different name as his internal mapped child field. That is not allowed and will cause that the service do not start correctly.
  • Bug #2295: A error message occurred after a click of „Use column definition from file“ or „File preview“ button in case of $TLDATA is used for the „File path“ at initial load settings.
  • Bug #2297: A database password input was not automatically encrypted after a save to the configuration file.
  • Bug #2300: Internal error during initial load when many duplicate keys exist and partitioning is used.
  • Bug #2303: The selection of the protocol „HTTPS“ when creating or editing a product instance from type service instance was jumped back to the default „HTTP“ entry.
  • Bug #2311: At output field mapping tree, it was possible to drop non output tree nodes to the root level.
  • Bug #2312: The German table column caption for prefix length was wrong at match field settings table.
  • Bug #2315: The popUp window to create a synonym file or normalize file if the given file path not exist, was occurred two times. First on release the file path field and second if another navigation tree node selected. Now the popUp occurs one times after a file path change.
  • Bug #2319: The „Maximum number of partitions“ at a Batch configuration shows always the value 100 after save another value.
  • Bug #2381: A Batch configuration with a „innerPartitioning“ element removes all attributes after saving by GUI.
  • Bug #2422: Product instances can have equal names.
  • Bug #2425: It is not possible to confirm a selected directory on a file selector dialog for file selection.
  • Bug #2430: The file preview links after a batch run, shows an error popUp window behind the front batch window in failure case.
  • Bug #2449: The absolute file path at the file link tooltip after a batch run was wrong in case he contains a $-path.
  • Bug #2463: Really relative paths (such does not start with root or a $ sign) were not resolved. Now they will be resolved correctly through the working directory or the environment variables, depending on batch or service instances. The exact resolving rules are defined on this table.
  • Bug #2464: $-paths for a batch configuration were resolved with the working directory. This is wrong. Now they will resolved correctly through the values of her environment variable.

Client GUI

  • Bug #1534: Response was not displayed on JSON view when a service failure occurred.
  • Bug #1836: The default result help message for a getByKey-request results was corrected.
  • Bug #1917: After search field validation check failed, old results were not removed from all result tabs.
  • Bug #2190: Full tolerant home path in installation path under settings lead to an error. Furthermore the automatic $-path detection do not work case insensitive under windows.
  • Bug #2197: Reduced unnecessary trace file entries.

Batch

  • Bug #2232: A batch process with a SELF method followed by a REFERENCE method generates too few results for REFERENCE method when attribute „keepTemporaryFiles“ is set to „Y“ because the keys contained in the key files generated in the previous batch run are ignored while generating the results of the following batch run.
  • Bug #2306: Configuration check registered an error for an „outputFieldmapItem“ instead of an „inputFieldmapItem“ if the „internalFieldName“ attribute is set to a value starts with „internal.“.
  • Bug #2441: If a synonym replacement was defined before the first synonym section, no error was detected.

Service

  • Bug #2300: Internal error during initial load when many duplicate keys exist and partitioning is used.
  • Bug #2309: Reconfigure Runtime and Reconfigure Service did not work if the service is a cluster member.
  • Bug #2441: If a synonym replacement was defined before the first synonym section, no error was detected.
  • Bug #2467: using the matchProject attribute fullSavepointSchedule was not prohibited if no paging db is configured. This led to exception when a full savepoint was to be written.
  • Bug #2466: saveSchedule and fullSavepointSchedule did not work. Scheduled saves were not performed.

General

  • Bug #2202: Crash in Call-Trace with Plain fields and long strings.
  • Bug #2234: Match does not run on Linux system with GLIBC 2.5.
  • Bug #2239: Not all changes arriving during a save operation are written to Match index.
  • Bug #2240: Condition handling wrong in case of DONT_CARE and conditionInvert=“Y“.
  • Bug #2250: Error in implementation of filtering in PLAIN index for modes WILDCARD or PREFIX.
  • Bug #2251: Crash during start of Match service if index is stored in files and some files are missing.
  • Bug #2253: Wildcard Delete is not treated correctly when reading backlog.
  • Bug #2285: Service does not start after failed save operation.
  • Bug #2286: Entries are written with wrong version to paging database after failed save operation.
  • Bug #2287: Possible inconsistent index after database error during save operation.
  • Bug #2313: Wrong key vector split leads to corrupt internal data in fuzzy index.
  • Bug #2321: Errors in implementation of fuzzy index for more than 14 identical character pairs in one string.
  • Bug #2334: Work around for memory leak in Oracle database driver.
  • Bug #2387: Wildcard Delete may fail if the key has no wildcard in it.
  • Bug #2423: Memory leak for change operations during same millisecond.

Installer

  • Bug #2244: The temporary directory was not created during product installation.

Known Bugs

  • no known bugs

Requirements

  • Please refer to the manual

Installation/De-Installation

  • Please refer to the manual

Release 1.31, 2014/06/06

Notices

  • The database format of the PLAIN index fields had to be changed in order to fix bug#2112, see below. However, backward compatibility is ensured, so no additional initial load is required.

New Product Features

Configuration and Administration GUI

  • A product instance from type SERVICE_INSTANCE now has a new menu item „Start client…“, which starts the Match Client GUI. Works only if Match Client GUI is installed as not standalone.
  • Now the match service output configuration can be configured. It is very strict, because an internal field name must match to its mapped output field.
  • Runtime settings at Match GUI are reorganized for a better overview. Now there is a navigation tree at left side like the navigation tree at project settings. Clicking at each tree node opens a form or table at right side.
  • The database request logging can now configured in the GUI for a service configuration. First define a database under databases and then it is possible to configure request logging.
  • There is a new tab for initial load, where you can now configure the initial load test settings.

Client GUI

  • A search field for the new „serviceInputField“ type „L“ is generated as combo box. The combo box is filled with the allowed values from „pattern“. Moreover if the „defaultValue“ attribute is set for an „serviceInputField“ the corresponding search field is initialized with them. „type“,“pattern“,“defaultValue“ and the combo box value messages can be overridden with external client configuration.
  • A new menu „Query history“ is available. It stores all input values of already performed queries. The queries can replayed by a click at the stored history menu entry. History entries are only stored in the session and thus will be lost when terminating the GUI. The menu item messages and some parameters like history size can be configured in the external client configuration.

Service

  • The command line tool „matchServiceTool“ has a new command „CHECK_CONSISTENCY“ which may be used to check the consistency of a Match index (available only if service is stopped).
  • A new feature was implemented for TOLERANT Match Service, which allows the user to send multiple requests at once. These „bulk-requests“ are executed in an asynchronous manner. After the processing is done, the results can be requested. For the full functional range of the new feature, a whitepaper is available on demand.

General

  • The „type“ attribute of „csvInputField“ and „serviceInputField“ has a new value „L“ (list). If the list type is set, then only field values allowed which defined at a comma separated list in „pattern“ attribute. Both attributes „type“ and „pattern“ can now configured at Match GUI.
  • A new method for configuring logging has been implemented. Logging can be configured in runtime or for projects with „logging“ and „log“ tags. The „logging“ tag consolidates different loggers (LOG, TRACE, CLUSTER, CONSOLE) as „log“ tags and defines settings that apply to all of them. Individual logger can overwrite those settings and makes few other settings available. The old method for configuring logging can still be used but will be deprecated in future. The rolling event renames the log files by adding incrementing numbers to their names to create backups. The backup file with the highest number in its name is the most recent one.

Manual

  • This release contains an updated version of the manuals.

Security

  • The latest java virtual machine 1.7.0_55 is now bundled with the software.

Miscellaneous

  • The path variables TOLERANT_HOME, TLLOGS, etc. can now be locally overwritten before starting a service.

Fixed Bugs

Configuration and Administration GUI

  • Bug #1982: „Use column definition from file“-Button for input did nothing if the input file was too big.
  • Bug #2005: When a configuration was loaded which had set a synonym list or transliteration identifier for an input/output field, the entry was not selected when editing these input/output field.
  • Bug #2022: If a valid Match Batch configuration with self inspection is loaded and then saved again, then the self inspection output file delivers wrong follow up values. More precisely all input values are shown from head data set instead of follow up data.
  • Bug #2032: A NullPointerException was traced at console when running a synonym test or initial load command from the GUI.
  • Bug #2039: Wrong multiple validation messages while trying to add a product instance. For example by an empty installation path. After a validation message occurred on product instance popUp window, the selection at comboBox has no more effects. Both are fixed now.
  • Bug #2040: Selection of a valid „Installation path“ (menu File-Settings) failed with file not found error.
  • Bug #2058: By adding an entry to a Match GUI table, the close window action adds the entry after apply click with validation error.
  • Bug #2069: The „title“ attribute at „matchProject“ is mandatory, but not essential. The check has been removed.
  • Bug #2086: Double clicking at the breadcrumb navigation caused opening of two identical dialogs. After that the breadcrumb is broken.
  • Bug #2092: After double clicking „Edit synonym file…“ or „Edit normalizer file …“-Button the GUI had display problems.
  • Bug #2097: GUI is now working on Internet Explorer 11.
  • Bug #2107: The GUI deleted „testmode“ and „nrTestRecords“ on a Match Service configuration after save.
  • Bug #2117: „Queue size“ under tab „Threading“ at Match GUI runtime settings only allowed a maximum value of 1000. Now the maximum allowed value is 10000.
  • Bug #2118: Save dialog also appeared if no changes to Match GUI had been made.
  • Bug #2139: Logging table in logging settings had wrong column widths per default.
  • Bug #2147: Saving changes of a project led to a modification dialog, which implied that the configuration was changed by another person, although nobody had changed the configuration.
  • Bug #2149: GUI validation of „maxNumberPartitions“ for service configuration had a wrong maximum value. Now it has the same maximum value as the Match Service validation.
  • Bug #2165: The Match output tree item for a Service configuration had a context menu with the one entry „Remove output“. Using the menu item did nothing. This context menu was deleted, because a Match output is necessary for a service configuration and cannot be deleted.
  • Bug #2171: „Add project …“-Button for a Batch configuration did not work.
  • Bug #2178: Removed „Keep temporary files“ field from advanced settings for a service, because it is only relevant for a batch project.
  • Bug #2192: The condition type in the rule fields table showed wrong values.
  • Bug #2194: Rule changes of a copied profile were not saved.
  • Bug #2196: Empty rule condition value for some rule condition types carries crashes the GUI.

Client GUI

  • Bug #303: After clicking the menu item „Help–>Restart Application“ which is started as stand alone, the menu item „File–>Exit“ disappeared.
  • Bug #1913: The „file->settings“ are not synchronized with displayed browser URL.
  • Bug #2047: In case of an invalid service configuration the Match Client GUI showed an endless spinner instead of an error popup window.
  • Bug #2067: After changing the project, the GUI still showed the old results.
  • Bug #2080: Match Client GUI did not always output special characters (like German umlauts) correctly at result table.
  • Bug #2097: GUI is now working on Internet Explorer 11.
  • Bug #2127: The Message catalog was extended to describe different Http-Status codes.

Batch

  • Bug #2103: A wrong synchronization led to slow performance for the self match method. Due to the synchronization not all assigned threads were used.

Service

  • Bug #2043: Sporadic wrong result or failure in Match service.
  • Bug #2045: Crash of Match service during search operation.
  • Bug #2051: Operation DB_PERF of tool inspectPagingDatabase is broken.
  • Bug #2054: Operation DB_PERF of tool inspectPagingDatabase cannot be used together with Match service in same database.
  • Bug #2088: When using STOREONLY fields and disabling some fields in a service query, an internal error might occur.
  • Bug #2089: STOREONLY fields were not returned when using a getbykey-Query in the service.
  • Bug #2156: Search requests of same project but different profile could interfere if arriving nearly the same time. Usually one of the requests had wrong result then.

General

  • Bug #2048: Match does not run on older Linux systems because of glibc incompatibility.
  • Bug #2083: Internal caching in fuzzy index (singlestring and multistring fields) did not take into account compare mode, wrong results were possible.
  • Bug #2087: Calculation of required memory incorrect in plain index for same rare cases.
  • Bug #2112: Inconsistent PLAIN index caused by overflow of internal counter.

Known Bugs

Service

  • Bug #1831: Match-Cluster does not work together with original data.
  • Bug #1832: Match-Cluster does not work with store-only fields.

Requirements

  • Please refer to the manual

Installation/De-Installation

  • Please refer to the manual

Release 1.30, 28.02.2014

Announcements

  • If the path has been changed, and the service is being started via the Windows-Services, then the service needs to be unregistered and then re-registered! (winServiceUnregister.bat then winServiceRegister.bat).
  • You can now change the language of „Match GUI“ and „Match Service Client“ via the web interface. Either from the new menu element „View“ -> „Language“ or by selecting the ISO-Country code from the top-right section of the web interface. The supported languages are still German(DE) and English(EN).
  • Processing the relative paths in the configuration is now changed, there are now additional environment variables that can be used in the configuration:
    Environment Variable Description
    $TOLERANT_HOME Installation path.
    $TLLOGS Path for the log files (Service)
    $TLCONFIG Path for the configuration files (Service)
    $TLDATA Path for the reference data/databases (Service)
    $TLSTATIC Path for the static contents of the web service (Service)
    $TLTMP Path for temporary files (Service)
    $JETTY_PID File name of the „jetty.pid“ file (only under Linux/Solaris and Service)

    Therefore please check all paths in your all configurations. The following table shows, which configuration might be affected:

    Tag Attribute Relative path in Service or Initialload Relative path in Batch
    matchRuntime logfile $TLLOGS The folder where Batch is being started from
    matchRuntime tracefile $TLLOGS The folder where Batch is being started from
    matchRuntime clusterlogfile $TLLOGS The folder where Batch is being started from
    matchRuntime tempDir $TLTMP The folder where Batch is being started from
    database filepath $TLDATA The folder where Batch is being started from
    matchProject logfile $TLLOGS The folder where Batch is being started from
    matchProject tracefile $TLLOGS The folder where Batch is being started from
    translitRuleFile filepath $TLCONFIG The folder where Batch is being started from
    normalizeFile filepath $TLCONFIG The folder where Batch is being started from
    synonymFile filepath $TLCONFIG The folder where Batch is being started from
    csvFileInput filepath $TOLERANT_HOME The folder where Batch is being started from
    csvFileOutput filepath $TOLERANT_HOME The folder where Batch is being started from
  • The icons has been unified and slightly adjusted in both Match GUI and Match Service Client.
  • Default file paths at Match GUI now contains $-variables.
  • New feature for Multistring Fields: Condition for match can be expressed in terms of subsets by new attribute „tokenSubset“ of tag „matchProfileField“. The new attribute replaces the now deprecated attribute „allTokensRequired“. Possible values are
    • NONE: Feature not active.
    • QUERY: All tokens of query must be present in possible matches (same as deprecated allTokensRequired=“Y“).
    • INDEX: All tokens of match from index must be present in query string.
    • QUERY_OR_TOKEN: All tokens of query must be present in possible matches OR all tokens of match from index must be present in query string.
    • ALL: Tokens of query string and possible matches must be the same.
  • New feature: automatic deletion of old full save points (house keeping).
    • The new attribute „nrFullSavepoints“ of tag „matchProject“ controls the number of full save points that remain after creation of a new full save point. If value is 1, then only the new full save point persists (value 0 means ’no house keeping‘).
    • A second new attribute „protectedFullSavepoints“ allows configuration of a comma separated list of full save point versions that shall be protected from house keeping (empty per default).

Fixed Bugs

  • Bug #2017: Synonyms in InitialLoad were not used
  • Bug #1995: Error on Sparc platform in release 1.29.16041.
  • Bug #1985: Repeated Delete-Operation with identical key leads to Timeout.
  • Bug #1956: If the current configuration parameter of an installation has been discarded („Continue? – No“), then the path of the Browser-Executable can not be set.
  • Bug #1957: If the Parameter doRegisterService in the Silent-Installation file set to „true“, but the installation is not under Windows, then Batch-Script will even though try be executed. It will extra check, if it will be installed on Windows.
  • Bug #1946: Save-Operation causes Timeout of PUT-Request.
  • Bug #1966: If the Match GUI Standalone is started, then clicking on the menu „File“ -> „Exit“ will not ask to save the changes.
  • Bug #1964: In Match GUI the project can not be opened after changing the Project-Id.
  • Bug #1977: By using „Use column definition from file“ -> „Add fields“ in the Input-file Tab an error will come up, if one column in the input file has no name. These fields will not be added, or added incompletely. And the PopUp-Window will not be closed. This issue has been now fixed.
  • Bug #1976: „Use column definition from file“ and „File preview“-Buttons were not disabled after a validation error on file paths occurred at Match GUI input definition.
  • Bug #1927: The Match GUI replaces file paths with the special $-variables (f.e. $TOLERANT_HOME) at click to the „…“-Button and at save through absolute file path. This behavior is dismantled the use of $-Variable at Match GUI. Now the GUI try to replace the file path after choosing at file selector dialog by a $-variable. These from GUI are also saved to the configuration file.
  • Bug #281: If an existing product instance configuration path is change by Match GUI, then a dialog with tow possible actions is popped out. First action „Keep“ abort the action and the second „Copy“ copies the old file to the new location, even though a file at new position already exist. Now the dialog has two changes. The „Keep“-Button is renamed to „Cancel“. and a new Button „Change path only“ is added. This new Button changes the path and create a new file from template if no file at new position exist. If already exist a file at new location, then yet another dialog is popped out and ask if GUI should override existing one with template or keep it.

Known Bugs

  • Bug #1831: Match-Cluster does not work together with original data.
  • Bug #1832: Match-Cluster does not work with store-only fields.

System Requirements

  • Please refer to the manual.

Installation/De-Installation

  • Please refer to the manual.

Release 1.29, 16.01.2014

Ankündigungen

  • Achtung: In diesem Release wurde das Format zur Speicherung der Match-Service-Daten in einer Datenbank geändert! Aus diesem Grund muss vor Installation des Release der Inhalt der Service-Datenbank exportiert und nach dem Update wieder importiert werden. Hierfür kann das Kommandozeilenwerkzeug ‚matchServiceTool‘ verwendet werden.
  • Der Bedingungstyp eines Regelfeldes in der Match GUI und ob die Bedingung invertiert ist wurde in einer Auswahlbox zusammengefasst.
  • Für die Match Batch GUI wurde die Anzeige von Ausgabedateien bei der Definition einer Ausgabe ermöglicht.
  • Für die Match Batch GUI wurde eine Anzeigemöglichkeit der Eingabe- und der Ausgabedateien im Batch-Fester hinzugefügt. So ist es möglich direkt nach einem Batchlauf die Ergebnisdateien zu betrachten.
  • Das Datenbankpasswort wird nun verschlüsselt in der Konfiguration gespeichert. Wird das „#“-Symbol am Anfang des Passwords eingetippt, so wird der Rest des Passworts als Klartext betrachtet. Wenn dannach die Konfiguration neugeschrieben wird, wird das Passwort durch das verschlüsselte Passwort ersetzt werden. Das verschlüsselte Passwort kann durch ein Security Script (security) generiet werden, wobei die Eingabeoption „encrypt“ verwendet werden sollte.
  • Die Icons für die Eingabe- und Ausgabefeldzuweisungen in der Match GUI wurden ausgetauscht, um ein besseres Verständnis der Zuweisungen zu schaffen. Die Icons sind jetzt größer und haben klarere Formen. Eine Legende der Icons befindet sich im Hilfeteil unter Andwendertipps. Für den Match-Batch kann an den neuen Icons nun auch abgelesen werden, ob sie bei der Ausgabe der Kopf- oder der Folgedublette zugewiesen sind.
  • Für die Ausgabefeldzuweisung in der Match GUI wurde eine Vorschaufunktion hinzugefügt. In tabellarischer Form wird nun das Schema der Ausgabezeile(n) angezeigt. Beim Klick auf einen Eintrag im Zuweisungsbaum wird zudem in der Hilfe das Schema des einzelnen Ausgabefeldes dargestellt.
  • Die Match-Service Attribute „saveSchedule“ und „fullSavepointSchedule“ können nun auch über die Benutzeroberfläche konfiguriert werden.
  • Die Match-Service Attribute „backLog“ und „autoIntervalSave“ wurden aus der Benutzeroberfläche entfernt, da sie veraltet sind und nicht mehr benötigt werden.
  • Für die Projekteinstellung der Match GUI gibt es folgende Änderungen:
    • „Testmodus“, „Anzahl der Testrekords“ und „Ausgabedatei überschreiben“ wurden vom Reiter „Fehlerbehandlung“ in den Reiter „Erweiterte Einstellung“ verschoben.
    • „Testmodus“, „Anzahl der Testrekords“ und „Ausgabedatei überschreiben“ sind nur noch in einer Batch-Konfiguration einstellbar.
    • Der Reiter „Protokollierung“ erscheint nur noch bei einer Batch-Konfiguration.
    • Die Bezeichnung des Reiters „Speichereinstellung“ in der Match GUI wurde in „Sicherungseinstellung“ umbenannt um Missverständisse zu vermeiden. Auch die im Reiter aufgeführten Feldbezeichner wurden entsprechend angepasst.
  • Optimierung: Schreiboperationen in die Datenbank für das Auslagern von Speicherseiten und während der Sicherung werden zusammengefasst. Das neue Attribut ‚maxBulkSize‘ des Tags ‚database‘ definiert die maximale Anzahl von Einzel-Requests, die zu einem Bulk-Request zusammengefasst werden.
  • Die Standardwerte eines Match Service Projektes für „autoLoad“ und „autoSave“ wurden auf „Y“ geändert. Der Standardwert für „keepTemporaryFiles“ wurde auf „N“ geändert.
  • Es wurden kleinere Anpassungen an den Standard Match GUI Templates gemacht.
  • In der Match GUI können nun auch Ausgabefelder im Zuweisungsbaum der Ausgabefeldzuweisung per Drag & Drop verschoben werden, um die Reihenfolge zu verändern. Dabei ändert sich die Reihenfolge der Ausgabefelder mit. Umgekehrt ändert sich entsprechend die Reihenfolge der Ausgabefelder im Zuweisungsbaum, wenn sich die Reihenfolge der Ausgabefelder in der Ausgabefeldtabelle ändert.
  • Im Match-Service gibt es eine neue Funktion, um mehrere Datensätze auf einmal zu löschen. Die Datensätze werden durch Angabe eines regulären Ausdrucks spezifiziert. Folgende neuen Attribute eines Match-Projekts wurden hierzu eingeführt:
    • ‚wildcardDelete‘: Hiermit wird Löschung über reguläre Ausdrücke aktiviert („Y“) oder deaktiviert („N“, default). Falls Löschung über reguläre Ausdrücke verwendet wird, werden bestimmte Zeichen in delete-Requests als Teil des regulären Ausdrucks interpretiert (z.B. ‚.‘ oder ‚*‘) und müssen über ‚\‘ maskiert werden, wenn sie nicht Teil des regulären Ausdrucks sind.
    • Um die Menge der Daten, die für die neue Löschfunktion durchsucht werden müssen, zu begrenzen, wurde eine Partitionierung der Schlüsselwerte (oder Match-Keys) eingeführt. Die Partitionierung erfolgt über die ersten Zeichen jedes Schlüssels, die Anzahl lässt sich über das Attribut ‚ekPartitionPrefixLength‘ festlegen (default „100“). Für kurze Antwortzeiten bei der Löschung ist es wichtig, dass der variable Anteil des regulären Ausdrucks für die Löschung erst nach ‚ekPartitionPrefixLength‘ Zeichen beginnt! Damit z.B. das Löschmuster „123456.*“ die Partitionierung nutzen kann, kann das Attribut den Wert „6“ haben. Hätte es einen größeren Wert, müssen alle Partitionen durchsucht werden.
    • Die Anzahl der Partitionen lässt sich über Attribut ‚ekPartitionCount‘ konfigurieren (default „1000“).
  • Plain-Felder benötigen nun weniger Memory.

Behobene Probleme

  • Fehler #1489: Eine Sicherung wird bei einer Match Installation auf Windows durchgeführt, wenn der Service gestoppt wird (auch wenn der Service von Windows-Services „services.msc“ gestoppt wird).
  • Fehler #1940: Gegenseitige Beeinflussung zwischen Requests (Thread-ID wird beim Zugriff auf thread-spezifischen Cache abgeschnitten).
  • Fehler #1933: Backlog wurde geladen werden, auch wenn autoLoad=“N“.
  • Fehler #1923: Projekte blockieren sich gegenseitig aufgrund globalem worker-pool.
  • Fehler #1906: Initialladung dauert viel länger als früher.
  • Fehler #1904: Partitionierung fehlerhaft bei Initialladung falls Normalisierung, Synonymersetzung oder Transliteration Inhalt von Partitionierungsfeldern ändern.
  • Fehler #1879: DELETE-Operation führt bei Match-Sevrice zu langen Laufzeiten.
  • Fehler #1865: Die Änderung der Konfigurationsdatei einer bestehenden Produkt-Instanz in der Match GUI wurde nicht durchgeführt.
  • Fehler #1856: GET-Requests laufen in timeout während einer DB-Sicherung des Index.
  • Fehler #1855: PUT-Request während einer Sicherung blockiert GET-Requests.
  • Fehler #1854: Im Match-Service-Ergebnis taucht Match.key mehrfach auf.
  • Fehler #1835: Wenn während dem eingeplanten Anlegen eines incr. save point ein Fehler auftritt, ist der Status anschließend ok und die Match Datenbank nach dem nächsten Start inkonsistent.
  • Fehler #1827: Zeitstempel von vollständigen Sicherungspunkten sind vom Start und nicht vom Ende der Sicherung.
  • Fehler #1870: Beim Drag & Drop von Listenelementen zum Zuweisungsbaum in der Match GUI wurde immer das selektierte Element gedropt und nicht das beim Drag & Drop angezeigte.
  • Fehler #1878: Die Match GUI schrieb für eine Service-Konfiguration beim Speichern immer die veralteten Konfigurationsattribute „backLog“ und „autoIntervalSave“ in die Konfigurationdatei, was bei bereits vorhandenem „saveSchedule“-Attribut Probleme bereitet. Dieser Fehler wurde behoben.
  • Fehler #1897: In der Match GUI wurde beim Leerlassen eines Dateiauswahlfeldes eine Validierungsfehlermeldung angezeigt, auch wenn es kein Pflichtfeld ist.
  • Fehler #1895: Die Operation „Überschreiben“ beim „Spalten übernehem“ Button einer Eingabedatei-Konfiguration der Match GUI, hat in manschen Fällen nicht richtig funktioniert.
  • Fehler #1884: In der Match Batch Ausgabe wurde bei manschen Zuweisungen mit Trennzeichen, das Trennzeichen fälschlicherweise angezeigt.
  • Fehler #1873: Bisher war es in einer Service Konfiguration der Match GUI möglich eine Urladung ohne „match.Key“-Eingabefeldzuweisung zu erstellen, was beim Ausführen der Urladung zu einem Fehler führte. Die Match GUI erzwingt nun immer eine „match.Key“-Eingabefeldzuweisung.
  • Fehler #1915: Das Attribut „keepTemporaryFiles“ bei einem Match Batch Projekt hatte bisher keine Auswirkung.
  • Fehler #1909: Bei einigen PopUp-Dialogen der Match GUI wurden die darauf liegenden Eingabefelder nicht validiert (z.B. Eingabefelder, Ausgabefelder, u.a.).
  • Fehler #1910: In der Match GUI konnten bisher Produkte für neue Produktinstanzen ausgewählt werden die nicht installiert oder zugänglich waren, was zu Fehlern führte. Es können jetzt nur noch verfügbare Produkte ausgewählt werden.
  • Fehler #1446: In der Match GUI gab es keinen frühzeitigen Hinweis darauf, dass keine Schreibberechtigung für die Konfigurationsdatei besteht. Es wird jetzt beim Öffnen einer Produkinstanz ein Fehler angezeigt, wenn die Konfigurationdatei keine Schreibberechtigung hat. Die Konfiguration kann aber trozdem eingesehen werden. Versucht man jedoch zu Speichern, dann wird der Speichervorgang mit einem Fehler abgebrochen.
  • Fehler #1925: Es wurden Synchronisationsprobleme zwischen dem Name eines Navigationmenupunktes und deren Namensfeld in der Match GUI behoben. Diese traten immer dann auf, wenn auf frisch aus der Konfiguration geladenen Navigationsmenupunkten der Name geändert wurde.
  • Fehler #1926: Nach der Eingabe/Ausgabe eines fehlerhaften Dateipfades im Eingabe/Ausgabedatei-Reiter der Match GUI wurden fälschlicherweise ein oder mehrere Fehlerpopups angezeigt, wenn zuvor bei einem validen Dateipfad die Dateiansicht geöffnet wurden war.
  • Fehler #1931: Es wurde ein Problem behoben, dass beim „Spalten übernehmen –> Felder hinzufügen“ einer Eingabekonfiguration der Match GUI dazu führte, dass die Dateiansicht nicht mehr angezeigt wurde.
  • Fehler #294: Umzug der Felder „Testmodus“, „Anzahl der Testrekords“ und „Ausgabedatei überschreiben“ in anderen Reiter (siehe Ankündigungen weiter oben).
  • Fehler #300: Die Match GUI speicherte in einer Batch-Konfiguration Servicespezifische Attribute und umgekehrt. Dieses Verhalten tritt jetzt nicht mehr auf.
  • Fehler #303: Wenn die Match GUI Standalone gestartet wurde, war nach zurücksetzen der Anwendung die Menüoption „Beenden“ nicht mehr verfügbar.
  • Fehler #886: Wenn in der Match GUI Synonyme hinzugefügt werden, wird der Dateipfad zur Synonymdatei automatisch auf die Template-Datei gesetzt. Wenn die Synonymdatei anschließend bearbeitet wird, wird auch die Templatedatei verändert (was dem Templatecharakter widerspricht). Jetzt wird beim Hinzufügen der Synonyme der Dateipfad auf „/config/synonyms.ini“ gesetzt. Falls die Datei nicht existiert, wird nachgefragt ob sie aus dem Template erstellt werden soll. Somit bleibt das Original-Template aus „/config/templates/synonyms.ini“ unangetastet. Das gleiche gilt für das Hinzufügen eines Normalizers.
  • Fehler #330: Wenn Ausgabedateien überschrieben werden sollen oder temporäre Datein erhalten bleiben sollen, kommt es beim Batchlauf zu einem Fehler, wenn die Dateien von einem anderen Prozess verwendet werden. Dieser Fehler wird jetzt vor der Bearbeitung abgefangen.
  • Fehler #333: Änderung der Reihenfolge in der Match GUI, änderte die Reihenfolge der Ausgabefelder im Zuweisungsbaum nicht mit (siehe Ankündigung weiter oben)

Bekannte Probleme

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.28, 09.11.2013

Ankündigungen

  • Die Startup-Logdateien werden nun nicht mehr geschrieben. Stattdessen wird auf die Console geloggt, bis die Konfiguration gelesen wurde.
  • Beim Lesen der Synonymdatei können Synonyme nun in Anführungszeichen („) gesetzt werden. Als Maskierungszeichen von “ kann die Tilde(~) verwendet werden. Durch diese Änderung ist es nun möglich das Pipe(|)-Symbol in den regulären Ausdrücken zu verwenden. Allerdings müssen bestehende Synonymdateien, in denen Anführungszeichen oder Tilde vorkommen eventuell korrigiert werden.
  • In der Match GUI wurde die Benennung der Buttons auf PopUp-Fenstern verbessert, so dass jetzt besser erkennbar ist, wann etwas gespeichert und wann etwas hinzugefügt wird. „Speichern“ bedeutet, dass etwas persistent (in Dateien) abgelegt wird. „Übernehmen“ bedeutet, dass etwas nur temporär (im Arbeitsspeicher) abgelegt wird.
  • Die Lesbarkeit der Reiterbezeichungen der Match GUI wurde durch Großkleinschreibung und Veränderungen der Schriftfarbe, erhöht.

Behobene Probleme

  • Fehler #1815, #1823, #1830: Probleme bei Cluster-Synchronisation
  • Fehler #1826: Wenn beim Verarbeiten einer Backlog-Datei ein Problem auftritt und ein Projekt nicht korrekt startet, wird beim Beenden des Service trotzdem die backlog-Datei gelöscht.
  • Fehler #1825: Treten während einer Initialladung schwerwiegende Fehler im Match Kernel auf, läuft die Ladung trotzdem weiter.
  • Fehler #1824: Leerer Match.Key bei Initial-Ladung führt bei Service-Abfragen zu Fehlern.
  • Fehler #1783: Wenn das Synonym/Normalizer-Testwerkzeug von der Match GUI aus gestartet wurde und für die Eingabedatei das Texterkennungszeichen auf ‚“‚ gestellt ist, dann wurde eine Fehlermeldung angezeigt, dass die Eingabedatei nicht gefunden werden kann. Das Synonym/Normalizer-Testwerkzeug wird jetzt auch in diesem Fall ohne Fehler gestartet.
  • Fehler #1788: Unter Oracle gab es Fehler beim Einsatz der Originaldatenbank, wenn ein bestehender Key aktualisiert wurde (SQLSyntaxException)
  • Fehler #1779: Beim Erstellen eines neuen Eingabefeldes einer Match Service Konfiguration in der Match GUI wurde die Option „Leerzeichen entfernen“ nicht vorausgewählt.
  • Fehler #1797: In den Laufzeiteinstellungen der Match GUI konnte nicht über den Breadcrumb „Produktinstanzen“ zurückgesprungen werden, sofern noch ungespeicherte Laufzeieinstellungen existierten.
  • Fehler #1798: Der aktuell ausgewählte Eintrag im Breadcrumb der Match GUI wurde immer als Link dargestellt, der keinerlei Auswirkung hatte. Jetzt wird der aktuelle Eintrag als ausgewählt markiert und nicht mehr als Link dargestellt.
  • Fehler #1800: In der Match GUI wurde beim Öffnen eines Kontextmenüs in einer Tabelle der fokusierte Eintrag nicht markiert.
  • Fehler #1800: In der Match GUI wurde beim Öffnen eines Kontextmenüs in einer Tabelle der fokusierte Eintrag nicht markiert.
  • Fehler #1805: In der Match GUI wurden Probleme, die beim Erstellen einer Produktinstanz auftraten, wenn gleichzeitig der Typ geändert wurde.
  • Fehler #1803, #1804: In der Match GUI wurden Probleme behoben, die in Zusammenhang mit der Verwendung von $TOLERANT_HOME in Datei- bzw. Pfadangaben stehen.
  • Fehler #1813: Der „Liste aktualisieren“-Button in Produktinstanzen-Ansicht der Match GUI funktionierte nur beim ersten Mal.
  • Fehler #1820: Speichern des Indexes beim Beenden des Services über service.sh wird nicht ausgeführt, wenn das Skript mit relativem Pfad ausgeführt wird.

Bekannte Probleme

  • Fehler #1831: Match-Cluster funktioniert nicht in Kombination mit Originaldaten.
  • Fehler #1832: Match-Cluster funktioniert nicht mit Store-only-Feldern.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.27, 25.09.2013

Ankündigungen

    • Der Installer berechnet nach der Installation checksums von allen Dateien im Installationsverzeichnis. Dies wird in späteren Versionen benutzt, um ein intelligenteres Backup bei einem Upgrade zu ermöglichen. Mit dem Script checkInstallation kann man jetzt eine Liste von gelöschten, geänderten und hinzugefügten Dateien erstellen.
    • Es ist jetzt möglich die Adresse, auf die sich der Service bindet, zu konfigurieren. Dazu kann in tolerantEnv.sh (oder .bat) die Variable JETTY_HOST geändert werden.
    • Der Ausführungsplan einer Match-Suche lässt sich über das neue Attribut ‚hint‘ des Tag ‚matchRuleField‘ beeinflussen. Der Ausführungsplan bestimmt die Reihenfolge, in der Match-Felder in einer Suche verwendet werden und hat damit Einfluss auf die Performance.
    • Die mitgelieferte Version der Java-Runtimeumgebung wurde auf 1.7.0_25 angehoben.
    • Es ist nun möglich eigene Transliterationsregeln zu verwenden, falls die Standardregel nicht ausreichend sind. Dazu gibt es ein neues tag translitRuleFile mit dem man eine Datei mit den Transliterationsregeln angeben kann. In den zu transliterierenden Feldern gibt man als transLitId dann die Id des translitRuleFile tags an. Die Regeln in der Datei müssen den Regel von icu entsprechen. Das tag translitRuleFile muss vor dem Tag normalizeFile stehen.
    • Im Match Service Client gibt es in der Ergebnistabelle eine neue Spalte, mit der für jede Ergebniszeile ein Fenster geöffnet werden kann, welches Detailinformationen zu den einzelnen Ausgabefeldinhalten enthält.
    • Das Layout der Match GUI und des Match Service Clients wurde verbessert, um insgesamt die Sichbarkeit und die Raumausnutzung zu erhöhen.
    • Sowohl in der Match GUI als auch im Match Service Client lässt sich nun der Hilfsbereich am rechten Rand auf-/zuklappen.
    • Für das Zuweisen der Eingabe-, Internen- und Ausgabefelder gibt es in der Match GUI folgende Neuerungen:
      • Bei den Eingabefeldzuweisungen sind die Matchfelder nicht mehr in einer Auswahlbox sondern in einer Liste rechts neben dem Zuweisungsbaum angeordnet. Per Drag & Drop können diese auf den Zuweisungsbaum oder auf den Wurzelknoten gedropt werden.
      • Für alle Listen der Eingabe- und Ausgabefeldzuweisung gibt es Filter. Dieser wird aktiv sobald mehr als 2 Zeichen in das darüberliegende Textfeld eingetragen werden.
      • Wenn ein Element aus der internen Feldliste (Ausgabefeldzuweisung) markiert wird, wird im Hilfe-Bereich ein Erklärungstext für dieses angezeigt.
      • In allen Listen können jetzt mehrere Felder durch gedrückt halten der STRG-Taste markiert werden und per Drag & Drop zugewiesen gewiesen werden. Bei der Ausgabefeldzuweisung ist der Mehrfachdrop nur auf Ausgabefelder zugelassen.
      • Bei den Ausgabefeldzuweisungen gibt es eine neue „Ausgabefeld generieren?“-CheckBox. Ist diese aktiviert, können Listeneinträge auf den Wurzelknoten des Zuweisungsbaums gezogen werden. Dadurch wird automatisch ein neues Ausgabefeld hinzugefügt und dem gedragten Feld zu geordnet.
      • Es ist jetzt möglich, zugewiesene Eingabefelder, Referenzfelder oder interne Felder aus dem Zuweisungsbaum zurück in die Liste zu ziehen.
      • Bei unvollständiger Zuweisung wird hinter der Überschrift des Zuweisungsbaumes eine Warung angezeigt.
      • Um das Zuweisen der Eingabefelder zu vereinfachen, gibt es im Bereich wo die Eingabefelder erstellt werden eine CheckBox mit der Aufschrift „Automatisch zuweisen?“. Ist diese aktiviert wird beim Erstellen des Eingabefeldes versucht ein namensgleiches Matchfeld zu finden und dann automatisch zuzuweisen (das Prefix wird ignoriert). Gelingt dies wird die neue Zuweisung im Zuweisungsbaum angezeigt. Eine weitere CheckBox „Automatisch zuweisen?“ befindet sich in der Eingabefeldzuweisung unter der Liste mit den Matchfeldern. Beim Drop eines Matchfeldes auf den Zuweisungsbaum wird dann versucht ein namensgleiches Eingabefeld zu finden und automatisch zuzuweisen. Eine dritte CheckBox befindet sich bei der Erstellung der Ausgabefelder, dort wird versucht zuerst ein namesgleiches internes Feld, falls keins gefunden wird, dann ein namesgleiches Eingabefeld der Eingabedatei und falls auch dieses nicht gefunden wird, ein namesgeleiches Eingabefeld aus der Referenzdatei (falls vorhanden) zu finden.
    • Die Konfiguration des Match Service Clients wurde so erweitert, dass es nun möglich ist, die Reihenfolge und Sichtbarkeit der Ergebnisreiter zu bestimmen.
    • Unterstützung des Internet Explorers 10 für den Match Service Client und die Match GUI durch das Einspielen einer neueren Version des verwendeten GUI-Frameworks.
  • Der Match-Kern wurde überarbeitet und bietet insbesondere bei großen Ergebnismengen deutlich bessere Performance.

Behobene Probleme

  • Fehler #1756: Hausnummernfeld liefert falsches Ergebnis (‚extDiffScore‘), wenn ‚distanceScore‘ auf 100 gesetzt wird.
  • Fehler #1754: Laufzeitfehler aufgrund Synchronisationsproblem zwischen Backlog-Writer und Service-PUT-Operation.
  • Fehler #1751: Änderungen an Profil-Attribut ‚chooseMode‘ werden durch GUI gelöscht.
  • Fehler #1739: Die Credentials wurden durch die Java-API nicht URL-encoded, so dass bei eingeschalteter Security zu Problemen kam, wenn im Usernamen oder Passwort Zeichen enthalten waren, die in URLs nicht erlaubt sind.
  • Fehler #1736: Falsche Score-Berechnung bei „totalScoreMode=GEOMETRIC_MEAN“, falls „weight“-Werte größer als 52 sind.
  • Fehler #1730: Match stürzt ab wegen Division durch 0 in Score-Berechnung.
  • Fehler #1728: Bei min-score=0 werden bei Multistring-Feld Ergebnislisten mit Treffern mit falschem Score aufgefüllt.
  • Fehler #1721: Server startet mit Fehler „ClassNotFound: sun.awt.*“ weil kein X-Server verfügbar. Die Tolerant-Prozesse startet auf Linux und Solaris jetzt headless.
  • Fehler #1718: Filterung in Multistring-Feld ineffizient.
  • Fehler #1714: Die Optionen für das Trimming werden im Service nicht ausgewertet, es findet kein Trimming statt.
  • Fehler #1687: Wenn im Match Service Client mehrere Projekte benutzt werden, wurden bisher beim Projektwechsel die Inhalte der bereits gefüllten Eingabefelder an die Eingabefelder mit der gleichen id des neuen Projektes übertragen. Dies ist jedoch für den Benutzer schwer nachzuvollziehen. Deswegen wird jetzt der Eingabefeldinhalt an alle namensgleichen Felder des neu ausgewählten Projektes übertragen.
  • Fehler #1686: Nach einem Profilwechsel im Match Service Client wurde die kontextsensitive Hilfe nach einem Klick in ein Eingabefeld nicht mehr angezeigt
  • Fehler #241: In allen Datei-/Ordner-Auswahldialogen der Match GUI wurde unter Linux der bereits vorhandene Dateipfad nicht vorausgewählt, sondern immer nur der erste Knoten ausgewählt. Dieser Fehler wurde behoben.
  • Fehler #1725: Es wurde ein interner Fehler behoben, der auftretten konnte wenn man ein neues Eingabefeld in der Match GUI anlegt.
  • Fehler #1710, #1712, #1713 u.a.: Es wurde eine ganze Reihe von Fehlern behoben, die die externe Match Service Client Konfiguration betreffen.
  • Fehler #1729: Nach einem Projekt- oder Profilwechsel im Match Service Client funktionierte der Enter-Shortcut nicht mehr. Dieser Fehler ist jetzt behoben.
  • Fehler #1734: Die Position eines gedropten Listen-Items im Zuweisungsbaum der MatchGUI auf einen Kindknoten mit mehreren Geschwistern wurde falsch berechnet.
  • Fehler #1749: In der Match GUI gab es noch Möglichkeiten alle Eingabefeldzuweisungen zu löschen was nach dem Speichern zu einer ungültigen Konfiguration führte die nicht mehr gelesen werden konnte.
  • Fehler #1747: Nach dem Kopieren eines Projektes einer Match Service Konfiguration in der Match GUI, konnte das kopierte Projekt nicht mehr geöffnet werden.
  • Fehler #1746: In der Match GUI gab es die Möglichkeit in der Ansicht der Produktinstanzen alle Menüpunkte des „Ausführen“-Menüs aufzurufen, was jeweils zu einem Fehler führte.
  • Fehler #1745: Beenden eines PopUp-Fensters in der Match GUI über die ESC-Taste führte dazu, dass das PopUp-Fenster kein weiteres Mal angezeigt werden konnte.
  • Fehler #1748: Beim expliziten Abbruch eines Batchlaufes aus der Match GUI, konnte es passieren, dass nachfolgende Aktion einen Fehler verursachen.

Bekannte Probleme

  • Sollte beim Installieren keine GUI für Match installiert worden sein, müssen, für das Starten der Match-Clients über das matchClientGUI-script, von Hand die 2 Einträge „browserExecutable“ und „guiPort“ in der Date gui.properties befüllt werden.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.26, ?.07.2013

Ankündigungen

  • Der Match Service Client kann über eine „guiconfig.properties“-Datei, die im „/config“-Ordner abgelegt wird, individuell angepasst werden. So ist es zum Beispiel möglich, die Position und die Reihenfolge der Eingabefelder zu bestimmen. Eine Beispielkonfiguration ist unter „/config/templates“ zu finden.
  • Für Solaris wird statt eines optimierten Memory-Allocators standardmäßig der System-Memory-Allocator verwendet.
  • Bei Multistring-Feldern ist nun einstellbar, wie stark die Bewertung einzelner Tokens (token score) in die Feldbewertung (score) eingeht. Das neue Attribut ‚tokenScoreWeight‘ des Tags ‚matchProfileField‘ hat den Standardwert 100 (Verhalten wie bisher). Geringere Werte verringern, größere Werte erhöhen den Einfluss der Token-Bewertung auf das Ergebnis.
  • Der Match Service Client hat einen neuen Ergebnisreiter „Status“ der eine Kurzdarstellung der einzelnen Suchergebnisses liefert.

Behobene Probleme

  • Fehler #1690: Match-Felder, die nicht im Service-Input sind, wurden trotzdem ausgewertet. Sie werden nun automatisch inaktiv gesetzt.
  • Fehler #1684: Für Singlestring- und Multistring-Felder werden nicht erlaubte Zeichen nun konsequent durch ‚_‘ ersetzt. Dies sorgt für deterministische Ergebnisse und bessere Performance bei Verwendung vieler Sonderzeichen.
  • Fehler #1674: OR-Funktion des PLAIN-Feldtyps funktioniert nicht richtig.
  • Fehler #1673: Feldgewichtung 0 wird nicht richtig behandelt, wenn nur im betroffenen Feld gesucht wird.
  • Fehler #1672: Multistring-Feld liefert zu viele Treffer, wenn es zur Filterung verwendet wird.
  • Fehler #1666: Bisher wurde die Angabe „length“ im „partitionField“ bei einer MatchBatch Partitionierung falsch interprätiert. Es wurde nicht die tatsächliche Länge vom „startIndex“ an verwendet, sondern die Länge abzüglich des Startindexes. Jetzt wird die tatsächliche Länge vom Startindex an verwendet.
  • Fehler #1664: Wenn Partitionierung im MatchBatch verwendet wurde und der „startIndex“ größer als die angegebene Länge „length“ ist, brach der Batchlauf mit einem Fehler ab. Dieser Fehler ist jetzt behoben.
  • Fehler #1663: Manchmal konnten die temporären Dateien bei einem Referenzabgleich nicht korrekt gelöscht werden.
  • Fehler #1662: Wenn im Selbstabgleich viele Dubletten vorkamen, aber maxResultSize im Profil kleiner eingestellt war, dann wurde der matchBatch langsam oder blieb hängen.
  • Fehler #1660: Die Matchfelder mit ihren Typen wurden nicht geloggt.
  • In Verbindung mit einer Oracle-Datenbank trat folgendes Problem auf: wenn die Datenbank neu gestartet wurde und die darauf zugreifende Anwendung weiterlief, trat in der Folge ein Fehler beim Zugriff auf die Datenbank auf, auch wenn zu diesem Zeitpunkt die Datenbank wieder zugänglich war. Es trat ein Fehler mit der Meldung „Invalid or Stale Connection found in the Connection Cache“ auf. Um dies zu verhindern, wurde ein Retry-Mechanismus eingebaut, der im Falle ungültiger Datenbank-Verbindungen diese vor der Nutzung erneut aufbaut.
  • Fehler #1657: Suchanfragen beim Match-Service mit resultMode 4 (mit internen Daten) werden nun korrekt behandelt, wenn internen Daten durch parallele Delete-Requests gelöscht wurden.
  • Fehler #1655: Optimierung Hausnummernfeld, so dass Attribut ‚maxDistance‘ in den Profilen problmlos modifiziert werden kann.
  • Fehler #1646: Fehler im Selbstabgleich. Selbstabgleich konnte unter bestimmten Bedingungen hängen bleiben.
  • Fehler #1639: PlainField mode PREFIX funktioniert nicht korrekt.
  • Fehler #1620: Die initiale Ladung konnte sehr lange dauern, wenn viele Transliterationen verwendet wurden. Dies wurde beschleunigt.
  • Fehler #1615: Implementierung von maxScore liefert nicht immer korrekte Ergebnisse (z.B. bei Hausnummernfeld und Abweichung in Hausnummer-Zusatz).
  • Fehler #1607: Partitionierungs-Kriterium wird ausgewertet, auch wenn das Feld in einer Regel nicht verwendet wird.
  • Fehler #1598: Wenn zwei aufeinander folgende Zeichen mehr als 15 mal in String auftreten, funktioniert unscharfe Suche in Single- und Multistring-Feldern nicht richtig.
  • Fehler #1597: In Multistring-Suche gehen Ergebnisse verloren, wenn es mehrere Ergebnisse für das selbe Token aus unterschiedlichen Partitionen gibt.
  • Fehler #1596: Bei partitionierten Daten werden nicht alle erwarteten Treffer gefunden.
  • Fehler #1591: Mangelnde Synchronisation bei parallelen Änderungen und Suchen für selbe Schlüssel im Match-Index.
  • Fehler #1592: Request-cache in Ruleset ignoriert Partition von filter-keys.

Bekannte Probleme

  • Sollte beim Installieren keine GUI für Match installiert worden sein, müssen, für das Starten der Match-Clients über das matchClientGUI-script, von Hand die 2 Einträge „browserExecutable“ und „guiPort“ in der Date gui.properties befüllt werden.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.25, 3.5.2013

Ankündigungen

  • Achtung: In diesem Release wurde das Format zur Speicherung der Match-Service-Daten in einer Datenbank geändert! Aus diesem Grund muss vor Installation des Release der Inhalt der Service-Datenbank exportiert und nach dem Update wieder importiert werden. Hierfür kann das neue Kommandozeilenwerkzeug ‚matchServiceTool‘ verwendet werden.
  • In einem Cluster aus Match-Service-Knoten wird der Datenbestand nach dem zeitweisen Ausfall eines Knotens nun automatisch aktualisiert, sobald der ausgefallene Knoten wieder startet.
  • Eine Upgrade-Installation kann jetzt auf eventuelle manuelle Schritte vor oder nach der Installation hinweisen und erlaubt zudem die Installation komplett abzubrechen.
  • Werden die Servicerequests in die Datenbank geloggt, so gibt es in der Logtabelle jetzt ein weiteres Feld „duration“ in der die Requestlaufzeit gespeichert wird (nur in der Response (direction=“O“)).
  • Das Request/Response-Logging des Services hat sich leicht geändert. Es wird jetzt eine fortlaufende Requestnummer mit ausgegeben und zusätzlich in der Responsezeile auch die Requestdauer.
  • Es gibt jetzt im Match Service Client eine neue CheckBox um alle Suchfelder als ausgewählt zu markieren.
  • Die Partitionierung im Match-Service wurde überarbeitet. Nun ist es möglich, mehrere Partitionierungs-Kriterien zu konfigurieren. Zu diesem Zweck wird pro Kriterium ein Tag ‚partitioningAggregation‘ angelegt mit einem darin enthaltenen Tag ‚partitioningField‘ für das jeweilige Match-Feld. Auch über die Service-Konifguration der MatchGUI lassen sich diese Aggregationen und Partitionsfelder erstellen bzw. bearbeiten.
  • Die beiden Konfigurations-Tags ‚partitioningAggregation‘ und ‚partitioningField‘ der inneren Partitionierung haben ein neues Pflichtattribut ’name‘. Dieser kann frei gewählt werden und wird nur in der Service-Konfiguration der MatchGUI verwendet um Aggregationen und Partitionsfelder zu unterscheiden.
  • Texte des Match Service Clients können über eine „guimessages.properties“-Datei, die im „/config“-Ordner abgelegt wird, überschrieben werden. Eine Beispielkonfiguration ist unter „/config/templates“ zu finden.
  • Die Skripte für den Service/Batchstart wurden so geändert, dass standardmäßig IPv4 verwendet wird.
  • Das Installationsskript heißt jetzt installMATCH*.* anstelle von install*.*
  • Die Reihenfolge der Fragen im Installer hat sich leicht geändert und auch die Parameter für die Silent-Installation wurde geändert. Dies war notwendig, weil jetzt GUI/Client GUI und Service getrennt bei der Installation mit Parametern versehen werden können. Die Konfiguration des http-Ports und die Windows-Service Registrierung kommen erst nachdem man definiert hat, ob ein GUI/Client-GUI und/oder ein Tolerant Service zu installieren sind.
  • Die JAVA-API hat in der Klasse MatchConnection jetzt einen weiteren Konstruktor, der erlaubt die Größe des verwendeten http-Verbindungspool zu vergrößern. Bisher war der Pool auf maximal 20 parallele Verbindungen pro MatchConnection beschränkt.
  • Erweiterung der Synonymmodi, um die Möglichkeit reguläre Ausdrücke zu suchen und zu ersetzen.
  • Wenn eine Datenbank zur Speicherung des Match-Index verwendet wird, werden nun während der Initialladung die Datenbank-Statistiken neu berechnet. Dies beschleunigt die Initialladung und darauf folgende Datenbank-Zugriffe.
  • Das Konfigurations-Attribut „autoIntervalSave“ wird nicht mehr unterstützt. Seine Funktion wird nun implizit definiert bei Verwendung der Attribute „saveInterval“ oder „saveSchedule“.
  • Es wurde ein neues Attribut für Match-Profile eingeführt: ‚chooseMode‘ erlaubt die Steuerung der Regelverarbeitung. Mögliche Werte sind:
    • FIRST_RULE: Dies entspricht dem bisherigen Verhalten und ist der default-Wert. Falls ein Treffer über mehrere Regeln gefunden würde, wird das Ergebnis der ersten Regel verwendet.
    • BEST_SCORE: Für diesen Wert wird das Ergebnis der Regel zurückgeliefert, über die der höchste Score erzielt wurde.
  • Die Elemente serviceOutputField und csvOutputField haben ein neues Attribut „delimiter“. Dies definiert eine Zeichenkette, die als Trenner zwischen zwei Werte gesetzt wird, wenn dem Ausgabefeld mehrere interne Werte zugewiesen werden (Der default ist wie bisher das Leerzeichen).

Behobene Probleme

  • Fehler #1584: AdminGUI: Regelfeld- und Profilfeldeinstellungen wurden auch gespeichert wenn die Action abgebrochen wurde. Beim Abbrechen werden jetzt keine Regelfeld- bzw. Profilfeldeinstellungen mehr gespeichert.
  • Fehler #1582: Beim Löschen von Eingabefelder in der Match-Batch Admin-GUI, wurden bei aktivierter Partitionierung die ausgewählten Eingabefeldreferenzen zurück auf den Standardwert gesetzt, auch wenn die Referenz des gelöschen Eingabefeldes nicht ausgewählt war. Der Standardwert wird jetzt nach dem Löschen eines Eingabefeldes nur noch dann gesetzt, wenn die Referenz des gelöschen Eingabefeldes ausgewählt war.
  • Fehler #1576: Beim Erstellen oder Ändern einer Produktinstanz in der Admin-GUI, wurde die Fehlermeldung die erscheint wenn keine Konfigurationsdatei angegeben ist, nicht angezeigt.
  • Fehler #1580: Der …-Button in der Admin-GUI hat nicht mehr funktioniert wenn von Hand ein falscher Dateipfand eingegeben wurde.
  • Fehler #1299: Die Menü-Punkte zum Ermitteln des Service- und des Laufzeitstatus einer GUI Service-Instance haben kein Ergebnis angezeigt. Der Service- und Laufzeitstaus wird jetzt wieder angezeigt.
  • Fehler #1125: Wird eine Orginaldaten-Datenbank verwendet, so wird nun ein Fehler ausgegeben, wenn die Datenbank zwar existiert, aber die nötigen Tabellen fehlen.
  • Fehler #1569: Auf den Plattformen Linux und Solaris wurden beim Servicestart die Logdateien immer im Verzeichnis abgelegt, in dem das Startskript ausgeführt wurde. Ab jetzt landen die Logfiles im Installationsverzeichnis unter „logs“. Eine Ausnahme bilden die Startup-Logs, die geschrieben werden noch bevor die Konfiguration gelesen wird. Sind absolute Pfade in der Konfiguration für die Logdateien vorgesehen, so ändert sich nichts.
  • Fehler #323: Die Reihenfolge der Projekte im GUI ändert sich nun nicht mehr, wenn man ein Projekt modifiziert.
  • Fehler #1567: Ein Fehler in der Regelverarbeitung führte in manchen Fällen zu falschen Ergebnissen für den Fall, dass ein Treffer durch mehrere Regeln gefunden wurde.
  • Fehler #1566: Die REST-Methoden PUT und POST (insert und update) erlauben jetzt, dass die Parameter entweder wie bisher als Query-Parameter (Teil der URL) oder alternativ als Form-Parameter (im Content) geliefert werden können. Die beiden Möglichkeiten können nicht gemischt werden.Gibt es Query- und Form-Parameter im Request so werden ausschliesslich die Query-Parameter verwendet.
  • Fehler #1548: Filterung in Suche bei Partitionierung liefert zu viele Ergebnisse.
  • Fehler #1011: Initial load funktionmiert bei Verwendung einer Index-Datanbank nicht richtig ohne Argument ‚-delete‘. Das Argument wird nun erzwungen.
  • Fehler #1532: Nach einem Upgrade waren nicht mehr alle GUI installiert (context-Datei wurde nicht kopiert). Dies ist jetzt behoben.
  • Fehler #1519: Die Regelverarbeitung im Kernel stellt nicht sicher, dass Felder mit min-score=0 nachrangig verarbeitet werden.
  • Fehler #1478: Bei REGEXP-Conditions führen leere Werte in einer Query zu SIGSEGV.
  • Fehler #1437: Performance-Problem in Regelverarbeitung bei großen Treffermengen, Request bricht nicht ab. Zusätzlich wurde die Requestbearbeitung beschleunigt, wenn einzelne Requests große Ergebnismengen haben.
  • Fehler #1435: Es trat ein Fehler bei Nutzung von EmptyScore auf, wenn für alle Treffer in einer Spalte die Werte in einer anderen Spalte leer waren.
  • Fehler #1424: Die Dauer einer Suche wurde in der MatchClientGUI nicht aktualisiert.
  • Fehler #1410: Wenn die Security eingeschaltet war, kam für den ping-SOAP Request bei falscher Authentifizierung ein zu generischer Fehler.
  • Fehler #1408: Bei Nutzung der Transliteration wurden die transliterierten Werte statt der Eingangswerte in die Original-DB geschrieben.
  • Fehler #1405: Die Transliteration für ein Eingabefeld eines Services wurde nicht durchgeführt.
  • Fehler #1406: Die Client GUI meldete beim Laden der Konfiguration vom Service Fehler, wenn Synonyme verwendet wurden.
  • Fehler #1404: Erzeugung eines full save point aus einem incremental save point funktioniert für MongoDb nicht richtig.
  • Fehler #1386: Nach Verarbeiten der backlog-Einträge bei Service-Start funktioniert Auto-save nicht.
  • Fehler #1385: Nach Verarbeiten der backlog-Einträge bei Service-Start wird Backlog-Datei gelöscht.
  • Fehler #1381: Hausnummern-Feld: Hausnummer-Zusatz mit Ziffern wird nicht korrekt erkannt.
  • Fehler #1354: Suche in Multistring-Feld schlägt manchmal fehl, wenn Such-Token auf mehrere Index-Tokens matcht.
  • Fehler #1331: Hausnummernerkennung sollte Gross/Kleinschreibung ignorieren.
  • Fehler #1314: Hausnummernfeld: ein Hausnummernbereich wurde auch dann erkannt, wenn die zweite Zahl nicht größer als die erste war.
  • Fehler #1311: Verbesserung des Backups beim Upgrade. Beim Upgrade muss bei Auswahl des Backups jetzt ein Verzeichnis angegeben werden, in dem das Backup gespeichert wird
  • Fehler #1296: Cluster: Sync-Operationen werden nicht in Backlog geschrieben.
  • Fehler #1295: Cluster funktioniert nur mit einem Projekt.
  • Fehler #1259: Der default für das Attribut maxFieldResultSize im matchProfileField war zu klein für grosse Abgleiche. Dieser Wert wurde jetzt auf 0 (=unbeschränkt) gesetzt.
  • Fehler #1255: Ist eine Spalte einer Initial-Load-Datei vollständig leer, tritt ein Fehler beim Start des Service auf.
  • Fehler #1252: Beim Upgrade werden Dateien im Verzeichnis runtime\jetty-7.6.3\contexts nicht mehr gelöscht.
  • Fehler #1248: Fehler bei initial load: Datensätze mit selbem externen Schlüssel und unterschiedlichem Partitionierungskriterium werden falsch behandelt.
  • Fehler #1239: Das Attribut ‚phoneticUsage‘ führte mit dem Wert ‚ONLY_PHONETIC‘ zu einem Fehler.
  • Fehler #1235: Ein Speicherleck wurde behoben: Sync-Daten für Cluster wurden nicht gelöscht.
  • Fehler #1222: Das Speichern der Normalizer-Datei führt nun nicht mehr dazu, dass die Datei größer wird.
  • Fehler #1203: Der Installer unterstützt nun die Installation der Client-GUIs
  • Fehler #1202: Wenn man den Service nicht installiert, das GUI aber schon, dann konnte nach der Installation das GUI nicht gestartet werden, weil kein Port konfiguriert wurde. Dies ist nun behoben.
  • Fehler #1042: Admin-GUI und Client-GUI verwenden den selben Port. Jetzt kann in den gui.properties ein Port für das Admin-GUI (guiPort) und ein Port für das Client-GUI (clientguiPort) konfiguriert werden.
  • Fehler #1035: Der Installer hat bisher nach dem Stop-Port gefragt, auch wenn kein Service installiert werden sollte. Dies ist nun behoben.
  • Fehler #983: Ist in gui.properties kein guiPort gesetzt, so wird nun automatisch ein zufälliger Port benutzt.

Bekannte Probleme

  • Sollte beim Installieren keine GUI für Match installiert worden sein, müssen, für das Starten der Match-Clients über das matchClientGUI-script, von Hand die 2 Einträge „browserExecutable“ und „guiPort“ in der Date gui.properties befüllt werden.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • Wenn eine Requestlogging-Datenbank benutzt wird, dann muss diese erstmalig migriert werden, da es jetzt ein neues Feld in der Tabelle gibt (Beispiel für PostGRESQL):
    ALTER TABLE tlt_requestlog ADD COLUMN duration BIGINT;
    UPDATE tlt_requestlog AS u
    SET duration= EXTRACT( MILLISECONDS FROM (SELECT o.ts-i.ts FROM tlt_requestlog o, tlt_requestlog i WHERE i."transaction" = o."transaction" AND i.direction='I' AND o.direction='O' AND i."transaction"=u."transaction"))
    WHERE u.direction='O'

Release 1.24, 15.10.2012

Ankündigungen

  • Für Singlestring- und Multistring-Felder wird nun die phonetische Suche unterstützt, um Suchbegriffe bei ähnlicher Ausprache finden zu können. Die phonetische Suche kann mit der bisherigen unscharfen Suche kombiniert oder wie diese auch alleine verwendet werden.
    Die folgenden neuen Konfigurationsparameter des Elements ‚matchProfileField‘ werden unterstützt:

    • phoneticUsage: steuert die Verwendung, möglicher Werte sind ‚NO_PHONETIC‘ (unscharfe Suche wie bisher), ‚WITH_PHONETIC‘ (kombinierte Suche), ‚ONLY_PHONETIC‘ (nur phonetische Suche). Der Standardwert ist ‚NO_PHONETIC‘.
    • phoneticType: spezifiziert den Algorithmus zur Berechnung des phonetischen Codes. Der einzige derzeit verfügbare Typ ist ‚KOELNER‘ (Kölner Phonetik).
    • phoneticWeight: definiert das Gewicht (0…100) der phonetischen Suche am Gesamtergebnis bei der kombinierten Suche.

Behobene Probleme

  • Fehler #1234: Spezialfunktionen im Plain-Index führten bei Paging manchmal zu Fehlern.
  • Fehler #1233: Bei Initial-Load ist der Speicherbedarf (RAM) in bestimmten Fällen unbegrenzt gestiegen.
  • Fehler #1227: Bei Verwendung von ‚Originaldaten‘ trat ein Fehler auf, wenn Leerwerte geschrieben wurden.
  • Fehler #1220: Falsche Treffer bei Plain-Index mit Partitionierung.
  • Fehler #1219: Bei Verwendung von Oracle als Paging-DB kann nur ein Projekt pro Service konfiguriert werden.
  • Fehler #1214: Der Zugriffsschutz auf Projektebene für den Servicezugriff funktionierte nicht richtig. Dies ist nun behoben.
  • Fehler #1217: Beim Match-Batch konnte ein Fehler auftreten, wenn nach einem Negativabgleich auch ein Referenz- oder Selbstabgleich erfolgte, die Referenzdatei für den Negativabgleich aber leer war. Dies ist nun behoben.

Bekannte Probleme

  • Sollte beim Installieren keine GUI für Match installiert worden sein, müssen, für das Starten der Match-Clients uber das matchClientGUI-script, von Hand die 2 Einträge „browserExecutable“ und „guiPort“ in der Date gui.properties befüllt werden.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.23, 25.09.2012

Ankündigungen

  • Es wurde ein neues internes MatchFeld „match.Empty“ hinzugefügt, welches für die Items einer MatchBatch OutputFieldmap als „internalFieldName“ gesetzt werden kann. Ist dies gesetzt, wird das nicht gesetzte komplementäre Ausgabefeld leer gelassen. Zum Beispiel veranlasst, dass das Ausgabefeld „outName“ in der Kopfdublettenzeile gefüllt ist und in der Folgedublettenzeilen leer bleibt, sofern die Option „headFromInput=’Y’“ eingestellt ist. Ist die Option „headFromInput=’N’“, verhält es sich umgekert.
  • In der grafischen Benutzeroberfläche MatchGUI, wurde die Logik der Ausgabefeldzuweisungen im Referenzabgleich und im Negativabgleich so geändert, dass wenn ein einzelnes Eingabe- oder Referenzfeld als Kindknoten eines Gruppe-Knotens gesetzt ist, das komplementär Feld in der Ausgabedatei immer leer bleibt.
  • Das Kommandozeilenwerkzeug ‚matchInspectPagingDatabase‘ wurde ergänzt um ein neues Kommando ‚DB_PERF‘, das die Schreib- und Lesezeiten misst beim Zugriff auf die Paging-Datenbank.
  • Das Kommandozeilenwerkzeug ‚matchAdjustPagingDatabase‘ wurde ergänzt um ein neues Kommando ‚ANALYZE‘, das die Paging-Tabellen analysiert. Dadurch werden Zugriffe auf die Paging-Datenbank in der Folge möglicherweise schneller ausgeführt.

Behobene Probleme

  • Fehler #1204: Es trat unter bestimmten Bedingungen ein interner Fehler im Plain-Index bei Partitionierung auf.
  • Fehler #1194: Die matchClient GUI funktionierte nicht, wenn die Security eingeschaltet wurde.
  • Fehler #1184: Die Überprüfung ob die Match-Service-Konfiguration korrekt ist wurde im MatchServiceClient nicht vollständig durchgeführt.
  • Fehler #1058: Der MatchServiceClient hat bisher immer einen Fehler angezeigt wenn in der MatchService-Konfiguration Dateien (z.B. Synonym-Datei, Input-Datein, Datenbanken) referenziert wurden. Die Fehlermeldung wird jetzt nicht mehr angezeigt.
  • Fehler #814: Größe und Anzahl der Logfiles kann nun über die generischen Parameter konfiguriert werden.
  • Fehler #711: Es wird nun überprüft, dass in einem partitionField die Input- und Indexdatei verschieden sein müssen.

Bekannte Probleme

  • Sollte beim Installieren keine GUI für Match installiert worden sein, müssen, für das Starten der Match-Clients uber das matchClientGUI-script, von Hand die 2 Einträge „browserExecutable“ und „guiPort“ in der Date gui.properties befüllt werden.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.22, 03.09.2012

Ankündigungen

  • Das MatchQuery Objekt der API verfügt nun über einen erweiterten Funktionsumfang (z.B. Abfrage der zuletzt auf gerufenen Methode). Desweiterem gibt es eine neu API-Klasse MatchQueryWrapper welche ein vorhandens MatchQuery Objekt wrappt und vereinfachte Funktionen zur Ergebnisabfrage bereitstellt. Nähere Informationen dazu in den jeweiligen JavaDocs.
  • Das Attribut „transLitIdent“ der Eingabefelder lässt sich nun auch über die GUI konfiguieren.

Behobene Probleme

Bekannte Probleme

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.21, 13.08.2012

Ankündigungen

Behobene Probleme

  • Fehler #1084: Im englischen Messagecatalog für das GUI waren die Einträge für die Partitionierung falsch.
  • Fehler #1085: Wenn der Service beim Start seine Konfiguration nicht lesen konnte, trat bei jedem Zugriff über REST oder SOAP eine Exception im Server auf.
  • Fehler #1086: Beim Sichern der Konfiguration konnte es passieren, dass die Reihenfolge der Element vertauscht wurde, so dass danach die Konfiguration nicht mehr gelesen werden konnte.
  • Fehler #1087: Im GUI trat ein Fehler auf, wenn ein Feld im ServiceInput oder Output keinen Namen hatte.

Bekannte Probleme

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.20, 13.07.2012

Ankündigungen

  • Mittels des Attributes „transLitIdent“ kann für jedes Input- oder Outputfeld (sowohl für den Service als auch für die Batchverarbeitung) ein sogenannter „Identifier“ angegeben werden, welcher eine Transliteration für den Inhalt des entsprechenden Feldes definiert.
  • Mittels des Projekt-Attributs „saveSchedule“ können jetzt statt fester Zeitintervalle, Zeitpunkte für die Speicherung des Index angegeben werden. Dazu kann man in das Attribut eine durch „|“-Symbole getrennte Liste von cron-Ausdrücken schreiben. Die Syntax der cron-Ausdrücke ist in www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-06 beschrieben.
  • Speichern des Match-Index in einer Datenbank: es lassen sich nun inkrementelle Save-Points auch online zu einem Full-Save-Point zusammenfassen (bisher nur offline, wenn der Service inaktiv ist). Diese Operation lässt sich entweder interaktiv über das Admin-Kommandozeilenwerkzeug auslösen oder automatisch zu festen Zeitpunkten (die Konfiguration erfolgt über das Projekt-Attribut „fullSavepointSchedule“ analog zu „saveSchedule“, s. oben).
  • Folgende zusätzliche Datenbanken werden unterstützt: Oracle und SQL Server.
  • Zugriffe auf den Match-Service (Request und Response) lassen sich nun mit allen Parametern in einer Datenbank-Tabelle speichern. Unterstützt werden hierbei die Datenbank-Typen H2, Oracle, Postgres, SQL Server.
  • Die Distributionen der benutzten Opensource Projekte sind nicht mehr Bestandteil des Installers, dadurch wurde das Paket deutlich kleiner. Die Distributionen sind auf Wunsch bei TOLERANT Software zu erhalten.

Behobene Probleme

  • Fehler #1044: Im MatchClient wurden Eingabefelder nicht oder nicht vollständig angezeigt, wenn nicht ausreichend Platz im Browserfenster vorhanden war. In diesem Fall wird jetzt eine Scrollbar angezeigt.

Bekannte Probleme

  • Es wurden Probleme beobachtet bei Verwendung der Postgres-Datenbank zur Speicherung der Match-Service-Daten.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.19 PATCH1, 03.07.2012

Ankündigungen

Dies ist ein PATCH. Dieser Patch ersetzt alle vorherigen Patches. Der Patch enthält keine neuen Features.

Behobene Probleme

  • Fehler #1046: (Seltene) Inkonsistenz in Match-Kernel nach Löschen von Daten.
  • Fehler #1047: Get-by-key fehlerhaft, wenn im Index ein Plain-Field verwendet wird.
  • Fehler #1045 Beim Speichern einer Match-Service Konfiguration mit einer Urladungskonfiguration konnte es passieren, dass eine ungültige Konfigurationsdatei geschrieben wurde. Dieser Fehler ist nun behoben.

Bekannte Probleme

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.19, 18.06.2012

Ankündigungen

  • Wenn der Service in den Maintenance Modus geschaltet wird, dann liefern Anfragen an den REST oder SOAP Service jetzt den HTTP-Statuscode 503 (Service unavailable). Weiterhin wurde auch die Java-API um eine neue Fehlermeldung (-1013) erweitert.
  • Die Java-API liefert nun eine weiteren Fehlercode (-1012), der geliefert wird, wenn die angegebene URL ein ungültiges Format hat.
  • Wegen der Änderungen am Normalizer (siehe Fehler #1024), müssen eventuell vorhandene Normalizer-Dateien angepasst werden. Alle Zeilen, die bisher nur ein Zeichen enthalten (ohne folgendes Komma), müssen so korrigiert werden, dass mindestens ein Komma folgt.
    Bspw. muss aus der Zeile

    die Zeile
    ,
    gemacht werden.
  • Für die Benutzeroberfläche wurde eine neue Version des vaadin-Frameworks (von 6.5.2 auf 6.7.9) installiert. Diese enthält wichtige Securityfixes und die Unterstützung des IE9.
  • In der Benutzeroberfläche des Service, kann nun auch eine Partitionierung des Indexes konfiguriert werden. Zu erreichen über das Kontextmenü von ‚Einstellung‘. Sie entspricht dem Tag ‚innerPartitioning‘ aus der Konfiguration mit einer Aggregation und einem Partitionsfeld.
  • Es existiert ein neuer Feld-Typ: PLAIN
    • Der neue Typ ist ein String-Feld für die scharfe Suche analog zu Datenbank-Indizes.
    • Der Normalizer wird nicht für Inhalte von Plain-Feldern verwendet.
    • Anfragen an ein Fix-Feld können mehrere durch ein Trennzeichen getrennte Werte enthalten. Das Ergebnis enthält die Vereinigungsmenge der Ergebnisse für jeden Wert (ODER-Abfrage).
    • Das Plain-Feld kennt folgende Modi:
      • Vergleich des vollständigen Strings (100%-Match)
      • Wildcard-Suche (analog SQL LIKE mit % am Ende des Suchbegriffs)
      • Prefix-Suche: es werden indizierte Strings gefunden, deren Anfang mit dem Such-String übereinstimmt (‚Prefix‘). Der Such-String muss mindestens N Zeichen lang sein. Falls ein String im Index eine Länge kleiner/gleich N hat, wird er nur exakt gefunden.
    • Parameter:
      • Modus (‚mode‘, Werte STRICT, WILDCARD, PREFIX, default STRICT)
      • Score für Wildcard-Match (‚wildcardScore‘, default: 100)
      • Score für Prefix-Match (‚prefixScore‘, default: 100)
      • Anzahl Zeichen für Prefix-Suche (‚prefixLength‘, default: 1)
      • Trennzeichen für ODER-Abfrage (‚delimiter‘, default: “)

Behobene Probleme

  • Fehler #1038: Auf sehr schnellen Systemen mit vielen Kernen, konnte es im Normalizer zu einer Race-Condition kommen, die dazu führte, dass der Match-Batch stehen blieb. Dies ist jetzt behoben.
  • Fehler #1037: In Match wurde ein Problem behoben, das bei hoher Parallelität (viele Threads) zu erheblichen Performance-Einbußen führte.
  • Fehler #1024: Bisher hat der Normalizer, wenn in der Konfiguration eine Zeile lediglich eine Reihe von Leerzeichen enthielt, alle Leerzeichen in Strings gelöscht. Das Löschen von Leerzeichen (oder sonstiger Zeichen) erfolgt jetzt nur, wenn nach dem Zeichen in der ersten Spalte explizit ein Trennzeichen ohne folgendes weiteres Zeichen angegeben wird.

Bekannte Probleme

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.18, 16.05.2012

Ankündigungen

  • Die Skripte, um die Basic Authentication für den Web-Service (oder das GUI) einzuschalten, wurden entfernt, da es jetzt das eingebaute Sicherheitsmodul im Service gibt.
  • Der Mechanismus, um den Service in Windows als Dienst einzutragen, wurde geändert und benutzt jetzt Apache procrun. Damit einhergehend wurden die nötigen Skripte angepasst und umbenannt:
    • registerService.bat : winserviceRegister.bat
    • unregisterService.bat : winserviceUnregister.bat
    • startService.bat : winserviceStart.bat
    • stopService.bat : winserviceStop.bat

    Weiterhin entfällt die Datei tolerantservice.conf.

  • Es wird eine neuere Version des jetty-Webcontainers mitgeliefert (7.6.3 statt 6.1.22).
  • Match Service unterstützt jetzt auch SOAP über HTTP. Anfragen können beliebig zwischen REST und SOAP gemischt werden.
  • Es wird eine aktuellere Java Runtime (1.6.0_30, bei Windows 64-bit 1.6.0_32) gebundelt.
  • Das adminCLI tool wurde um eine Hilfe Funktion erweitert, die alle von dem angesprochenen Service unterstützten Kommandos ausgibt.
  • Die Webservice Plattform RESTEasy wurde durch Apache cxf ersetzt, um eine Erweiterung um eine SOAP Schnittstelle zu ermöglichen.
  • Die JAPI benutzt eine neuere Version von jettison zur Interpretation von JSON.
  • Es gibt ein neues Attribut name für das Datenbank-Tag in der Konfiguration. Es ist ein Pflichtfeld und dient zur Identifikation einer Datenbank auf der graphischen Benutzeroberfläche.
  • Das Attribut initMemory des Paging-Tags in der Konfiguration erhält den Standardwert 100 (für 100Mb).
  • Das Paging für den Service lässt sich nun über die graphische Benutzeroberfläche konfigurieren.
  • Der Service-Parameter „disabledFields“ einer Suchanfrage, der bisher eine Liste von Matchfeldnamen enthielt, enthält ab sofort die Namen der Eingabefelder (Inhalt des „name“-Attribute des „serviceInputField“). Funktional ändert sich an der „disabledFields“ Eigenschaft nichts. Statt den bisher übergebenen Matchfeldnamen, werden die aufgelisteten Eingabefelder von der Suche ausgeschlossen. Zu beachten ist dabei, dass wenn in der „serviceInputFieldmap“ mehrere Eingabefelder existieren die auf ein Matchfeld gemappt werden, alle Namen der Eingabefelder in den disabledFields angegeben werden müssen, damit das Matchfeld von der Suche ausgeschlossen wird. Der Vorteil hierbei ist, das beim einfachen Verwenden des MatchServices(resultMode=1) keine weiteren Kontextinformation (mal abgesehen obiger Ausnahme) notwendig sind. Aufgrund dieser Änderung lassen sich die „disabledFields“ jetzt auch im MatchClient konfigurieren und zwar mit den Checkboxen über den Eingabefeldern.
  • Über den REST-Request „GET matchService/admin/V2/ping/“ kann man jetzt den Status eines Projektes abfragen.

Behobene Probleme

  • Fehler #910: Bei einem Batch-Lauf mit konfigurierter Partitionierung konnte es bisher vorkommen, dass die Gruppennummern(match.groupId) nicht aufsteigend sortiert wurden. Dieser Fehler ist nun behoben.
  • Fehler #1012: Bei einem Upgrade einer älteren Version (1.16 abwärts), wurde die Datei security.xml nicht angelegt. Diese wird nun bei einem Upgrade angelegt, wenn sie noch nicht vorhanden ist.
  • Fehler #1015: Bei einem Batch-Lauf mit konfigurierter Partitionierung konnte es bisher vorkommen, dass die Gruppen(Kopf- und Folgedubletten-Wertepaare) nicht aufsteigend sortiert wurden, dieser Fehler ist nun behoben. Die Gruppen werden nun aufsteigend nach dem match.Key der Kopfdublette sortiert.

Bekannte Probleme

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.17, 13.4.2012

Ankündigungen

  • Dieser Release enthält alle Patches der vorherigen Version (1.16).
  • Der Service kann jetzt geschützt werden, so dass nur Abfragen möglich sind, wenn ein Benutzername und Passwort angegeben werden. Dies gilt auch für administrative Anfragen (Projekt neukonfigurieren, etc.)
  • Die Klasse APIException enthält eine neue Methode (isAuthenticationError()), um herauszufinden, ob ein Servicefehler sich auf ein Authentisierungs- oder Authorisierungsproblem bezieht.
  • Es gibt ein Kommandozeilenwerkzeug (matchFileTest), mit dem man die Synonymersetzung und die Normalisierung austesten kann. Dies ist auch über das GUI möglich.
  • Es gibt ein Kommandozeilenwerkzeug (matchAdmin), mit dem man den Service Status abfragen kann, oder ein Projekt neukonfigurieren kann.
  • Die Anzahl der maximalen, parallelen Verbindungen der matchJAPI zu einem Server wurde von 2 auf 50 erhöht.
  • Bei Zugriffen auf den Match-Service wird jetzt in der JSON-Response die reqId des Request widergespiegelt.
  • Die neuhinzugefügten Attribute aus Release 1.15 (ruleCut, enforceOrder und disorderedScore) lassen sich jetzt auch über die grafische Benutzeroberfläche konfigurieren.
  • Die Abarbeitungsreihenfolge der Matchregeln kann über die Benutzeroberfläche festgelegt werden. Sie entspricht immer der Reihenfolge der Regeln, wie sie im Navigationsbaum oder der Regelübersicht angezeigt wird. Die Reihenfolge kann per Drag & Drop auf den Regeln im Navigationsbaum geändert werden und verhält sich ähnlich zur Reihenfolgeänderung der Matchmethoden.
  • Es wird jetzt ein Programm (matchKernelUtility) mit installiert, dass benutzt werden kann, um die Versionsnummer der Kernelbibliothek zu ermitteln.
  • Es wird ein Programm (matchAdmin) mit installiert, dass benutzt werden kann, um per shell/batch ein Projekt neu zu konfigurieren oder einen Index zu speichern.
  • In Vorbereitung für die Möglichkeit den Service mit https zu nutzen, kann man bei der Erstellung einer Service Produktinstanz im GUI jetzt das Protokoll (HTTP oder HTTPS) auswählen. Achtung, dies führt dazu, dass Anfragen an den Service aus dem GUI heraus das angegebene Protokoll verwenden. Dies ändert nicht das Protokoll des Services selbst.
  • Es gibt jetzt eine Alpha-Version des MatchClients. Dabei handelt es sich um eine graphische Benutzeroberfläche, die per Button-Klick Anfragen an einen laufenden Match-Service stellt und dessen Ergebnisse anschaulich aufbereitet. Zu starten über die Kommandozeile (matchClientGUI).

Behobene Probleme

  • Fehler #846: Wenn der Service vorzeitig beendet wurde und der Index nicht gespeichert wurde, dann wurde beim Neustart die Backlog-Datei mit den letzten Änderungen nicht geladen, so dass Änderungen am Index seit dem letzten Speichern verloren waren. Dies ist nun korrigiert.
  • Bei einer Installation unter SuSE-Linux wird nun das service.sh Skript so angepasst, dass der StartStop-daemon nicht verwendet wird, da dieser unter SuSE-Linux nicht verfügbar ist.
  • Fehler #831: Bei Verwendung des Hausnummernfelds wurden Leerzeichen zwischen Hausnummer und Nummern-Ergänzung zu kritisch bewertet. Sie werden nun ignoriert.
  • Fehler #836: Bei Verwendung des Multistring-Felds wurde das Resultat nicht korrekt berechnet, wenn die Tokens einander sehr ähnlich waren.
  • Fehler #912: Wenn eine Synonymdatei konfiguriert ist, aber keine Synonyme verwendet werden, kam im Tracefile eine NullPointerException auftreten. Dies passiert jetzt nicht mehr.
  • Fehler #913: Der Service liefert Fehler, wenn die Normalisierung verwendet wird, und wenn inputFieldmaps für den InitialLoad definiert ist und eine für den Service definiert sind, die sich in der Anzahl der Felder unterscheiden. Für die Normalisierung hat der Service dann die falsche Map verwendet. Mit der Behebung benutzt der Normalisierer jetzt die korrekte inputFieldmap.
  • Fehler #938: Wenn unter Windows in einer Produkt-Instanz im GUI als Pfad für eine Konfigurationsdatei vorne ein „/“ verwendet wird, dann funktioniert der Aufruf des Batches nicht vom GUI aus. Das Problem wurde behoben.
  • Fehler #940: Wenn man im GUI die Synonymdatei verändert hat, dann werden die Änderungen nicht sofort wirksam. Man kann bspw. keine neuangelegte Synonymliste auswählen. Dies ist jetzt möglich.
  • Fehler #976: Wenn man für den Service die Felder „match.RuleId“ und „match.RuleName“ auf dasselbe Ausgabefeld mappt, dann tritt ein interner Fehler auf. Dies liegt daran, dass „match.RuleId“ eine Zahl und „match.RuleName“ ein String sind. Der Fehler wurde behoben, so dass dies jetzt möglich ist.
  • Fehler #977: Es war über die REST-Schnittstelle möglich einen Eintrag mit einem leeren Schlüssel im Index anzulegen. Der Service liefert jetzt einen Fehler, wenn der Parameter „match.Key“ zwar vorhanden, aber leer ist.
  • Fehler #855: Wenn ein bestehender Multi-String Eintrag im Index verändert wird und dabei die Partition wechselt, kann ein interner Fehler auftreten. Dieser Fehler wurde behoben.
  • Fehler #907: Beim Schreiben von langen Werten bei der Indexspeicherung tritt ein Pufferüberlauf ein. Dieser Fehler wurde behoben.
  • Fehler #948: Unter Windows führt die häufige Benutzung der Skripte (wie bspw. matchBatch) aus dem gleichen Command-Fenster dazu, dass irgendwann das Environment voll ist, weil jedesmal die PATH Variable erweitert wird. Dieser Fehler wurde behoben.

Bekannte Probleme

  • Fehler #956: Bei einem GetByKey-Request sollte für einen nicht existierenden EK ein definierter Service-Fehler kommen. Es kommt stattdessen „OK“ und ein leeres Resultat.
  • Fehler #985: Wenn ein Service, der bereits gestartet wurde und Einträge im Index hat, neugestartet wird mit der Option autoLoad=“N“ und eine originalDatabase ist konfiguriert, dann ist zwar nach dem Start der Index leer (weil er nicht geladen wurde), aber die Datenbank nicht. Das Einfügen vermeintlich neuer Datensätze mit einem Index, den es in der originalDatabase schon gibt, schlägt dann fehl. Daher sollte man, wenn man autoLoad=“N“ setzt, immer die bestehende originalDatabase löschen und durch die leere aus dem template „empty_db_for_originalData_storeOnly.h2.db“ ersetzen.
  • Fehler #993: Zur Zeit kann man mit der neuen Security-Konfiguration noch keine Gastbenutzer einrichten, die bestimmte Aktionen ohne Username/Passwort ausführen können.

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.16 PATCH 3, 22.12.2011

Ankündigungen

Dies ist ein PATCH. Dieser Patch ersetzt alle vorherigen Patches. Der Patch enthält keine neuen Features.

Behobene Probleme

  • Fehler #840: Originaldaten werden nicht gesichert, wenn POST (statt PUT) für insert verwendet wird.

Bekannte Probleme

  •  keine

Voraussetzungen

  •  siehe Handbuch

Installation/De-Installation

  •  siehe Handbuch

Release 1.16 PATCH 2, 02.11.2011

Ankündigungen

Dies ist ein PATCH. Der Release enthält keine neuen Features.

Behobene Probleme

  • Fehler #651: Probleme mit dem Start als Windows Service unter 64-bit Windows.
  • Fehler #717: Wenn in einer outputmap mehrere Felder auf eines gemappt werden und eines der Felder nicht gesetzt ist, dann wurde in der Ausgabe das Wort „null“ angehängt.
  • Fehler #823: Die Berechnung des Scores bei Multistring-Feldern war nicht korrekt, wenn ein Token mehrfach auftrat.

Bekannte Probleme

  •  keine

Voraussetzungen

  •  siehe Handbuch

Installation/De-Installation

  •  siehe Handbuch

Release 1.16, 1.6.2011

Ankündigungen

  • Leichte Performanceverbesserungen im Match-Kernel
  • Neuere h2-Datenbankversion eingebaut
  • Beispiel für die Normalizer-Datei (normalizer.ini) überarbeitet und korrigiert.

Behobene Probleme

  • Fehler #326: Irreführende Fehlermeldung bei falschem Attribut in XML Datei
  • Fehler #329: NullPointer-Exception in API, wenn man per setInputValue einen NULL-Wert an ein Feld bindet.
  • Fehler #332: Pro fehlerhafte Zeile im Input wird eine Exception geloggt
  • Fehler #339: GUI Port wird nicht korrekt konfiguriert bei der Installation

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.15, 6.5.2011

Ankündigungen

  • Das neue Attribute ‚ruleCut‘ für Profile und Regeln erlaubt den Abbruch der Regel-Auswertung, sobald für eine Regel ein Treffer gefunden wurde. Ist das Attribut für ein Profil auf ‚Y‘ gesetzt, wird bei der ersten Regel abgebrochen, für die ein Treffer auftritt. Ist das Attribut stattdessen für eine oder mehrere Regeln auf ‚Y‘ gesetzt, wird nur für diese speziellen Regeln die Regel-Auswertung beendet.
    Diese Eigenschaft wird noch nicht durch die grafische Benutzeroberfläche unterstützt.
  • Bei der Bewertung von Treffern kann nun sichergestellt werden, dass nur dann eine Bewertung von 100 vergeben wird (maximale Übereinstimmung), wenn die Reihenfolge der String-Bestandteile zwischen Suchanfrage und indiziertem String übereinstimmen. Ohne diese Eigenschaft sind ‚Hans Mustermann‘ und ‚Mustermann Hans‘ nicht unterscheidbar.
    Das neue Verhalten wird aktiviert mit dem Attribut ‚enforceOrder‘ eines Profil-Felds. Zusätzlich ist über das Attribut ‚disorderedScore‘ die Bewertung vorgebbar, die vergeben wird, wenn ohne ‚enforceOrder‘ eine Bewertung von 100 erreicht würde, die Reihenfolge aber nicht simmt. Der Standardwert hierfür ist 99.
    Diese Eigenschaft wird noch nicht durch die grafische Benutzeroberfläche unterstützt.

Behobene Probleme

  • keine

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.14, 8.4.2011

Ankündigungen

  • Der Match-Service kann jetzt in einer ersten Variante über die GUI administriert werden. Dazu wurde ein neuer Typ für die Produktinstanz mit dem Namen „Service-Instanz“ freigeschaltet. Für diesen neuen Produktinstanztyp kann der Port und der Host unter dem der match-Service läuft angegeben werden. Danach sind folgende administrative Operationen möglich:
    • Laufzeitstatus ermitteln zeigt den Status der Laufzeiteinstellungen des Match-Services an.
    • Laufzeiteinstellung aktualisieren übernimmt geänderte Laufzeiteinstellungen der Match-Service-Konfiguration.
    • Projektstatus ermitteln zeigt den Status des ausgewählten Projektes an.
    • Projekteinstellung aktualisieren übernimmt geänderte Projekteinstellungen des ausgewählten Projektes.
    • Projekt starten startet das ausgewählte Projekt im Match-Service.
    • Projekt stoppen stoppt das ausgewählte Projekt im Match-Service.
    • Index sichern sichert den aktuellen Stand des Indexes für das ausgewählte Projekt
    • Index exportieren exportiert den aktuellen Stand des Indexes in eine CSV-Datei, sofern eine outputFieldmap mit mode=“export“ in der Konfiguration existiert.
  • Das Handling der Eingabe- und Ausgabezuweisungen in der GUI wurde verbessert.
  • Die GUI bietet jetzt die Möglichkeit zwei Eingabefelder aus der Eingabe oder zwei Eingabefelder aus der Referenz zu einer Gruppe hinzuzufügen. Dafür muss ein Eingabefeld in ein bereits gefüllte Gruppe auf das geteilig typisierten Feld gezogen werden (gelbes Feld auf rotes Feld oder umgekehrt).
  • Die Urladung gestartet über die GUI kann jetzt wahlweise mit der „-delete“ Option aufgerufen werden

Behobene Probleme

  • keine

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.12, 18.2.2011

Ankündigungen

  • In der XML Konfiguration gibt es jetzt ein neues Attribut „version“, dass in späteren Versionen benutzt wird, um zu erkennen, ob die Datei mit der aktuellen Version geladen werden kann, oder ob eine Anpassung der Datei nötig ist.

Behobene Probleme

  • keine

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.11, 21.01.2011

Ankündigungen

  •  Eine erste Version einer MatchGUI ist absofort verfügbar. Installation und Nutzung siehe Handbuch.

Behobene Probleme

  • keine

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.9, 29.11.2010

Ankündigungen

  • Das Format und die Namensgebung der Index-Dateien des Match-Service haben sich geändert.
    Aus diesem Grund ist bei Verwendung dieser Release eine erneute Urladung notwendig.

Behobene Probleme

  • keine

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.6, 27.09.2010

Ankündigungen

  • Es gibt jetzt einen neuen Feldtyp für Hausnummern (HOUSENUMBER), der für Hausnummern besser geeignet ist als SINGLESTRING.
    Im Profil werden die folgenden neuen Attribute unterstützt:

    • rangeScore: score für Match einzelner Hausnummern mit Hausnummernbereichen sowie für Match zwischen Hausnummern, die sich nur in einer Nummern-Ergänzung unterscheiden.
    • maxDistance: maximaler Abstand einzelner Hausnummern, so dass sie noch als ähnlich erkannt werden (Bsp.: maxDistance=2, dann werden 9 und 11 als ähnlich angesehen).
    • distanceScore: score für einzelne Hausnummern, die innerhalb von maxDistance liegen.

Behobene Probleme

  • keine

Bekannte Probleme

  • keine

Voraussetzungen

  • siehe Handbuch

Installation/De-Installation

  • siehe Handbuch

Release 1.4, 13.08.2010

Ankündigungen

  • Die Beispiele für die APIs liegen jetzt unter client//examples/match
  • Im MatchService können nun die original Daten zu den Match-Ergebnissen abgefragt werden, dazu muss eine H2 Datenbank mit folgendem Aufbau in der Matchkonfiguration hinterlegt werden.
    • Eine Tabelle mit Namen: Matchfields
    • Darin 3 Spalten: matchKey (integer(10), not null), fieldname (varchar(255), not null), value (varchar(511))
    • Primärschlüssel: matchKey + fieldname

    Um Datenbanken zu konfigurieren gibt es ein neues Tag database innerhalb des Tags matchProject. Damit die orginalen Daten dort gespeichert werden können muss das neue Attribut originalDatabaseRef im matchProject auf die id des database Tags gesetzt werden. Pro Request können dann mit resultMode gleich 3 über die Java-API die Originaldaten der Match-Ergebnisse abgefragt werden.

  • Mit resultMode gleich 4 lassen sich nun im MatchService auch die normalisierten Daten der Match-Ergebnisse abfragen.
  • Es ist nun im MatchService möglich den Hauptspeicherverbrauch zu beschränken. Dazu muss das Tag paging im matchProject gesetzt sein indem die maximale Verbrauch des Hauptspeichers angegeben werden kann und indem eine H2 Datenbank für die überschüssigen Daten hinterlegt werden muss. Die H2 Datenbank wird mit einer Referenz auf ein database Tag angegeben und hat folgenden Aufbau.
    • Eine Tabelle mit Namen: Pages
    • Darin 3 Spalten: object_type (number(2)), field_id (number(4)), part_id (number(4), page_id (number(10)), raw_data (binary))
    • Primärschlüssel: object_type + field_id + part_id + page_id

Behobene Probleme

  •  keine

Bekannte Probleme

  • #95: Beim Selbstabgleich kann es zu leeren Dublettengruppen kommen
  • #112: Das tag muss in der Konfiguration vorkommen

Voraussetzungen

  •  siehe Handbuch

Installation/De-Installation

  •  siehe Handbuch

Release 1.3, 26.07.2010

Ankündigungen

  • Für Regeln (Rules) können nun Verarbeitungs-Bedingungen (Conditions) angegeben werden. Conditions steuern, für welche Eingabewerte welche Regeln angewendet werden. Es existieren folgende Typen von Conditions (Attribut ‚conditionType‘):
    • DONT_CARE: Feld wird bei der Condition-Auswertung nicht berücksichtigt
    • EMPTY: Condition ist erfüllt, wenn das Feld leer ist oder nur Blanks enthält
    • VALUE: Condition ist erfüllt, wenn das Feld einen bestimmten Wert enthält (konfiguriert in Attribut ‚conditionValue‘)
    • REGEXP: Condition ist erfüllt, wenn der Feldwert auf einen regulären Ausdruck passt (konfiguriert in Attribut ‚conditionValue‘)

    Falls für ein Match-Feld für eine Regel keine Condition definiert ist, wird das Feld für die Condition-Auswertung nicht berücksichtigt. Jede Bedingung ist invertierbar (Attribut ‚conditionInvert‘), so dass z.B. eine Regel verwendet wird, wenn ein bestimmtes Feld NICHT leer ist.
    Achtung: Eingabewerte durchlaufen die Normalisierungs-Komponente, bevor sie für die Condition-Prüfung herangezogen werden. Das muss insbesondere beachtet werden bei den Condition-Typen VALUE und REGEXP.

  • Alle relativen Pfade in den Konfigurationsdateien sind nun abhängig vom Ort, an dem das Produkt gestartet wurde. Services laufen immer direkt in Installationsverzeichnis.
  • Sollen relative Pfade im Installationsverzeichnis gesucht werden, so kann nun $TOLERANT_HOME vor den Pfad geschrieben werden. Dies gilt für alle Platformen.
  • Die Skripte im bin Verzeichnis können nun von überall aus ausgeführt werden. Man muss nicht mehr zwingend in den bin Ordner wechseln.
  • In der Datei tolerantservice.conf sind mehrere Platzhalter für den Installationspfad ([installdir]) enthalten, die jetzt bei der Installation ebenfalls ersetzt werden müssen (Dies gilt nur für Windows).
  • Das Attribut „writeCleanFiles“ für das Tag „matchProject“ ist entfallen.

Behobene Probleme

  •  keine

Bekannte Probleme

  • #95: Beim Selbstabgleich kann es zu leeren Dublettengruppen kommen
  • #112: Das tag muss in der Konfiguration vorkommen

Voraussetzungen

  •  siehe Handbuch

Installation/De-Installation

  •  siehe Handbuch

Release 1.2, 05.07.2010

Ankündigungen

  • Support von SOLARIS 10 (Sparc)
  • Aufgrund von Fehler (#<86>) haben sich einige Tags/Attribute im XML Format der Konfigurationsdatei geändert:
    • Das Tag outFieldmapItem ist zu outputFieldmapItem geworden
    • Das Tag resultFieldmap ist zu outputFieldmap geworden
    • Das Tag cleanFieldMap ist entfallen
    • Das Attribut indexInputRef heißt jetzt indexRef
    • Das Attribut indexInputFieldRef heißt jetzt indexFieldRef
    • Das Attribut outFieldRef heißt jetzt outputFieldRef
    • Das Attribut resultFieldmapRef heißt jetzt outputFieldmapRef
  • Beim initialen Befüllen des Indexes für den Service, kann nun bei matchInitialLoad noch die Option „-delete“ verwendet werden, um vorher einen eventuell alten Index-Store und ein Backlog zu löschen (#<70>)

Behobene Probleme

  • Wenn in der Konfigurationsdatei für eine CSV Datei keine Enclosure gesetzt wird, dann wird immer “ benutzt. (#<77>)
  • Wird ein Verzeichnisname für die Konfigurationsdatei für einen Batchlauf angegeben, dann gibt es eine seltsame XML Fehlermeldung (#<103>)
  • Wenn in der Konfigurationsdatei für eine CSV Datei ein Enclosure gesetzt wird, dass mehrere Zeichen umfasst, gibt es eine Exception (#<87>)
  • Einige tags/attribute im XML sind inkonsistent. Die config.dtd muss angepasst werden (#<86>)
  • Die Feldnamen in matchJAPIExample passen nicht zur Beispielkonfiguration (#<72>)
  • Das Logging für den Partitionierungsschritt muss verbessert werden (#<73>)
  • Der Batch wird beendet, wenn beim Partitionierung eine zu kurze Zeile (zu wenige Spalten) aus der Eingabedatei gelesen wird (#<75>)
  • Wird ein Selbstabgleich ausgeführt, dann gibt der Batch zuviele Punkte auf der Konsole aus (#<76>)
  • Wird eine outputFieldmap mehrfach verwendet, so sollte eine Fehlermeldung kommen (#<79>)
  • In der Beispielkonfiguration wird ein normalizer.ini referenziert, dass fehlt (#<81>)
  • Der Partitionierungsschritt muss die Anzahl der Spalten in der Eingabedatei prüfen (#<84>)
  • Nach der Partitionierung muss die Anzahl der fehlerhaften Zeilen ausgegeben werden(#<85>)
  • Es muss überprüft werden, ob im matchOutput tag ein useInput* Attribut gesetzt ist, ansonsten ist die Ausgabe leer (#<88>)
  • Eingabedatei für matchInput und outputFieldmap müssen übereinstimmen (#<91>)
  • Alle matchMethod und matchOutput Tags müssen verschiedene outputFieldmaps verwenden (#<90>)
  • Ausgabe der Zeilenzahl für eine Methode ist falsch (#<93>)
  • Beim Erstellen des Cleanfiles werden keine Synonyme ersetzt und dass führt bei der Ausgabe zu leeren Feldern (#<94>)
  • Tritt ein OutOfMemory Fehler auf, muss das Batch beendet werden (#<96>)
  • Aufgrund des Threadings kann es beim Selbstabgleich bei zwei Läufen unterschiedliche Ergebnisse geben, je nachdem in welcher Reihenfolge die Eingabedaten verarbeitet werden (#<97>)
  • headFromInput muss auf „Y“ stehen, wenn es sich um einen Selbstabgleich handelt (#<98>)
  • Die Ausgabe der gelesenen Zeilen bei mehreren hintereinander ausgeführten Methoden addiert sich und zeigt daher zu hohe Werte an (#<109>)
  • Ist keine innerPartitioning angegeben, so bringt der Match Batch einen Fehler (#<111>)
  • Die API Funktion getIndexLineByKey() der Java-API funktioniert nicht(#<69>)
  • Die Dateien startExample.* heißen jetzt startMatchExample.* (#<71>)
  • Das Java-API Beispiel enthält keinen Code für den Zugriff auf die Felder (#<83>)
  • Wenn man mehrere Projekte in einer Konfigurationsdatei hat, dann gibt es Fehler, wenn gleiche IDs in den Projekten verwendet werden (#<105>)
  • Wenn der Index leer ist, dann dauert eine Suche ca. 1 Sekunde (#<100>)
  • Mehrere Regeln beeinflussen sich gegenseitig bei der Suche (#<101>)
  • Aufgrund eines OutOfMemory Problems im MatchKernel stürzt der Batch mit Segmentation Violation ab(#<102>)
  • Bei der Regelverarbeitung werden die inneren Partitionen nicht korrekt durchsucht(#<106>)
  • Ist ein Multi-String Feld leer, aber der emptyFieldScore gesetzt, so gibt es einen Fehler(#<107>)
  • Vor dem Initial Load soll es möglich sein, den index-store zu löschen(#<70>)
  • Gibt man in matchOutput eine nicht existente outputFieldmapRef an, so gibt es keinen Konfigurationsfehler(#<89>)

Bekannte Probleme

  •  keine

Voraussetzungen

  •  siehe Handbuch

Installation/De-Installation

  •  siehe Handbuch