You're viewing **Apigee Edge** documentation.  
[Go to the
**Apigee X** documentation](http://cloud.google.com/apigee/docs). info

This section describes version 4.19.06 of the Edge for Private Cloud Feature Release.

> [!NOTE]
> **Note:** Apigee Edge for Private Cloud version 19.06 will be supported until May 31, 2021.

> [!NOTE]
> For more information, see the following resources:
>
> - *[Edge for Private Cloud 4.19.06 documentation](https://docs.apigee.com/private-cloud/v4.19.06)*
> - *Questions or issues?* Contact [Apigee Edge Support](https://docs.apigee.com/api-platform/troubleshoot/support)
> - *Release notifications* : See [Get Apigee Edge release notifications](https://docs.apigee.com/release/get-release-notifications)

## Release summary

The following table summarizes the changes in this release:
[New Features](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#new-features) This release includes the following new features:
○ LDAP support for SSO  
○ HTTP deployment support  
○ Pluggable analytics  
○ Cassandra rack support  
○ IPv6 support  
○ Simplified New Edge experience installation  
○ Exclude `INVALID_TSC` transactions (Monetization)

For more information about each of these new features, see
[New features](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#new-features).
Backward Compatibility The following issues affecting backward compatibility were introduced in this version
of Apigee Edge for Private Cloud:

- Due to the fix for issue 132443137 (as described in
  [the 19.03.01 Public
  Cloud release notes](https://docs.apigee.com/release/notes/190301-apigee-edge-public-cloud-release-notes)), Message Processors now ignore headers that begin with
  `X-Apigee-*`. As a result, you must refactor any code that uses
  `X-Apigee-*` headers and replace those headers with supported ones.

- The name of the Cassandra log files has changed. It is now:

  ```
  /opt/apigee/var/log/apigee-cassandra/system.log
  ```
Included Releases Since the previous Edge for Private Cloud Feature Release, the following releases
have occurred and are included in this release:
○ Edge:  
[19.07.23 (UI)](https://docs.apigee.com/release/notes/190723-apigee-edge-public-cloud-release-notes-ui)  
[19.03.01](https://docs.apigee.com/release/notes/190301-apigee-edge-public-cloud-release-notes)  
[19.02.19](https://docs.apigee.com/release/notes/19021900-apigee-edge-public-cloud-release-notes)  
[19.02.04](https://docs.apigee.com/release/notes/19020400-apigee-edge-public-cloud-release-notes)  
[19.01.23](https://docs.apigee.com/release/notes/19012300-apigee-edge-public-cloud-release-notes)  
[19.01.14](https://docs.apigee.com/release/notes/190114-apigee-edge-public-cloud-release-notes)  
[18.12.04](https://docs.apigee.com/release/notes/18120400-apigee-edge-public-cloud-release-notes)  
[18.08.31](https://docs.apigee.com/release/notes/180831-apigee-edge-public-cloud-release-notes)  
[18.07.31](https://docs.apigee.com/release/notes/180731-apigee-edge-public-cloud-release-notes) ○ Portal:  
[19.07.08](https://docs.apigee.com/release/notes/19070800-apigee-developer-services-portal-release-notes)  
[19.05.23](https://docs.apigee.com/release/notes/19052300-apigee-developer-services-portal-release-notes)  
[19.05.08](https://docs.apigee.com/release/notes/19050800-apigee-developer-services-portal-release-notes)  
[19.04.18](https://docs.apigee.com/release/notes/19041800-apigee-developer-services-portal-release-notes)  
[19.03.20](https://docs.apigee.com/release/notes/19032000-apigee-developer-services-portal-release-notes)  
[19.02.27](https://docs.apigee.com/release/notes/19022700-apigee-developer-services-portal-release-notes)  
[19.02.21](https://docs.apigee.com/release/notes/19022100-apigee-developer-services-portal-release-notes)  
[19.02.04](https://docs.apigee.com/release/notes/19020400-apigee-developer-services-portal-release-notes)  
[19.01.16](https://docs.apigee.com/release/notes/19011600-apigee-developer-services-portal-release-notes) Retirements None Deprecations With the release of 4.19.06, the following are deprecated:

- **4.18.01:** Version 4.18.01 of Apigee Edge for Private Cloud is now deprecated.

For more information, see
[Apigee deprecations, retirements, and CPS
changes](https://docs.apigee.com/release/deprecated-features).
[Bug Fixes](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#fixes) This release includes the following bug fixes:
○ UseStringDeduplication not set (140270474)  
○ MP errors (111445518)  
○ Cassandra failures with JMX (113342838)  
○ 13-node upgrades (138931337)  
○ Proxies with the same name (119802562)  
○ Keystores not loading (118851790)  
○ Analytics failed (110988191)  
○ Backup failures (110785400)  
○ `HEAD` requests to Node.js (79993247)  
○ apigee-postgres backup/restore (70291825)  
○ Resetting sysadmin password (65737520)  

For more information about each of these fixes, see [Bug fixes](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#fixes).
[Known Issues](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#known-issues) This release includes the following known issues:
○ Mint not rating transactions initially (141628497)  
○ Mint rating servers memory leak (137865184)  
○ Metadata file format for apigee-sso install (135616498)  
○ `apigee-monit` not supported on Amazon Linux 1 (122370980)  
○ Message Processor backup not backing up the correct set of files (121095148)  
○ DataAccessExceptions in multi data center configurations (76087166)  
○ MessageLogging policy including extra information in the log message (68722102)  

For more information about each of these known issues, including workarounds, see
[Known issues](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#known-issues).

## Upgrade paths

The following table shows the upgrade paths for this release:

|   ||
|---|---|
| From 4.19.01 | Directly [upgrade from 4.19.01 → 4.19.06](https://docs.apigee.com/private-cloud/v4.19.06/update-apigee-edge-41901-41906) |
| From 4.18.05 | Directly [upgrade from 4.18.05 → 4.19.06](https://docs.apigee.com/private-cloud/v4.19.06/update-apigee-edge-4180x-41906) |
| From 4.18.01 | Directly [upgrade from 4.18.01 → 4.19.06](https://docs.apigee.com/private-cloud/v4.19.06/update-apigee-edge-4180x-41906) |

> [!WARNING]
> **WARNING:** This release includes updates and bug fixes that may affect your API implementations.
>
> As always, we strive to introduce updates that are backwards compatible and don't break your
> code. However, it's possible that one or more updates may affect the behavior of your solution
> in places, including workarounds. Apigee recommends that you test the upgrade on a
> non-production before rolling it out to your production system.

## New features

This section lists new features in this release. Additionally, this release includes all
features in the Edge UI, Edge Management, and Portal releases listed in
[Included Releases](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#included-releases).

In addition to the following enhancements, this release also contains multiple usability,
performance, security, and stability enhancements.

### HTTP deployment support

By default, Edge uses RPC to deploy API proxies. While this mode works very well for most
installations, larger topologies with many MPs might experience timeouts when a large number of
concurrent calls are made via RPC.

As a result, Apigee recommends that larger deployments use HTTP rather than RPC for
deployment. Enabling HTTP deployments are now supported.

For more information, see [Enable HTTP
deployment](https://docs.apigee.com/private-cloud/v4.19.06/http-deployment).

### Cassandra rack support

Apigee now provides general guidance for scaling operations of Cassandra by making Cassandra
on Apigee Edge for Private Cloud rack aware.

For more information, see
[Cassandra rack support](https://docs.apigee.com/private-cloud/v4.19.06/rack-support).

### Pluggable analytics

By default, analytics data collected by the Message Processor is uploaded to Qpid and Postgres
for processing. You can then view the analytics data in the Edge UI.

With this Feature Release, you can configure the Message Processor to write analytics data to
disk or you can choose to use both options.

For more information, see
[Writing analytics data to a file](https://docs.apigee.com/private-cloud/v4.19.06/write-analytics-file).

### Simplified New Edge experience installation

Installation of the New Edge experience has been simplified with a new script.

For more information, see [Install the New Edge Experience](https://docs.apigee.com/private-cloud/v4.19.06/installing-new-unified-experience).

### LDAP IDP support

Authentication of users with Edge UI and Edge management API calls now supports LDAP in
addition to SAML. LDAP support includes both direct binding and indirect binding methods.

For more information, see [Overview of external
IDP authentication](https://docs.apigee.com/private-cloud/v4.19.06/idp-overview).

### IPv6 support

By default, all runtime API calls to Apigee Edge for Private Cloud use IPv4. You can add IPv6
support to the Router with a new property.

For more information, see [Use IPv6 on the
Router](https://docs.apigee.com/private-cloud/v4.19.06/ipv6-router).

### Exclude `INVALID_TSC` transactions (Monetization)

You can now exclude `INVALID_TSC` transactions from being added to the Postgres
database when using Monetization.

For more information, see [Monetization
server properties](https://docs.apigee.com/private-cloud/v4.19.06/mint-server-properties).

### Supported software

This release includes the following changes to supported software:

| Support Added | No Longer Supported |
|---|---|
| This release adds support for the following platforms: - Red Hat Enterprise Linux (RHEL) 6.10 - CentOS 6.10 - Oracle Linux 6.9 | The following platforms are no longer supported with this release: - Red Hat Enterprise Linux (RHEL) 6.9 - CentOS 6.9 - Oracle 6.8 |

For a complete list of supported platforms, see
[Supported software and supported versions](https://docs.apigee.com/release/supported-software).

## Bug fixes

This section lists the Private Cloud bugs that were fixed in this release. Additionally, this
release includes all bug fixes in the Edge UI, Edge Management, and Portal releases shown in
[Included Releases](https://docs.apigee.com/release/notes/41906-edge-private-cloud-release-notes#included-releases).

> [!NOTE]
> **NOTE:** The bug lists are primarily for users checking to see if *their* support tickets have been fixed. They are not designed to provide detailed information for all users.

| Issue ID | Description |
|---|---|
| 140270474 | **UseStringDeduplication not set** `UseStringDeduplication` was not getting set for the `edge-message-processor` components in production environments. |
| 111445518 | **MP errors** Message Processors continuously logged the following error message every 5 min: ``` 2019-06-29 00:02:05,775 Apigee-Timer-6 ERROR CMgmt - ConnectorServiceImpl.refreshToken() : Connector Management API auth token generation failed: 0 null ``` |
| 113342838 | **Cassandra failures with JMX** Cassandra operations were not working when JMX auth was enabled |
| 138931337 | **13-node upgrades** Upgrades of 13-node installations from 17.09, 18.01, and 18.05 were failing. |
| 119802562 | **Proxies with the same name** If two users in the same organization created proxies with the same names, the second one created would overwrite the first. This only occurred when different users could not see the other proxy. |
| 118851790 | **Keystores not loading** When there were more than 100 keystores for an organization/environment, the keystore and reference section in Edge UI was not loading. Instead, the UI displayed an `Internal Error (Error Fetching Keystores)` error. |
| 110988191 | **Analytics failed** Analytics failed for an environment when supplied with data from the Microgateway that was set to a date in the future. |
| 110785400 | **Backup failures** ZooKeeper, Cassandra, and OpenLDAP intermittently failed to properly back up their data with the following error: `File changed as we read it.` |
| 79993247 | **`HEAD` requests to Node.js** `HEAD` requests to a Node.js target could hang, which left connections pending. |
| 70291825 | **apigee-postgres backup/restore** Executing an apigee-postgres backup/restore now backs up data for all components. |
| 65737520 | **Resetting sysadmin password** Resetting the system admin password for the Management Server that contained special characters would fail. |

## Known issues

The following table lists known issues in this release:

| Issue ID | Description |
|---|---|
| 141628497 | **Mint not rating transactions initially** Edge for the Private Cloud does not rate transactions initially when you first enable monetization for an organization. This applies to new and existing organizations. The monetization enablement API responds with the job ID and, upon completion, the status of the job will indicate success. However, any monetized API calls made initially will not be processed by monetization and will not be rated. These transactions will only show up in regular analytics. <br /> **Workaround:** Restart any Message Processors (MPs), which can be done with the following: ``` apigee-service edge-message-processor restart ``` After monetization has been enabled, restarting the MPs causes Edge to load the configuration from ZooKeeper at startup. This happens on every restart, which means that the issue only applies initially. |
| 137865184 | **Mint rating servers memory leak** When a new Qpid instance is registered in an mxgroup, the queues build without consumers, which results in the queue depth growing until it uses all available resources. **Workaround:** None. |
| 135616498 | **Metadata file format for apigee-sso install** <br /> When installing `apigee-sso` and using a metadata.xml file instead of a URL, if the metadata.xml file does not include a new line (CRLF) at the end of the file, the metadata.xml file is not read entirely. <br /> **Workaround:** To work around this issue, you can do one of the following: - Add a CRLF to the end of the metadata.xml file OR - Use a URL-based location for the metadata |
| 122370980 | **`apigee-monit` not supported on Amazon Linux 1** <br /> **Workaround:** None. |
| 121095148 | **Message Processor backup not backing up the correct set of files** <br /> **Workaround:** Run the backup a second time and it should back up the correct set of files. |
| 76087166 | **DataAccessException in multiple data center configurations** In multiple data center configurations, if one datastore becomes unavailable, then you might see the following error: ``` DataAccessException: Error while accessing datastore; Please retry later ``` The result is that Management Server may not start because it is trying to connect to Cassandra nodes in both dc-1 and dc-2. The `DataAccessExceptions` occurs if a Cassandra node is down. This might also result in API traffic disruption, where Message Processors report `DataAccessExceptions` while trying to retrieve KVMs. Note that the expected state is for the Management Server not to connect to datastore components across regions. **Workaround** The workaround is to deregister the following Cassandra node types in the unavailable data center and then re-register them after the Cassandra nodes are available again: - `kms-datastore` - `dc-datastore` - `keyvaluemap-datastore` **To deregister and reregister these Cassandra node types:** 1. Get the UUIDs of the Cassandra nodes by using the following `curl` command: ``` curl -u ADMIN_EMAIL:ADMIN_PW \ "http://MS_IP:MS_PORT/v1/servers?region=REGION&pod=GATEWAY_POD \ &type=CASSANDRA_NODE_TYPE" ``` Where: - <var translate="no">ADMIN_EMAIL</var> and <var translate="no">ADMIN_PW</var> are the credentials of your Apigee account. - <var translate="no">MS_IP</var> and <var translate="no">MS_PORT</var> are the Management Server's IP address and port number. - <var translate="no">REGION</var> is the name of the data center in which the Management Server is located. - <var translate="no">GATEWAY_POD</var> is the pod name, which is by default "gateway". You might have renamed it to something else, though, so check your implementation. - <var translate="no">CASSANDRA_NODE_TYPE</var> is one of `kms-datastore`, `dc-datastore`, and `keyvaluemap-datastore`. For example: ``` curl -u nickdanger@google.com:myP@$$w0rD "http://192.168.0.1:8080/v1/servers?region=dc-1&pod=gateway&type=dc-datastore" ``` The response uses the following format: ``` { "internalIP" : "POD_IP_ADDRESS", "isUp" : [true|false], "pod" : "GATEWAY_POD", "reachable" : [true|false], "region" : "dc-1", "tags" : { "property" : [ ] }, "type" : [ "kms-datastore", "dc-datastore", "keyvaluemap-datastore" ], "uUID" : "POD_UUID" } ``` For example: ``` { "internalIP" : "192.168.1.11", "isUp" : false, "pod" : "gateway", "reachable" : false, "region" : "dc-1", "tags" : { "property" : [ ] }, "type" : "dc-datastore", "uUID" : "13cee956-d3a7-4577-8f0f-1694564179e4" } ``` Note the values of the `uUID` field in the response. You will use these to deregister the nodes. 2. Repeat step one for each Cassandra node type: `kms-datastore`, `dc-datastore`, and `keyvaluemap-datastore`. Be sure to take note of the UUIDs that are returned. 3. Deregister the nodes using the following command: ``` curl -u ADMIN_EMAIL:ADMIN_PW "http://MS_IP:MS_PORT/v1/servers/UUID" -X DELETE ``` Where <var translate="no">UUID</var> is the UUID returned in the previous command's response. 4. Repeat step 3 for each UUID you collected in steps 1 and 2. 5. Re-register the nodes using the following command: ``` curl -u ADMIN_EMAIL:ADMIN_PW "http://MS_IP:MS_PORT/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore& \ Type=counter-datastore&Type=cache-datastore&InternalIP=POD_IP_ADDRESS& \ region=REGION&pod=GATEWAY_POD" -H \ 'content-type: application/x-www-form-urlencoded' -X POST ``` Note that these operations register and deregister nodes from Zookeeper and do not have any impact on the Cassandra cluster. For more information about these commands, see [Update datastore registrations](https://docs.apigee.com/private-cloud/4.19.06/moving-apigee-servers#changingtheipaddressofacassandranode-updatedatastoreregistrations). |
| 68722102 | **MessageLogging policy including extra information in the log message** <br /> The `FormatMessage` element of the MessageLogging policy controls the format of the logged message. When `FormatMessage=false`, the logged message is not supposed to include any Apigee-generated information. However, even if you set `FormatMessage=false`, the log message still includes the following information: - The priority score - The timestamp <br /> **Workaround:** None. |

## Next step

To get started with Edge for Private Cloud 4.19.06, use the following links:

New installations:
:   [New installation overview](https://docs.apigee.com/private-cloud/v4.19.06/installation-overview)

Existing installations:
:   [Upgrade paths](https://docs.apigee.com/private-cloud/v4.19.06/upgrade-paths)