Update an existing installation

Follow update notes

map.apps Smart Search Extension is very closely linked with smart.finder. Therefore, the procedure for updating an existing installation is similar. Please follow relevant update notes for smart.finder server in the smart.finder documentation.

Update Smart Search Bundle

To update the smart search bundles, perform the following steps:

  1. Navigate to the map.apps manager in the browser.

  2. Open the Bundles tab.

  3. Click + Upload and upload the JAR file with the new bundle version.

Migration of the indexing jobs

If a schema update is rolled out with a new version, the current indexes can no longer be used. It is then necessary to transfer the indexing job to the new smart.finder server version and run it again so that the indexes are recreated. This section describes how to perform the migration.

If you have only created one or two indexing jobs in the old smart.finder instance, you can also enter the jobs again manually via the job manager interface of your browser, see Creating indexing jobs. The migration tool described below is only worthwhile if you have a larger number of indexing jobs.

The migration of the indexing jobs is performed using the smart.finder CLI. This involves first backing up the jobs from the old smart.finder server instance locally and then saving them to the new smart.finder server instance.

First make sure that you have installed the smart.finder CLI, see Installation of the smart.finder CLI.

The basic usage of the CLI is described in Command Line Interface (CLI).

smart.finder server authentication

Check which authentication method is configured in the new smart.finder server instance. This information can be found in the file [USER_HOME]/.mapapps/application.properties. Look for the property security.mode:

Migrate jobs

Save jobs with security token

  1. Create a new security token to access your smart.finder server instance. Enter the following command in the command line.

     $ finderctl generate-token
    Generate an authentication token for managing indexing jobs.
    
    ✔ Username: ·
    ✔ Password: ·
    
    Your authentication token is:
    [...]

    Use the login data that you use to log in to the smart.finder server instance. A security token will be generated and displayed on the console.

  2. Remember this security token for further requests to the smart.finder server instance.

  3. For saving the indexing jobs enter the following command:

    $ finderctl jobs get -t <token> -u <url> -d <directory>

    Set the following values for the variables:

    <url>

    The URL to the smart.finder backend, e.g. https://mysmartsearch-alt/smartfinder-search.

    <directory>

    The destination directory where the indexing jobs are stored, e.g. c:/smartsearch/jobs.

    <token>

    The previously generated base64 encoded security token.

  4. Now send the previously saved jobs to the new smart.finder instance.

    $ finderctl jobs put -t <token> -u <url> -d <directory>

    Set the following values for the variables:

    <token>

    The generated security token.

    <url>

    The URL to the new instance of the smart.finder backend, e.g. https://mysmartsearch-neu/smartfinder-search. The URL is identical to the URL entered for the finder.service.url configuration property in the map.apps Smart Search application.properties file.

    <directory>

    The source directory where the jobs were previously saved, e.g. c:/smartsearch/jobs.

  1. Log in to the smart.finder server instance to create a domain session cookie. This will be stored temporarily on your computer and will be used automatically for all further requests.

    $ finderctl login -u http://smartfinder-host.example.com/server
    
    Please enter your credentials to login to smart.finder.
    ? Username: admin
    ? Password: [hidden]

    A successful login is confirmed in the console and a domain session cookie is temporarily stored locally.

  2. For saving the indexing jobs enter the following command:

    $ finderctl jobs get -u <url> -d <directory>

    Set the following values for the variables:

    <url>

    The URL to the smart.finder backend, e.g. https://mysmartsearch-alt/smartfinder-search.

    <directory>

    The destination directory where the indexing jobs are stored, e.g. c:/smartsearch/jobs.

  3. Now send the previously saved jobs to the new smart.finder instance.

     $ finderctl jobs put -u <url> -d <directory>
    <url>

    The URL to the new instance of the smart.finder backend, e.g. https://mysmartsearch-neu/smartfinder-search. The URL is identical to the URL entered for the finder.service.url configuration property in the map.apps Smart Search application.properties file.

    <directory>

    The source directory where the jobs were previously saved, e.g. c:/smartsearch/jobs.

  4. After successful migration, you can log off using the following command. This will remove the locally stored domain session cookie from your computer:

     $ finderctl logout

Verify the migration

Open the job manager. All jobs that have been transferred from the old version should now be listed here. Now run the jobs again from the interface to recreate the associated indexes.

Indexing schema adjustments

If you have made changes in the files /WEB-INF/solr.home/<CORENAME>/schema.xml as well as /WEB-INF/solr.home/<CORENAME>/solrconfig.xml you must apply these changes to the new smart.finder 2.0.x instance accordingly.

With smart.finder 2.0.x a separate core for the map.apps Smart Search Extension is delivered. You can use this core for documents from a Smart Search indexing, but you still have the option of leaving all documents in the default schema core0. If you want to use the Smart Search schema, you must copy the customized parts from the core0 schema.