From 064c43f7e0b0220a11a2c6d47549db4fc01c7d95 Mon Sep 17 00:00:00 2001 From: Dave Barnes Date: Wed, 25 Aug 2021 13:56:37 -0700 Subject: [PATCH] GEODE-9550: Native Client user guide: warn against floating point values in keys (#857) * GEODE-9550: Native Client user guide: warn against floating point values in keys --- docs/geode-native-docs-cpp/continuous-queries.html.md.erb | 3 +++ docs/geode-native-docs-cpp/remote-queries.html.md.erb | 3 +++ docs/geode-native-docs-dotnet/continuous-queries.html.md.erb | 3 +++ docs/geode-native-docs-dotnet/remote-queries.html.md.erb | 3 +++ 4 files changed, 12 insertions(+) diff --git a/docs/geode-native-docs-cpp/continuous-queries.html.md.erb b/docs/geode-native-docs-cpp/continuous-queries.html.md.erb index daf2d85b66..5e126703af 100644 --- a/docs/geode-native-docs-cpp/continuous-queries.html.md.erb +++ b/docs/geode-native-docs-cpp/continuous-queries.html.md.erb @@ -45,6 +45,9 @@ Compare this to register interest by reviewing [Registering Interest for Entries - **Active query execution**. Once initialized, the queries operate on new events. Events that change the query result are sent to the client immediately. +**Note:** Because floating point numbers can not reliably be compared for equality, do not use +floating point values as keys or key components when constructing a query. + ## Typical Continuous Query Lifecycle 1. The client creates the CQ. This sets up everything for running the query and provides the client with a `CqQuery` object, but does not execute the CQ. At this point, the query is in a `STOPPED `state, ready to be closed or run. diff --git a/docs/geode-native-docs-cpp/remote-queries.html.md.erb b/docs/geode-native-docs-cpp/remote-queries.html.md.erb index b46f9fdc8a..4bb994735e 100644 --- a/docs/geode-native-docs-cpp/remote-queries.html.md.erb +++ b/docs/geode-native-docs-cpp/remote-queries.html.md.erb @@ -28,6 +28,9 @@ You can optimize your queries by defining indexes on the cache server. Querying and indexing operate only on remote cache server contents. +**Note:** Because floating point numbers can not reliably be compared for equality, do not use +floating point values as keys or key components when constructing a query. + ### Query language: OQL <%=vars.product_name%> provides a SQL-like querying language called OQL that allows you to access data stored in <%=vars.product_name%> regions. OQL is very similar to SQL, but OQL allows you to query complex objects, object attributes, and methods. diff --git a/docs/geode-native-docs-dotnet/continuous-queries.html.md.erb b/docs/geode-native-docs-dotnet/continuous-queries.html.md.erb index 7904c26935..665bbef4b6 100644 --- a/docs/geode-native-docs-dotnet/continuous-queries.html.md.erb +++ b/docs/geode-native-docs-dotnet/continuous-queries.html.md.erb @@ -45,6 +45,9 @@ Compare this to register interest by reviewing [Registering Interest for Entries - **Active query execution**. Once initialized, the queries operate on new events. Events that change the query result are sent to the client immediately. +**Note:** Because floating point numbers can not reliably be compared for equality, do not use +floating point values as keys or key components when constructing a query. + ## Typical Continuous Query Lifecycle 1. The client creates the CQ. This sets up everything for running the query and provides the client with a `CqQuery` object, but does not execute the CQ. At this point, the query is in a `STOPPED `state, ready to be closed or run. diff --git a/docs/geode-native-docs-dotnet/remote-queries.html.md.erb b/docs/geode-native-docs-dotnet/remote-queries.html.md.erb index 1851482824..a93901f1d9 100644 --- a/docs/geode-native-docs-dotnet/remote-queries.html.md.erb +++ b/docs/geode-native-docs-dotnet/remote-queries.html.md.erb @@ -28,6 +28,9 @@ You can optimize your queries by defining indexes on the cache server. Querying and indexing operate only on remote cache server contents. +**Note:** Because floating point numbers can not reliably be compared for equality, do not use +floating point values as keys or key components when constructing a query. + ### Query language: OQL <%=vars.product_name%> provides a SQL-like querying language called OQL that allows you to access data stored in <%=vars.product_name%> regions. OQL is very similar to SQL, but OQL allows you to query complex objects, object attributes, and methods.