LATEST VERSION: 3.1.0 - RELEASE NOTES
Pivotal® Greenplum® Text v3.1.0

GPText Management Utilities

Management utilities are GPText command-line utilities that are used to manage the GPText cluster. The utilities must be run on the Greenplum master as the gpadmin user.

To ensure the GPText command-line utilities can be found on the path, source the Greenplum Database and GPText environment scripts. The Greenplum Database environment must be set before you source the GPText environment script. For example, if both Greenplum Database and GPText are installed in the /usr/local/ directory, enter these commands:

$ source /usr/local/greenplum-db-<version>/greenplum_path.sh
$ source /usr/local/greenplum-text-<version>/greenplum-text_path.sh

Help

To get help for a utility, specify the flag -h or --help. A short help message displays with a list of parameters.

Debugging

To get verbose output for debugging a utility, specify the flags -v or --verbose.

GPText Utilities

  • gptext-backup – backs up a GPText index to a shared file system.
  • gptext-config – performs GPText configuration options.
  • gptext-expand – adds new GPText nodes to existing hosts in the cluster.
  • gptext-external – manages configurations for external data sources.
  • gptext-installsql – installs or removes the gptext schema and user-defined functions in Greenplum databases.
  • gptext-migrator – installs the GPText binaries into an upgraded Greenplum Database system.
  • gptext-recover – restarts GPText nodes that are down.
  • gptext-replica – adds or drops a replica of an index shard.
  • gptext-restore – restores a GPText index from a backup on a shared file system.
  • gptext-start – starts or restarts the GPText cluster.
  • gptext-state – display the state of the GPText cluster and indexes.
  • gptext-stop – shuts down the GPText cluster.
  • gptext-uninstall – uninstalls GPText, including data and installed files, and ZooKeeper nodes if they were installed with the GPText installer.
  • gptext-upgrade - upgrades a GPText system to a new GPText version.
  • zkManager – checks the ZooKeeper cluster state. If ZooKeeper was installed with GPText, zkManager can start or stop the ZooKeeper cluster.

gptext-backup

Backs up a GPText index to local storage on the Greenplum Database cluster or to a shared file system.

Syntax

gptext-backup -h

gptext-backup local [-p <path>] -i <index> [-v]

gptext-backup -p <path> -i <index> [-n <name>] [-v]

gptext-backup -c -p <path> -i <index> [-v]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-c

--backup_conf

Back up configuration files only. The -c option cannot be used with the local keyword or the -n option.
local Save backup to local storage.
-p <path>

--path <path>

If the local keyword is included, this is the directory where the utility creates the backup. If no path is specified, backup files are created in the Greenplum Database master and segment data directories. The backup name and locations of the backup files are reported in the output of the command.

If the local keyword is omitted, this is the path on the shared file system where the backup will be saved. The file system must be accessible from all hosts in the cluster and it must be readable and writable by the gpadmin user.

-i <index_name>

--index <index_name>

The name of the GPText index to back up.
-n <backup_name>

--name <backup_name>

A name for the backup on the shared file system. The -n option cannot be used with the local keyword or the -c option.

Notes

Back up an index so that you can restore it to a different GPText system or to avoid having to reindex if the existing index becomes corrupted.

A full GPText index backup includes index configuration files from ZooKeeper and index data up to the last transaction committed with the gptext.commit_index() function. Each index shard is backed up separately.

You can optionally back up just the index configuration files using the -c option.

You can back up an index to a shared file system or to local Greenplum Database cluster storage.

Back Up to Local Greenplum Database Cluster Storage

Use the gptext-backup local command to back up a GPText index to local storage.

For local backups, the utility generates a backup name in the format <index-name>_<timestamp>, for example demo.wikipedia.articles_2018-05-07T17:13:32.064427. The --name option is not allowed with local backups.

On the master host, gptext-backup creates a JSON file, <backup-name>.json, containing metadata about the backup, and a directory, <backup-name>, containing copies of the ZooKeeper configuration files for the index. The default backup directory on the master host is the Greenplum Database master data directory, specified by the MASTER_DATA_DIRECTORY environment variable.

gptext-backup local writes a backup file for each index shard on the host with the GPText node managing the lead replica for the shard. These files have names in the format snapshot.<index-name>_shard<n>_<timestamp>, for example snapshot.demo.wikipedia.articles_shard1_2018-05-07T17:13:32.064427. By default, these files are saved in the segment data directories.

You can specify a backup directory for the backup with the --path (-p) option. The directory must exist on all hosts in the cluster and be writable by the gpadmin user.

This example backs up the demo.wikipedia.articles index to the default backup locations.

$ gptext-backup local -i demo.wikipedia.articles
20180504:12:35:07:006126 gptext-backup:mdw:gpadmin-[INFO]:-Execute GPText cluster backup.
20180504:12:35:08:006126 gptext-backup:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
20180504:12:35:10:006126 gptext-backup:mdw:gpadmin-[INFO]:-Check status of index demo.wikipedia.articles...
20180504:12:35:10:006126 gptext-backup:mdw:gpadmin-[INFO]:-Executing backup ...
20180504:12:35:10:006126 gptext-backup:mdw:gpadmin-[INFO]:-Processing ...
...
20180504:12:35:11:006126 gptext-backup:mdw:gpadmin-[INFO]:-Recording metadata of index "demo.wikipedia.articles" into "/data/gpmaster/gpseg-1/demo.wikipedia.articles_2018-05-04T12:35:10.594013.json" on master
20180504:12:35:11:006126 gptext-backup:mdw:gpadmin-[INFO]:-Backing up configuration of index "demo.wikipedia.articles" into "/data/gpmaster/gpseg-1/demo.wikipedia.articles_2018-05-04T12:35:10.594013" on master
20180504:12:35:12:006126 gptext-backup:mdw:gpadmin-[INFO]:-Backup "demo.wikipedia.articles_shard*_2018-05-04T12:35:10.594013" is located in "/data/gpdata1/primary" on each host
20180504:12:35:12:006126 gptext-backup:mdw:gpadmin-[INFO]:-Done.

Back Up to a Shared File System

If you back up to a shared file system, the shared file system must be mounted on all hosts with GPText nodes and must be writable by the gpadmin user. The file system could be, for example, an NFS mount or an SSH server with sshfs support. The file system must be configured and accessible before you execute the gptext-backup utility, and it must accept connections from each host in the cluster.

The gptext-backup utility creates a new subdirectory at the specified path with the backup name specified. The command fails if the directory already exists.

When the backup is complete, the backup directory contains the following:

backup.info
A text file containing three comma-separated strings: the database name, schema name, and index name for the index that was backed up.

backup.properties
A text file with properties that describe the backup, such as the date and time the backup started, the name of the backup, and the names of the Solr collection and collection configuration.

zk_backup
A directory containing the following files:

  • collection_state.json – a JSON file describing the status of the Solr collection.

  • configs/<collection-name>/ – a directory containing copies of the Solr configuration files stored in ZooKeeper for the index, for example managed-schema, solrconfig.xml, protwords.txt, stopwords.txt.

snapshot.shard0 … snapshot.shard_N_
A directory for each shard, with the files containing content of the shard.

If the backup fails—for example if there is insufficient disk space—an error message is displayed, but the backup directory is not removed. Be sure to remove the backup directory before restarting the backup.

The following example backs up the demo.twitter.message index to the twitter subdirectory on the /mnt/nas share.

$ gptext-backup -i demo.twitter.message -p /mnt/nas -n twitter
20180508:16:34:02:027794 gptext-backup:mdw:gpadmin-[INFO]:-Execute GPText cluster backup.
20180508:16:34:03:027794 gptext-backup:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
20180508:16:34:03:027794 gptext-backup:mdw:gpadmin-[INFO]:-Validate shared file system.
20180508:16:34:06:027794 gptext-backup:mdw:gpadmin-[INFO]:-Backup index: demo.twitter.message, into shared FS '/mnt/nas', as name: twitter.
20180508:16:34:06:027794 gptext-backup:mdw:gpadmin-[INFO]:-Processing ...
....
20180508:16:34:08:027794 gptext-backup:mdw:gpadmin-[INFO]:-Index backup successfully.
20180508:16:34:08:027794 gptext-backup:mdw:gpadmin-[INFO]:-Done.

Backup Configuration Files Only

The gptext-backup option -c (--backup-conf) creates a backup of just the GPText index configuration files from ZooKeeper. You can use the -p (--path) option to specify the directory where the backup is to be created. If you omit the -p option, the backup is created in the master data directory ($MASTER_DATA_DIRECTORY). The configuration files are saved in a directory with a name in the format <index-name>_<timestamp>.

This example creates a backup of the configuration files for the demo.wikipedia.articles index. The files are saved in the default location. The backup name, which you will need to restore the backup, is reported in the output.

$ gptext-backup -c -i demo.wikipedia.articles
20180508:17:17:26:000781 gptext-backup:mdw:gpadmin-[INFO]:-Execute GPText cluster backup.
20180508:17:17:27:000781 gptext-backup:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
20180508:17:17:29:000781 gptext-backup:mdw:gpadmin-[INFO]:-Recording metadata of index "demo.wikipedia.articles" into "/data/gpmaster/gpseg-1/demo.wikipedia.articles_2018-05-08T17:17:29.197515.json" on master
20180508:17:17:29:000781 gptext-backup:mdw:gpadmin-[INFO]:-Backing up configuration of index "demo.wikipedia.articles" into "/data/gpmaster/gpseg-1/demo.wikipedia.articles_2018-05-08T17:17:29.197515" on master
20180508:17:17:30:000781 gptext-backup:mdw:gpadmin-[INFO]:-Done.

gptext-config

Performs GPText configuration tasks:

  • Edit, append, upload, or list configuration files in ZooKeeper
  • Revert configuration file changes in ZooKeeper
  • Edit JVM configuration options
  • Upload jar files to the GPText home directory

Syntax

gptext-config -h | --help

gptext-config edit -f <file_name> -i <index_name> [-r] [-e]

gptext-config list -i <index_name> [--recursive]

gptext-config upload -l <path/local_file_name> -f <path/zookeeper_file_name> [-i <index_name>]

gptext-config append -l <local_append_file> -f <file_name> -i <index_name>

gptext-config jar -l <path/jar_file>

gptext-config jvm -o <jvm_options>

Parameters

The -f parameter is optional with gptext-config append and gptext-config upload. If you omit -f with the append command, then the local file is appended to a file of the same name in the top-level ZooKeeper directory for the index. If you omit -f with the upload command, then the utility uploads the local file to a file of the same name in the top-level ZooKeeper directory for the index.

Parameter Description
-h

--help

Displays a usage message and exits.
-i <index-name>

--index=<index-name>

Name of the index. If the index is for a partitioned table, you must specify the root partition name.
-f <filename>

--file=<filename>

The name of a ZooKeeper configuration file to edit, append, or upload. The -i option must be included to specify the index. The following files are supported:
  • solrconfig.xml – Contains most of the parameters for configuring Solr itself (see Configuring solrconfig.xml at the Apache Solr web site).
  • schema.xml – Defines the analyzer chains that Solr uses for various different types of search fields (see Setting up Text Analyzer Chains).
  • stopwords.txt – Lists words you want to eliminate from the final index. You can also edit language specific stopwords by specifying a filename in the format stopwords_language_code.txt, where language_code is a two-character code such as en, fr, or es.
  • protwords.txt – Lists protected words that you do not want to be modified by the analyzer chain. For example, <iPhone>.
  • synonyms.txt – Lists words that you want replaced by synonyms in the analyzer chain.
  • emoticons.txt – Defines emoticons for the text_sm social media analyzer chain (see gptext-start).
  • currency.txt – Defines exchange rates between one currency and another (see Working with Currencies and Exchange Rates at the Apache Solr web site).
  • jar_file – the name of a jar file to upload to <GPText_Install_Directory>/lib/.
-e <command>

--editor=<command>

Editor to use. Choices are any editor that takes a filename on the command line as a parameter. For example, vi, vim, emacs, nano, etc. If absent, vi is used.
-l <filename> The full path of a local file to append or upload to a ZooKeeper configuration file. gptext-config append appends the named file to a configuration file and distributes the resulting files. This uses the -f and -i parameters. -f names the configuration file to which you want to append the file named (including local path) with the -l parameter.

gptext-config upload uploads the specified local file to ZooKeeper. Specify the destination ZooKeeper file name with the -f option and specify the index name with the -i option. If you omit the -i option you must supply the full path to the file in ZooKeeper with the -f option, for example -f /gptext/configs/demo.wikipedia.articles/managed-schema.

When used with the gptext-confg jar command, -l must specify a local jar file to upload to the <GPText_Install_Directory>/lib/.

--recursive Optional. Use with the gptext-config list command to recursively list all configuration files directories available in subdirectories. By default, gptext-config list displays only those index configuration files and directory names in the top-level ZooKeeper directory for an index.
-r

--revert <filename>

Revert the named ZooKeeper file to the previous version.
-o “<JVM_Options>” Modifies JVM options. To ensure that the JVMs are restarted after changing JVM options, restart the GPText cluster using the gptext-stop and gptext-start utilities.

Notes

Use the gptext-config utility to modify, add, or list configuration files for a specified index.

Never edit the template configuration files. If you do, every index you create after editing the templates will be created with your modified versions. Use the gptext-config utility to ensure that you are editing the configuration files for your index, rather than the template configuration files.

gptext-config automatically reindexes after modifying files if the configuration changes require it.

If you use the -f (--file) parameter to edit one of the index configuration files, GPText automatically places the edited file in its proper directory.

To move an index configuration file from the local file system to the index configuration directory in all of the segments, use the upload command and specify the local file with the -l option and the destination ZooKeeper file with the -f (--file) option.

Examples

  1. Edit the managed-schema file in index demo.wikipedia.articles, using the vi editor:

    gptext-config edit -f managed-schema -i demo.wikipedia.articles -e vi
    
  2. Append the local file stopwords.add to stopwords.txt in index demo.wikipedia.articles:

    gptext-config append -l stopwords.add -f stopwords.txt -i demo.wikipedia.articles
    
  3. Revert file managed-schema in index demo.wikipedia.articles after editing it.

    gptext-config edit -f managed-schema -i demo.wikipedia.articles -r
    
  4. Upload the local file custom.txt to the ZooKeeper file custom.conf in index demo.wikipedia.articles:

    gptext-config upload -l custom.txt -f custom.conf -i demo.wikipedia.articles
    
  5. List all available configuration files for the index demo.wikipedia.articles:

    gptext-config list -i demo.wikipedia.articles --recursive
    
  6. Upload the jar file text.jar to the lib directory in the GPText home directory:

    gptext-config jar -l text.jar
    
  7. Set JVM options:

    gptext-config jvm -o "-Xms256M -Xmx400M"
    

gptext-expand

Expands a GPText cluster by adding new GPText nodes to existing hosts in a GPText cluster or to hosts added by the Greenplum Database gpexpand management utility. Replicas for indexes created after the new GPText nodes are added will be distributed across the new and existing nodes. Documents must be reindexed to rebalance replicas on existing hosts or, after expanding the Greenplum cluster, to redistribute the index to new shards.

Synax

gptext-expand -h 

gptext-expand -e -p <paths> [-d <database>] [-v] 

gptext-expand -H <new-hosts> [-d <database>] [-v]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-e

--existing

Adds GPText nodes to existing hosts in the GPText cluster. The `-p` option must also be supplied to specify the data directories for the new nodes.
-p

--expand_paths

Specifies paths to directories where the new GPText nodes’ data directories are to be created. These directories should be parallel to the Greenplum Database segment data directories. If there is more than one directory, place them in a comma-delimited list, for example -p /data1/nodes,/data1/nodes,/data2/nodes. Required when expanding on existing hosts.
-H

--new_hosts

Specifies the new hosts on which GPText is to be installed. Place multiple host names in a comma-delimited list, for example -H host1,host2,host3. See Notes for requirements for new hosts.
-d

--database

Specifies the name of a database containing GPText schema. If the `gptext-expand` utility fails to find a database containing the GPText schema because the user cannot access a database, use this option to specify an accessible database that contains the GPText schema.
-v

--verbose

Displays debug output.

Notes

  • The -p and -d options cannot be used together.

  • When new hosts are added to the Greenplum Database cluster, ensure that the following GPText prerequisites are installed before running gpexpand:

    • Java 1.8
    • Python 2.6 or greater
    • Linux lsof utility
    • All hosts in the cluster must be able to reach the new and existing hosts.
  • Existing replicas are not automatically redistributed. To rebalance replicas among the expanded GPText cluster, you must reindex.

  • When expanding to new hosts, you must reindex to redistribute the index among existing and new shards.

gptext-external

Manages configurations in ZooKeeper for external document sources.

Syntax

gptext-external -h

gptext-external upload -t <type> -c <config-name> -p <config-dir> [-d <database>] [-v] 

gptext-external list -t <type> [-d <database>] [-v] 

gptext-external delete -t <type> -c <config-dir> [-d <database>] [-v] 

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-t

--type

Specifies the type of the external document source. The valid types are 'ftp', 'hdfs', or 's3'.
-c

--cluster

A name for this external document source configuration. Use this name to reference the configuration in the gptext.external_login() function.
-p

--path

Specifies the path to a directory containing the configuration files to upload to ZooKeeper. See the Notes section for a list of the required configuration files.
-d

--database

Specifies the name of a database containing the GPText schema. If the `gptext-external` utility fails to find a database containing the GPText schema because the user cannot access a database, use this option to specify an accessible database that contains the GPText schema.
-v

--verbose

Displays debug output.

Notes

To index documents stored in an external document source that requires authentication, such as a Hadoop file system (hdfs), ftp server, or Amazon S3, you first upload the configuration and authentication files GPText needs to connect to the document source. Assemble the files in a local directory and then use the gptext-external upload command to upload the contents of the directory to ZooKeeper.

ftp
For ftp connections, create a local directory containing a single file, login.txt.

The login.txt file has three lines:

Line 1: The name of the user to log in to the ftp server.

Line 2: The user’s password. Enter the clear-text password in this file. The password is base64-encoded when GPText stores it in ZooKeeper.

Line 3: The maximum number of connections to create to the FTP server, an integer. If this line is omitted, each GPText node connects to the FTP server. If the number of connections exceeds the server’s maximum allowed connections GPText FTP connections will fail.

hdfs
For hdfs connections, create a local directory containing the following files.

  • The core-site.xml and hdfs-site.xml configuration files from the Hadoop server.
  • A file named user.txt. This file contains a single line identifying the username to use to log in to Hadoop. The user must have read permission in hdfs for the documents you want to index. If Kerberos is enabled in the Hadoop cluster, the username is the name of the Kerberos principal for the user.
  • If the Hadoop cluster is secured with Kerberos, also include the user’s keytab file and the krb5.conf file for the Kerberos realm.

s3
For s3 connections, create a local directory containing a single file, credential. Add two lines to the credential file:

Line 1: The AWS access key id.

Line 2: The AWS secret access key.

Upload the configuration files with the gptext-external upload command:

$ gptext-external upload -t <type> -c <config-name> -p <config-dir>

You can delete the configuration file directory after you upload the configuration directory to protect the user’s credentials.

To make changes to configuration files, edit the configuration files in the local directory and upload the directory again.

Run gptext-external list -t <type> to list configurations of the specified type.

Run gptext-external delete -t <type> -c <config-name> to remove the configuration from ZooKeeper.

gptext-installsql

Installs or removes the gptext schema and user-defined functions in databases.

Syntax

gptext-installsql -h 

gptext-installsql [-c] [-v] <db_name> [<db2_name>...]

Parameters

Parameter Description
-c

--clean

Removes the gptext schema and UDFs from the specified databases.
-h

--help

Displays a usage message and exits.
-v

--verbose

Displays debug output.

Notes

The gptext schema is reserved for use by GPText. The gptext-installsql utility drops and recreates the schema. If you add any database objects to the schema they will be lost when you reinstall the schema or upgrade the GPText system.

The gptext schema cannot be installed in the system databases postgres, template0, or template1.

Examples

  1. Install GPText UDFs in the gpadmin and demo databases.

    $ gptext-installsql gpadmin demo
    20170927:11:06:11:024015 gptext-installsql:gpdb:gpadmin-[INFO]:-Install GPText udf ...
    20170927:11:06:11:024015 gptext-installsql:gpdb:gpadmin-[INFO]:-Creating 'gptext' schema and UDFs in database gpadmin...
    20170927:11:06:11:024015 gptext-installsql:gpdb:gpadmin-[INFO]:-Creating 'gptext' schema and UDFs in database demo...
    20170927:11:06:12:024015 gptext-installsql:gpdb:gpadmin-[INFO]:-Validating gptext installation
    20170927:11:06:12:024015 gptext-installsql:gpdb:gpadmin-[INFO]:-Done.
    
  2. Delete GPText UDFs in database gpadmin.

    $ gptext-installsql --clean gpadmin
    20170927:11:10:34:024325 gptext-installsql:gpdb:gpadmin-[INFO]:-Clean GPText udf ...
    20170927:11:10:35:024325 gptext-installsql:gpdb:gpadmin-[INFO]:-Connecting to database gpadmin
    20170927:11:10:35:024325 gptext-installsql:gpdb:gpadmin-[INFO]:-Dropping 'gptext' schema and UDFs...
    20170927:11:10:35:024325 gptext-installsql:gpdb:gpadmin-[INFO]:-Validating clean operation
    20170927:11:10:35:024325 gptext-installsql:gpdb:gpadmin-[INFO]:-Done.
    

gptext-migrator

Migrates the current GPText system into an upgraded Greenplum Database cluster.

Syntax

gptext-migrator [-h | --help]

gptext-migrator [-v | --verbose]

Notes

The gptext-migrator utility relocates the current GPText system to a new Greenplum Database release.

The utility determines the destination Greenplum Database release from the environment. If the GPText system has already been migrated, or if the destination Greenplum release is unsupported, gptext-migrator outputs a message and quits.

If you are upgrading GPText and Greenplum Database at the same time, complete the Greenplum Database upgrade first, and then use gtext-migrator to add the current GPText version to the new Greenplum Database installation. Finally, use gptext-upgrade to upgrade the system to the new GPText version.

gptext-recover

Recovers GPText nodes.

Syntax

gptext-recover -h

gptext-recover -f [-v]

gptext-recover -H <new-host1>,<new-host2>,... [-v]

gptext-recover -r [-v]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-f

--force

Forces recovery for any GPText nodes that are down. If the node is unrecoverable, deletes the node, creates a new node, and recreates replicas.
-H

--new-hosts

Recover down nodes on new hosts. For example “host1,host2”. The number of new hosts must be equal to the number of failed hosts.
-r

--index_replicas

Recover replicas, but do not recover any down nodes.
-v

--verbose

Displays debug output.

Notes

The -f and -H options cannot be used at the same time.

If shards are down, gptext-recover advises you to reindex.

If no shards are down, gptext-recover restores any replicas that are down.

If any GPText nodes recovered using the -f or -H options fail to start, the replicas cannot be recovered. If this should happen, resolve the startup problem with the newly created nodes, and then recover the replicas using the gptext-recover -r option. It is important to recover replicas when all GPText nodes are healthy so that replicas will be distributed evenly among the nodes.

gptext-replica

Add or delete a replica for an index shard.

Syntax

gptext-replica -h

gptext-replica add -i <index-name> -s <shard> [-n <node>]

gptext-replica drop -i <index-name> -s <shard> -r <replica> [-o]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-i <index-name>

--index=<index-name>

Name of the index.
-f <filename>

--file=<filename>

The name of a file to edit, append, or upload. The -i option must be included to specify the index. The following files are supported:
  • solrconfig.xml – Contains most of the parameters for configuring Solr itself (see SolrConfigXml).
  • schema.xml – Defines the analyzer chains that Solr uses for various different types of search fields (see Setting up Text Analyzer Chains).
  • stopwords.txt – Lists words you want to eliminate from the final index. You can also edit language specific stopwords by specifying a filename in the format stopwords_language_code.txt, where language_code is a two-character code such as en, fr, or es.
  • protwords.txt – Lists protected words that you do not want to be modified by the analyzer chain. For example, <iPhone>.
  • synonyms.txt – Lists words that you want replaced by synonyms in the analyzer chain.
  • emoticons.txt – Defines emoticons for the text_sm social media analyzer chain. See gptext-start.
  • currency.txt – Defines exchange rates between one currency and another (see Working with Currencies and Exchange Rates at the Apache Solr web site).
  • jar_file – the name of a jar file to upload to <GPText_Install_Directory>/lib/.
-e <command>

--editor=<command>

Editor to use. Choices are any editor that takes a filename on the command line as a parameter. For example, vi, vim, emacs, nano, etc. If absent, vi is used.
-a <filename>

--append= <filename>

Appends a named file to a configuration file and distributes the resulting files. Requires the -f and -i parameters. -f names the configuration file to which you want to append the file named (including local path) with the -a parameter.
-r

--revert

<filename>
Revert named file to previous version.
-i <index>

--index= <index>

Required. The name of the index.
-s <shard>

--shard=<shard>

Required. The name of the shard to add a replica to.
-n <node>

--node=<node>

Optional. The node where the replica is to be added.
-r <replica>

--replica=<replica>

Required for the drop command only. The name of the replica to drop.
-o

--onlyifdown

Optional. Used only with the drop command. Only drop the replica if it’s down.

Notes

To find the name of a replica to drop, check gptext.index_status(). The name is core_nodeX where X is a number.

Examples

  1. Add a replica for index demo.wikipedia.articles in shard shard0, on node node1.

    gptext-replica add -i demo.wikipedia.articles -s shard0 -n node1
    
  2. Drop the replica named core_node1 for index demo.wikipedia.articles in shard shard0 if the replica is down.

    gptext-replica drop -i demo.wikipedia.articles -s shard0 -r core_node3 -o
    

gptext-restore

Restore a GPText index from a backup saved to local storage on the Greenplum Database cluster or to a shared file system mounted on all Greenplum Database cluster hosts.

Syntax

gptext-restore -h

gptext-restore -c -i <index_name> -p <path> [-v]

gptext-restore local -p <backup-name> [-v]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-c Restore index configuration and create an empty index.
local Restore an index that was backed up to local GPText cluster storage. If the local keyword is not included, the index is restored from a shared filesystem mounted on all hosts.
-p <path>

--path <path>

The path to the backup directory on each host.

Notes

Use the gptext-restore utility to restore a GPText index backup. You can restore the backup to a new GPText system, or you can restore the backup to the same system in order to recover from a corrupted GPText index. With the -c option, you can restore the configuration files and create an empty index without restoring the index data from the backup.

The index you are restoring must not exist. The gptext-restore utility creates a new index and reloads the backed up data into it. If you are restoring in order to repair a corrupted index, you must first delete the existing index with the gptext.drop_index() function. If the index you want to restore exists, gptext-restore outputs an error and quits.

Restore From Local GPText Cluster Storage

Use the gptext-restore local command to restore a GPText index from local storage. Supply the path to the backup directory on the master host using the --path (-p) option. The argument to the --path option is the path to the backup directory that was created with gptext-backup, including the timestamp.

The following example restores a backup that was created using this gptext-backup command: gptext-backup local -i demo.store.products -p gptext-backups

$ gptext-restore local -p gptext-backups/demo.store.products_2018-05-11T10\:17\:54.493448
20180511:11:04:31:026221 gptext-restore:mdw:gpadmin-[INFO]:-Execute GPText cluster restore.
20180511:11:04:32:026221 gptext-restore:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
20180511:11:04:32:026221 gptext-restore:mdw:gpadmin-[INFO]:-Reading metadata from file /home/gpadmin/gptext-backups/demo.store.products_2018-05-11T10:17:54.493448.json ...
20180511:11:04:32:026221 gptext-restore:mdw:gpadmin-[INFO]:-Executing restore ...
20180511:11:04:32:026221 gptext-restore:mdw:gpadmin-[INFO]:-Creating index demo.store.products ...
20180511:11:04:35:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard2 for index demo.store.products.
20180511:11:04:35:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:37:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.
20180511:11:04:37:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:04:38:026221 gptext-restore:mdw:gpadmin-[INFO]:-Restoring replica demo.store.products_shard2_replica1 from backup demo.store.products_shard2_2018-05-11T10:17:54.493448...
20180511:11:04:38:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard3 for index demo.store.products.
20180511:11:04:38:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:40:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.
20180511:11:04:40:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:04:41:026221 gptext-restore:mdw:gpadmin-[INFO]:-Restoring replica demo.store.products_shard3_replica1 from backup demo.store.products_shard3_2018-05-11T10:17:54.493448...
20180511:11:04:41:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard0 for index demo.store.products.
20180511:11:04:41:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:43:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.
20180511:11:04:43:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:04:44:026221 gptext-restore:mdw:gpadmin-[INFO]:-Restoring replica demo.store.products_shard0_replica1 from backup demo.store.products_shard0_2018-05-11T10:17:54.493448...
20180511:11:04:44:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard1 for index demo.store.products.
20180511:11:04:44:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:46:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.
20180511:11:04:47:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:04:47:026221 gptext-restore:mdw:gpadmin-[INFO]:-Restoring replica demo.store.products_shard1_replica1 from backup demo.store.products_shard1_2018-05-11T10:17:54.493448...
20180511:11:04:47:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:48:026221 gptext-restore:mdw:gpadmin-[INFO]:-Adding 1 replica(s) to demo.store.products_shard2...
20180511:11:04:48:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard2 for index demo.store.products.
20180511:11:04:48:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:51:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.....
20180511:11:04:55:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:04:55:026221 gptext-restore:mdw:gpadmin-[INFO]:-Adding 1 replica(s) to demo.store.products_shard3...
20180511:11:04:55:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard3 for index demo.store.products.
20180511:11:04:55:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:04:57:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.....
20180511:11:05:01:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:05:02:026221 gptext-restore:mdw:gpadmin-[INFO]:-Adding 1 replica(s) to demo.store.products_shard0...
20180511:11:05:02:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard0 for index demo.store.products.
20180511:11:05:02:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:05:05:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.....
20180511:11:05:09:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:05:09:026221 gptext-restore:mdw:gpadmin-[INFO]:-Adding 1 replica(s) to demo.store.products_shard1...
20180511:11:05:09:026221 gptext-restore:mdw:gpadmin-[INFO]:-Add replica into shard shard1 for index demo.store.products.
20180511:11:05:09:026221 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
...
20180511:11:05:12:026221 gptext-restore:mdw:gpadmin-[INFO]:-The replica is added, data recovering ...
.....
20180511:11:05:16:026221 gptext-restore:mdw:gpadmin-[INFO]:-Data recovered, replica becomes active.
...
20180511:11:05:16:026221 gptext-restore:mdw:gpadmin-[INFO]:-Done.

This example restores the configuration files and creates the GPText index without reloading the data. Note the local keyword is omitted.

$ gptext-restore -c -p gptext-backups/demo.store.products_2018-05-11T10\:17\:54.493448
20180511:11:16:50:028171 gptext-restore:mdw:gpadmin-[INFO]:-Execute GPText cluster restore.
20180511:11:16:51:028171 gptext-restore:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
20180511:11:16:51:028171 gptext-restore:mdw:gpadmin-[INFO]:-Reading metadata from file /home/gpadmin/gptext-backups/demo.store.products_2018-05-11T10:17:54.493448.json ...
20180511:11:16:51:028171 gptext-restore:mdw:gpadmin-[INFO]:-Executing restore ...
20180511:11:16:51:028171 gptext-restore:mdw:gpadmin-[INFO]:-Creating index demo.store.products ...
20180511:11:16:59:028171 gptext-restore:mdw:gpadmin-[INFO]:-Done.

Restore From a Shared File System

Use the --path option to restore a backup from a shared file system. The shared file system must be mounted on all hosts with GPText nodes and must be readable by the gpadmin user. Each host in the cluster must be able to access the file system.

The GPText index to restore must not already exist.

The following example restores the demo.twitter.message index from a shared file system mounted on each host at /mnt/nas. The backup was created with the name twitter, so the backup files were saved in the /mnt/nas/twitter directory.

$ gptext-restore --path /mnt/nas/twitter
20180510:17:22:46:008054 gptext-restore:mdw:gpadmin-[INFO]:-Execute GPText cluster restore.
20180510:17:22:48:008054 gptext-restore:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
20180510:17:22:48:008054 gptext-restore:mdw:gpadmin-[INFO]:-Validate shared file system.
20180510:17:22:50:008054 gptext-restore:mdw:gpadmin-[INFO]:-Restore index: demo.twitter.message, from shared FS '/mnt/nas', backup name: twitter.
20180510:17:22:50:008054 gptext-restore:mdw:gpadmin-[INFO]:-Processing ...
....................
20180510:17:23:10:008054 gptext-restore:mdw:gpadmin-[INFO]:-Checking leader replicas of collection demo.twitter.message.
.........
20180510:17:23:16:008054 gptext-restore:mdw:gpadmin-[INFO]:-Validate replica state ...
.....
20180510:17:23:19:008054 gptext-restore:mdw:gpadmin-[INFO]:-Index restore successfully.
20180510:17:23:19:008054 gptext-restore:mdw:gpadmin-[INFO]:-Done.

gptext-start

Starts or restarts the GPText cluster.

Syntax

gptext-start -h 

gptext-start [-r] [-s] [-v]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-r

--restart

Restarts the GPText cluster.
-s

--slow_start

Restarts the GPText cluster by starting nodes one at a time.
-v

--verbose

Displays debug output.

Notes

The gptext-start -r command calls the solr restart command to stop and restart all of the Solr instances in the cluster. The GPText utility determines if the processes are running before it completes, but it cannot verify that all of the Solr processes were stopped. If it is important to be certain that Solr processes were stopped, for example if you have changed the JVM options, use gptext-stop followed by gptext-start instead of gptext-start -r.

The -s (--slow-start) option is recommended if you have a large number of indexes. By default, when a Solr cluster starts all of the cluster’s nodes are started at once. With a large number of indexes, the number of initial ZooKeeper requests can result in timeout errors and possibly prevent the cluster from starting in a clean state. With the -s option, GPText performs a rolling start, starting nodes one at a time, to reduce ZooKeeper contention and allow a more stable startup. If you have more than 50 indexes and do not specify the -s option, gptext-start displays a warning message and requires you to confirm. With the -s option, gptext-start does not return until all nodes have been started; without the -s option, the gptext-start command returns immediately.

Examples

  1. Start the GPText cluster.

    gptext-start
    
  2. Restart the GPText cluster.

    gptext-start -r
    

gptext-state

Displays the state of the GPText cluster and GPText indexes.

Syntax

gptext-state -h

gptext-state [-d <db-name>] [-D] [-v]

gptext-state -i <index-name> [-d <db-name>] [-c <col1,...>] [-v]

gptext-state list [-d <db-name>] [-v]

gptext-state healthcheck [-d <db-name>] [-f <percent>] [-v]

gptext-state stats [-i <index-name>]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-d <db-name>

--database=<db-name>

The name of a database containing the GPText schema.

gptext-state searches all databases for the functions it needs to run. If the user does not have access permission to the database it begins with, it fails. In this case, use the --database= parameter to specify an accessible database to search.

-D

--details

List the status for each GPText index. When omitted, gptext-state lists counts of the numbers of indexes with Green, Yellow, and Red statuses.
-i <index-name>

--index=<index-name>

The name of an index. Displays statistics for the specified index. If the <index-name> is a root or child partition, displays any parent or child partitions. This option cannot be used with the list or healthcheck subcommands.
-c <column-list>

--stats_columns=<column-list>

Used with the -i or --index option, specifies a comma-separated list of statistics to display. The list may contain replication_factor, max_shards_per_node, num_docs, size_in_bytes, and last_modified. If no -c or --stats_columns option is supplied, all five statistics are displayed.
-f <diskfree>

--disk_free=<diskfree>

Used with the healthcheck command, specifies the percentage disk free required per host to report a healthy GPText cluster. The default is 10.

Notes

All parameters are optional, except that -i (--index) is required when you specify --c (--stats_columns).

If you specify a subpartition name with the -i option, gptext-state displays the name of the parent table or partition from which the partition inherits. If you specify the name of a table or partition with child partitions, gptext-state lists them.

When executed with no arguments, gptext-state displays the GPText version and counts of indexes in the Green, Yellow, and Red states.

  • A Green state means that all shards and replicas are healthy.
  • A Yellow state means that all shards are available, but one or more replicas is down.
  • A Red state means that one more more shards is down.

With the -D (--details) option specified, gptext-state lists all GPText indexes with the columns database, index_name, and state. The state column displays the status of the index as Green, Yellow, or Red.

If any index has a Yellow or Red status, gptext-state returns a non-zero value.

Examples

  1. Show the GPText cluster state.

    $ gptext-state
    20161216:14:01:32:029224 gptext-state:gpsne:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20161216:14:01:32:029224 gptext-state:gpsne:gpadmin-[INFO]:-Check GPText cluster status...
    20161216:14:01:33:029224 gptext-state:gpsne:gpadmin-[INFO]:-Current GPText Version: 2.0.0
    20161216:14:01:33:029224 gptext-state:gpsne:gpadmin-[INFO]:-All nodes are up and running.
    20161216:14:01:34:029224 gptext-state:gpsne:gpadmin-[INFO]:------------------------------------------------
    20161216:14:01:34:029224 gptext-state:gpsne:gpadmin-[INFO]:-Index state.
    20161216:14:01:34:029224 gptext-state:gpsne:gpadmin-[INFO]:------------------------------------------------
    20161216:14:01:34:029224 gptext-state:gpsne:gpadmin-[INFO]:-   state    index count
    20161216:14:01:34:029224 gptext-state:gpsne:gpadmin-[INFO]:-   Green    4
    
  2. Show the GPText cluster state with details, specifying demo as a database containing the GPText schema.

    $ gptext-state -D -d demo 
    20170929:15:18:21:000872 gptext-state:gpdb:gpadmin-[INFO]:-Execute GPText state ...
    20170929:15:18:21:000872 gptext-state:gpdb:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20170929:15:18:21:000872 gptext-state:gpdb:gpadmin-[INFO]:-Check GPText cluster status...
    20170929:15:18:21:000872 gptext-state:gpdb:gpadmin-[INFO]:-Current GPText Version: 2.1.3
    20170929:15:18:21:000872 gptext-state:gpdb:gpadmin-[INFO]:-All nodes are up and running.
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:------------------------------------------------
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:-Index state details.
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:------------------------------------------------
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:-   database   index name                state
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:-   demo       demo.twitter.message      Green
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:-   demo       demo.wikipedia.articles   Green
    20170929:15:18:22:000872 gptext-state:gpdb:gpadmin-[INFO]:-Done.
    
  3. Show replication_factor and num_docs statistics for the GPText index demo.wikipedia.articles. Specify wikipedia as the database with the GPText schema.

    $ gptext-state -i demo.wikipedia.articles -c replication_factor,num_docs -d demo
    20170927:13:00:31:030421 gptext-state:gpdb:gpadmin-[INFO]:-Execute GPText state ...
    20170927:13:00:31:030421 gptext-state:gpdb:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20170927:13:00:31:030421 gptext-state:gpdb:gpadmin-[INFO]:-Check GPText cluster statistics...
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:-   Replicas Up:   5
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:------------------------------------------------
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:-Index demo.wikipedia.articles statistics.
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:------------------------------------------------
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:-   replication_factor   num_docs
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:-   2                    23
    20170927:13:00:33:030421 gptext-state:gpdb:gpadmin-[INFO]:-Done.
    
  4. List all indexes.

    $ gptext-state list 
    20170929:15:19:02:001023 gptext-state:gpdb:gpadmin-[INFO]:-Execute GPText state ...
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:----------------------------------------------------------
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:- Index list
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:----------------------------------------------------------
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:-  demo.twitter.message
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:-  demo.wikipedia.articles
    20170929:15:19:03:001023 gptext-state:gpdb:gpadmin-[INFO]:-Done.
    
  5. Perform a health check with a 20% free disk requirement.

    $ gptext-state healthcheck -f 20 -d demo
    20170927:13:03:53:030843 gptext-state:gpdb:gpadmin-[INFO]:-Execute GPText state ...
    20170927:13:03:53:030843 gptext-state:gpdb:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20170927:13:03:53:030843 gptext-state:gpdb:gpadmin-[INFO]:-Execute healthcheck on GPText cluster!
    20170927:13:03:53:030843 gptext-state:gpdb:gpadmin-[INFO]:-Check GPText binary and utilities version match ...
    20170927:13:03:53:030843 gptext-state:gpdb:gpadmin-[INFO]:-GOOD
    20170927:13:03:53:030843 gptext-state:gpdb:gpadmin-[INFO]:-Check GPText config files ...
    20170927:13:03:55:030843 gptext-state:gpdb:gpadmin-[INFO]:-GOOD
    20170927:13:03:55:030843 gptext-state:gpdb:gpadmin-[INFO]:-Check GPText index status ...
    20170927:13:03:55:030843 gptext-state:gpdb:gpadmin-[INFO]:-GOOD
    20170927:13:03:55:030843 gptext-state:gpdb:gpadmin-[INFO]:-Checking for required disk space...
    20170927:13:03:56:030843 gptext-state:gpdb:gpadmin-[INFO]:-GOOD
    20170927:13:03:56:030843 gptext-state:gpdb:gpadmin-[INFO]:-Checking for required user privileges...
    20170927:13:03:57:030843 gptext-state:gpdb:gpadmin-[INFO]:-GOOD
    20170927:13:03:57:030843 gptext-state:gpdb:gpadmin-[INFO]:-Checking for indexes and database consistency...
    20170927:13:03:58:030843 gptext-state:gpdb:gpadmin-[INFO]:-GOOD
    20170927:13:03:58:030843 gptext-state:gpdb:gpadmin-[INFO]:-Done.
    
  6. Check the status of a partitioned table.

    $ gptext-state -i demo.twitter.message
    20180615:15:49:33:029252 gptext-state:mdw:gpadmin-[INFO]:-Execute GPText state ...
    20180615:15:49:34:029252 gptext-state:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20180615:15:49:34:029252 gptext-state:mdw:gpadmin-[INFO]:-Check GPText cluster statistics...
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   Replicas Up:   8
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:------------------------------------------------
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-Index demo.twitter.message statistics.
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:------------------------------------------------
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   replication_factor   max_shards_per_node   num_docs   size in bytes   last_modified
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   2                    4                     1730       821125          2018-06-15T20:34:12.660Z
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-Child partition indexes:
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   demo.twitter.message_1_prt_1
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   demo.twitter.message_1_prt_2
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   demo.twitter.message_1_prt_3
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-   demo.twitter.message_1_prt_4
    20180615:15:49:35:029252 gptext-state:mdw:gpadmin-[INFO]:-Done.
    
  7. List statistics for all GPText indexes.

    $ gptext-state stats
    20180615:15:52:34:029808 gptext-state:mdw:gpadmin-[INFO]:-Execute GPText state ...
    20180615:15:52:35:029808 gptext-state:mdw:gpadmin-[INFO]:-Check zookeeper cluster state ...
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:------------------------------------------------
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:-Index Statistics.
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:------------------------------------------------
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:-   index name                num_docs   size in bytes
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:-   demo.twitter.message      1730       821125
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:-   demo.wikipedia.articles   23         554240
    20180615:15:52:36:029808 gptext-state:mdw:gpadmin-[INFO]:-Done.
    

gptext-stop

Stop the GPText cluster nodes.

Syntax

gptext-stop -h

gptext-stop [-v] [-f]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-v

--verbose

Displays debug output.
-f

--force

Forcefully stops all Solr processes.

Examples

  1. Stop the GPText cluster.

    gptext-stop
    
  2. Force stop the GPText cluster.

    gptext-stop -f
    

gptext-uninstall

Uninstalls GPText, including data and installed files. Uninstalls ZooKeeper nodes if they were installed with the GPText installer.

  • Stops any running GPText instances.
  • Deletes all Solr directories in segment directories.
  • Deletes the installation directory.
  • Removes all GPText schemas and indexes from all databases.
  • Uninstalls ZooKeeper if it was installed with the GPText installer.

Syntax

gptext-uninstall -h | --help

gptext-uninstall [-v | --verbose]

Parameters

Parameter Description
-h

--help

Displays a usage message and exits.
-v

--verbose

Displays debug output.

Notes

  • To use gptext-uninstall, you must have superuser permissions on all databases with GPText schemas.
  • gptext-uninstall runs only if there is at least one database with a GPText schema.

Examples

  1. Uninstall GPText.

    gptext-uninstall
    

gptext-upgrade

Upgrades the current GPText system to a new GPText release.

Syntax

gptext-upgrade [-h | --help]

gptext-upgrade [-f <upgrade_file> | --file=<upgrade_file>] [-c | --base_check] [-v | --verbose]
Parameter Description
-h

--help

Displays a usage message and exits.
-f <upgrade_file>

--file <upgrade_file>

Provides the path to the upgrade file. The default upgrade file is $GPPERFMONHOME/share/upgrade.yaml.
-c

--base_check

By default, gptext-upgrade checks that the GPText environment can be upgraded and reports any items that must be corrected before upgrading. When the -c or --base-check option is supplied, the environment check is omitted.
-v

--verbose

Displays debug output when executing the command.

Notes

The upgrade_file is a YAML-formatted script defining actions to upgrade a GPText system from a previous release to the current release. The file is not intended to be edited by users. If the upgrade_file does not contain support for the previous GPText release, gptext-upgrade outputs an error message and exits.

zkManager

Checks the ZooKeeper cluster state. If ZooKeeper was installed with GPText, zkManager can start or stop the ZooKeeper cluster.

Syntax

zkManager [-h | --help] 

zkManager state [-v | --verbose]

zkManager start [-v | --verbose]

zkManager stop [-v | --verbose] [-f | --force]

Parameters

Parameter Description
-h

--help

Display a usage message and quit.
-f

--force

When used with the stop command, performs a forced stop.
-v

--verbose

Displays debug output when executing the command.

Notes

  • The zkManager start and zkManager stop commands are only available if the ZooKeeper cluster was installed by the GPText installer.
  • By default, all gptext-* utilities check the ZooKeeper cluster state. If the cluster is not healthy, the ZooKeeper state information is displayed to warn the user.
  • The nc (netcat) command must be installed on the master host. Run nc in a terminal to ensure the command is installed.

Examples

  1. Start the ZooKeeper cluster, if ZooKeeper was installed by the GPText binary:

    zkManager start
    
  2. Stop the ZooKeeper cluster, if ZooKeeper was installed by the GPText binary:

    zkManager stop
    
  3. Force stop the ZooKeeper cluster, if ZooKeeper was installed by the GPText binary:

    zkManager stop -f
    
  4. Check the state of the ZooKeeper cluster:

    $ zkManager state
    20160603:14:17:01:307386 zkManager:gpdb-sandbox:gpadmin-[INFO]:-Execute zookeeper state process.
    20160603:14:17:01:307386 zkManager:gpdb-sandbox:gpadmin-[INFO]:-   Host                       port   Latency min/avg/max   Mode
    20160603:14:17:01:307386 zkManager:gpdb-sandbox:gpadmin-[INFO]:-   gpdb-sandbox.localdomain   2188   0/0/17                follower
    20160603:14:17:01:307386 zkManager:gpdb-sandbox:gpadmin-[INFO]:-   gpdb-sandbox.localdomain   2189   0/0/17                leader
    20160603:14:17:01:307386 zkManager:gpdb-sandbox:gpadmin-[INFO]:-   gpdb-sandbox.localdomain   2190   0/0/70                follower
    20160603:14:17:06:307386 zkManager:gpdb-sandbox:gpadmin-[INFO]:-Done.