Copilot commented on code in PR #49851:
URL: https://github.com/apache/arrow/pull/49851#discussion_r3151224336


##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.
 
-   Need to replace `<path\to\repo>` with actual path to repository in the 
commands.
+On Linux, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.so` for a debug build and 
`build/release/libarrow_flight_sql_odbc.so` for a release build.
 
-   1. `cd <path\to\repo>`
-   2. Run script to register your ODBC DLL as Apache Arrow Flight SQL ODBC 
Driver
+1. Open your system terminal. On Windows this should be Power Shell in 
administrator mode.
+
+2. Register your ODBC binary:
+
+   These commands need `<path/to/repo>` to be replaced with the actual path to 
the repository.
+
+   1. `cd <path/to/repo>`
+   2. Run script to register your ODBC driver binary as Apache Arrow Flight 
SQL ODBC Driver.<br>
+      On Windows:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
<path\to\repo>\cpp\build\< release | debug >\< Release | 
Debug>\arrow_flight_sql_odbc.dll
       ```
       Example command for reference:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
C:\path\to\arrow\cpp\build\release\Release\arrow_flight_sql_odbc.dll
       ```
+      On MacOS:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.dylib
+      ```
+      Example command for reference:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.dylib

Review Comment:
   `install_odbc.sh` exits unless run as root (it prints "Please run this 
script with sudo"). The macOS command example should include `sudo` so the 
instructions work as written.
   ```suggestion
         sudo ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.dylib
         ```
         Example command for reference:
         ```
         sudo ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.dylib
   ```



##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.
 
-   Need to replace `<path\to\repo>` with actual path to repository in the 
commands.
+On Linux, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.so` for a debug build and 
`build/release/libarrow_flight_sql_odbc.so` for a release build.

Review Comment:
   These build output paths (`build/...`) are inconsistent with the later 
install command examples (which reference `<path>/cpp/build/...`). Please make 
the paths consistent so users can locate the built driver binary reliably.



##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.

Review Comment:
   Use consistent OS capitalization: "macOS" (not "MacOS").



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```
+
+### Sample DSN
+```
+[Apache Arrow Flight SQL]
+Driver        = Apache Arrow Flight SQL ODBC Driver
+Host          = 1234.56.789
+Port          = 12345
+UID           = sample_user
+PWD           = sample_password
+useEncryption = false
+useWideChar   = true
+```
+
+### Driver Connection Options
+| Option | Description | Default |
+|--------|-------------|---------------|
+| `driver` | Required: the driver for this ODBC driver. | Apache Arrow Flight 
SQL 
+| `dsn` | Data Source Name used for configuring the connection. | `NONE`
+| `host` | The IP address or hostname for the server. | `NONE`
+| `port` | The TCP port number the server uses for ODBC connections. | `NONE`
+| `user` | The username for authentication to the server. | `NONE`
+| `user id` | The username for authentication to the server. | `NONE`
+| `uid` | The username for authentication to the server. | `NONE`
+| `password` | The password for authentication to the server. | `NONE`
+| `pwd` | The password for authentication to the server. | `NONE`
+| `token` | The personal access token for authentication to the server. | 
`NONE`
+| `useEncryption` | Setting to determine if an SSL-encrypted connection should 
be used. | `true` on Windows & Linux, `false` on MacOS
+| `disableCertificateVerification` | Setting to determine if the driver should 
verify the host certificate against the trust store. | `false`
+| `trustedCerts` | The full path of the .pem file containing certificates for 
the purpose of verifying the server. | `NONE`
+| `useSystemTrustStore` | Setting to determine whether to use a CA certificate 
from the system's trust store or from a specified .pem file. | `true`
+| `stringColumnLength` | Maximum length of a string column. Some apps may 
require a lower length. | `NONE`
+| `useWideChar` | Setting to determine if wide characters should be used. 
Important for Unicode applications. | `true` on Windows, `false` on MacOS & 
Linux

Review Comment:
   Use consistent OS capitalization: "macOS" (not "MacOS").
   ```suggestion
   | `useEncryption` | Setting to determine if an SSL-encrypted connection 
should be used. | `true` on Windows & Linux, `false` on macOS
   | `disableCertificateVerification` | Setting to determine if the driver 
should verify the host certificate against the trust store. | `false`
   | `trustedCerts` | The full path of the .pem file containing certificates 
for the purpose of verifying the server. | `NONE`
   | `useSystemTrustStore` | Setting to determine whether to use a CA 
certificate from the system's trust store or from a specified .pem file. | 
`true`
   | `stringColumnLength` | Maximum length of a string column. Some apps may 
require a lower length. | `NONE`
   | `useWideChar` | Setting to determine if wide characters should be used. 
Important for Unicode applications. | `true` on Windows, `false` on macOS & 
Linux
   ```



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```
+
+### Sample DSN
+```
+[Apache Arrow Flight SQL]
+Driver        = Apache Arrow Flight SQL ODBC Driver
+Host          = 1234.56.789
+Port          = 12345
+UID           = sample_user
+PWD           = sample_password
+useEncryption = false
+useWideChar   = true
+```
+
+### Driver Connection Options
+| Option | Description | Default |
+|--------|-------------|---------------|
+| `driver` | Required: the driver for this ODBC driver. | Apache Arrow Flight 
SQL 
+| `dsn` | Data Source Name used for configuring the connection. | `NONE`
+| `host` | The IP address or hostname for the server. | `NONE`
+| `port` | The TCP port number the server uses for ODBC connections. | `NONE`
+| `user` | The username for authentication to the server. | `NONE`
+| `user id` | The username for authentication to the server. | `NONE`
+| `uid` | The username for authentication to the server. | `NONE`
+| `password` | The password for authentication to the server. | `NONE`
+| `pwd` | The password for authentication to the server. | `NONE`
+| `token` | The personal access token for authentication to the server. | 
`NONE`
+| `useEncryption` | Setting to determine if an SSL-encrypted connection should 
be used. | `true` on Windows & Linux, `false` on MacOS

Review Comment:
   The documented default for `useEncryption` does not match the driver 
behavior: `LoadFlightSslConfigs` falls back to `true` when the property is 
absent, regardless of platform. The default should be documented accordingly 
(or the docs should explain any platform-specific override if intended).
   ```suggestion
   | `useEncryption` | Setting to determine if an SSL-encrypted connection 
should be used. | `true`
   ```



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```
+
+### Sample DSN
+```
+[Apache Arrow Flight SQL]
+Driver        = Apache Arrow Flight SQL ODBC Driver
+Host          = 1234.56.789
+Port          = 12345
+UID           = sample_user
+PWD           = sample_password
+useEncryption = false
+useWideChar   = true
+```
+
+### Driver Connection Options
+| Option | Description | Default |
+|--------|-------------|---------------|
+| `driver` | Required: the driver for this ODBC driver. | Apache Arrow Flight 
SQL 
+| `dsn` | Data Source Name used for configuring the connection. | `NONE`
+| `host` | The IP address or hostname for the server. | `NONE`
+| `port` | The TCP port number the server uses for ODBC connections. | `NONE`
+| `user` | The username for authentication to the server. | `NONE`
+| `user id` | The username for authentication to the server. | `NONE`
+| `uid` | The username for authentication to the server. | `NONE`
+| `password` | The password for authentication to the server. | `NONE`
+| `pwd` | The password for authentication to the server. | `NONE`
+| `token` | The personal access token for authentication to the server. | 
`NONE`
+| `useEncryption` | Setting to determine if an SSL-encrypted connection should 
be used. | `true` on Windows & Linux, `false` on MacOS
+| `disableCertificateVerification` | Setting to determine if the driver should 
verify the host certificate against the trust store. | `false`
+| `trustedCerts` | The full path of the .pem file containing certificates for 
the purpose of verifying the server. | `NONE`
+| `useSystemTrustStore` | Setting to determine whether to use a CA certificate 
from the system's trust store or from a specified .pem file. | `true`
+| `stringColumnLength` | Maximum length of a string column. Some apps may 
require a lower length. | `NONE`
+| `useWideChar` | Setting to determine if wide characters should be used. 
Important for Unicode applications. | `true` on Windows, `false` on MacOS & 
Linux

Review Comment:
   Use consistent OS capitalization: "macOS" (not "MacOS").
   ```suggestion
   | `useEncryption` | Setting to determine if an SSL-encrypted connection 
should be used. | `true` on Windows & Linux, `false` on macOS
   | `disableCertificateVerification` | Setting to determine if the driver 
should verify the host certificate against the trust store. | `false`
   | `trustedCerts` | The full path of the .pem file containing certificates 
for the purpose of verifying the server. | `NONE`
   | `useSystemTrustStore` | Setting to determine whether to use a CA 
certificate from the system's trust store or from a specified .pem file. | 
`true`
   | `stringColumnLength` | Maximum length of a string column. Some apps may 
require a lower length. | `NONE`
   | `useWideChar` | Setting to determine if wide characters should be used. 
Important for Unicode applications. | `true` on Windows, `false` on macOS & 
Linux
   ```



##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.
 
-   Need to replace `<path\to\repo>` with actual path to repository in the 
commands.
+On Linux, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.so` for a debug build and 
`build/release/libarrow_flight_sql_odbc.so` for a release build.
 
-   1. `cd <path\to\repo>`
-   2. Run script to register your ODBC DLL as Apache Arrow Flight SQL ODBC 
Driver
+1. Open your system terminal. On Windows this should be Power Shell in 
administrator mode.
+
+2. Register your ODBC binary:
+
+   These commands need `<path/to/repo>` to be replaced with the actual path to 
the repository.
+
+   1. `cd <path/to/repo>`
+   2. Run script to register your ODBC driver binary as Apache Arrow Flight 
SQL ODBC Driver.<br>
+      On Windows:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
<path\to\repo>\cpp\build\< release | debug >\< Release | 
Debug>\arrow_flight_sql_odbc.dll
       ```
       Example command for reference:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
C:\path\to\arrow\cpp\build\release\Release\arrow_flight_sql_odbc.dll
       ```
+      On MacOS:

Review Comment:
   Use consistent OS capitalization: "macOS" (not "MacOS").



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```
+
+### Sample DSN
+```
+[Apache Arrow Flight SQL]
+Driver        = Apache Arrow Flight SQL ODBC Driver
+Host          = 1234.56.789
+Port          = 12345
+UID           = sample_user
+PWD           = sample_password
+useEncryption = false
+useWideChar   = true
+```
+
+### Driver Connection Options
+| Option | Description | Default |
+|--------|-------------|---------------|
+| `driver` | Required: the driver for this ODBC driver. | Apache Arrow Flight 
SQL 
+| `dsn` | Data Source Name used for configuring the connection. | `NONE`
+| `host` | The IP address or hostname for the server. | `NONE`
+| `port` | The TCP port number the server uses for ODBC connections. | `NONE`
+| `user` | The username for authentication to the server. | `NONE`
+| `user id` | The username for authentication to the server. | `NONE`
+| `uid` | The username for authentication to the server. | `NONE`
+| `password` | The password for authentication to the server. | `NONE`
+| `pwd` | The password for authentication to the server. | `NONE`
+| `token` | The personal access token for authentication to the server. | 
`NONE`
+| `useEncryption` | Setting to determine if an SSL-encrypted connection should 
be used. | `true` on Windows & Linux, `false` on MacOS
+| `disableCertificateVerification` | Setting to determine if the driver should 
verify the host certificate against the trust store. | `false`
+| `trustedCerts` | The full path of the .pem file containing certificates for 
the purpose of verifying the server. | `NONE`
+| `useSystemTrustStore` | Setting to determine whether to use a CA certificate 
from the system's trust store or from a specified .pem file. | `true`

Review Comment:
   The documented default for `useSystemTrustStore` appears incorrect on 
non-Windows platforms. In `LoadFlightSslConfigs`, the fallback is `true` on 
Windows but `false` elsewhere (`SYSTEM_TRUST_STORE_DEFAULT`). Please align the 
documented default with the actual behavior.
   ```suggestion
   | `useSystemTrustStore` | Setting to determine whether to use a CA 
certificate from the system's trust store or from a specified .pem file. | 
`true` on Windows, `false` on MacOS & Linux
   ```



##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.
 
-   Need to replace `<path\to\repo>` with actual path to repository in the 
commands.
+On Linux, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.so` for a debug build and 
`build/release/libarrow_flight_sql_odbc.so` for a release build.
 
-   1. `cd <path\to\repo>`
-   2. Run script to register your ODBC DLL as Apache Arrow Flight SQL ODBC 
Driver
+1. Open your system terminal. On Windows this should be Power Shell in 
administrator mode.
+
+2. Register your ODBC binary:
+
+   These commands need `<path/to/repo>` to be replaced with the actual path to 
the repository.
+
+   1. `cd <path/to/repo>`
+   2. Run script to register your ODBC driver binary as Apache Arrow Flight 
SQL ODBC Driver.<br>
+      On Windows:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
<path\to\repo>\cpp\build\< release | debug >\< Release | 
Debug>\arrow_flight_sql_odbc.dll
       ```
       Example command for reference:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
C:\path\to\arrow\cpp\build\release\Release\arrow_flight_sql_odbc.dll
       ```
+      On MacOS:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.dylib
+      ```
+      Example command for reference:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.dylib
+      ```
+      On Linux:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.so
+      ```
+      Example command for reference:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.so
+      ```
 
-If the registration is successful, then Apache Arrow Flight SQL ODBC Driver 
-should show as an available ODBC driver in the x64 ODBC Driver Manager.
+If the registration is successful, then Apache Arrow Flight SQL ODBC Driver 
should show as an available ODBC driver. On Windows this should be visible in 
the x64 ODBC Driver Manager. On MacOS & Linux this should be visible in your 
system odbc.ini.

Review Comment:
   This text says the driver will be visible in the system `odbc.ini`, but the 
unix install script registers the driver in `odbcinst.ini` (Linux: 
`/etc/odbcinst.ini`, macOS: `$HOME/Library/ODBC/odbcinst.ini`). Please update 
the referenced file name/location so users know where to look.
   ```suggestion
   If the registration is successful, then Apache Arrow Flight SQL ODBC Driver 
should show as an available ODBC driver. On Windows this should be visible in 
the x64 ODBC Driver Manager. On MacOS this should be visible in 
`$HOME/Library/ODBC/odbcinst.ini`, and on Linux this should be visible in 
`/etc/odbcinst.ini`.
   ```



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```

Review Comment:
   The sample connection string uses `HOST=1234.56.789`, which is not a valid 
IP address and could confuse users when copy/pasting. Consider using 
`localhost`, `127.0.0.1`, or a clearly non-IP placeholder like `example.com`.



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```
+
+### Sample DSN
+```
+[Apache Arrow Flight SQL]
+Driver        = Apache Arrow Flight SQL ODBC Driver
+Host          = 1234.56.789
+Port          = 12345

Review Comment:
   The DSN example uses `Host = 1234.56.789`, which is not a valid IP address. 
Consider using `localhost`, `127.0.0.1`, or `example.com` so the example is 
copy/paste-friendly.



##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.
 
-   Need to replace `<path\to\repo>` with actual path to repository in the 
commands.
+On Linux, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.so` for a debug build and 
`build/release/libarrow_flight_sql_odbc.so` for a release build.
 
-   1. `cd <path\to\repo>`
-   2. Run script to register your ODBC DLL as Apache Arrow Flight SQL ODBC 
Driver
+1. Open your system terminal. On Windows this should be Power Shell in 
administrator mode.

Review Comment:
   The product name is typically spelled "PowerShell" (one word). Consider 
updating this to match the official naming and avoid confusion when searching 
documentation.
   ```suggestion
   1. Open your system terminal. On Windows this should be PowerShell in 
administrator mode.
   ```



##########
cpp/src/arrow/flight/sql/odbc/connection-options.md:
##########
@@ -0,0 +1,64 @@
+<!---
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+
+# Connection Properties on Apache Arrow Flight SQL ODBC Driver
+
+## Setting ODBC Connection Properties
+
+ODBC connection parameters can be set in a connection string or defined in a 
DSN inside your system's odbc.ini.
+
+The following sample connection string and sample DSN are two equivalent ways 
to connect to Arrow.
+
+### Sample Connection String
+```
+"driver={Apache Arrow Flight SQL ODBC 
Driver};HOST=1234.56.789;port=12345;uid=sample_user;pwd=sample_password;useEncryption=false;useWideChar=true;"
+```
+
+### Sample DSN
+```
+[Apache Arrow Flight SQL]
+Driver        = Apache Arrow Flight SQL ODBC Driver
+Host          = 1234.56.789
+Port          = 12345
+UID           = sample_user
+PWD           = sample_password
+useEncryption = false
+useWideChar   = true
+```
+
+### Driver Connection Options
+| Option | Description | Default |
+|--------|-------------|---------------|
+| `driver` | Required: the driver for this ODBC driver. | Apache Arrow Flight 
SQL 
+| `dsn` | Data Source Name used for configuring the connection. | `NONE`
+| `host` | The IP address or hostname for the server. | `NONE`
+| `port` | The TCP port number the server uses for ODBC connections. | `NONE`
+| `user` | The username for authentication to the server. | `NONE`
+| `user id` | The username for authentication to the server. | `NONE`
+| `uid` | The username for authentication to the server. | `NONE`
+| `password` | The password for authentication to the server. | `NONE`
+| `pwd` | The password for authentication to the server. | `NONE`
+| `token` | The personal access token for authentication to the server. | 
`NONE`
+| `useEncryption` | Setting to determine if an SSL-encrypted connection should 
be used. | `true` on Windows & Linux, `false` on MacOS
+| `disableCertificateVerification` | Setting to determine if the driver should 
verify the host certificate against the trust store. | `false`
+| `trustedCerts` | The full path of the .pem file containing certificates for 
the purpose of verifying the server. | `NONE`
+| `useSystemTrustStore` | Setting to determine whether to use a CA certificate 
from the system's trust store or from a specified .pem file. | `true`
+| `stringColumnLength` | Maximum length of a string column. Some apps may 
require a lower length. | `NONE`
+| `useWideChar` | Setting to determine if wide characters should be used. 
Important for Unicode applications. | `true` on Windows, `false` on MacOS & 
Linux
+| `chunkBufferCapacity` | Capacity of a chunk buffer. Larger values will 
improve throughput at the cost of increased memory usage. | 5

Review Comment:
   The markdown table formatting is broken here (missing closing `|` on the 
`driver` row, and inconsistent trailing pipes). Also, the default driver name 
appears truncated; it should match the actual registered driver name ("Apache 
Arrow Flight SQL ODBC Driver").
   ```suggestion
   | `driver` | Required: the driver for this ODBC driver. | Apache Arrow 
Flight SQL ODBC Driver |
   | `dsn` | Data Source Name used for configuring the connection. | `NONE` |
   | `host` | The IP address or hostname for the server. | `NONE` |
   | `port` | The TCP port number the server uses for ODBC connections. | 
`NONE` |
   | `user` | The username for authentication to the server. | `NONE` |
   | `user id` | The username for authentication to the server. | `NONE` |
   | `uid` | The username for authentication to the server. | `NONE` |
   | `password` | The password for authentication to the server. | `NONE` |
   | `pwd` | The password for authentication to the server. | `NONE` |
   | `token` | The personal access token for authentication to the server. | 
`NONE` |
   | `useEncryption` | Setting to determine if an SSL-encrypted connection 
should be used. | `true` on Windows & Linux, `false` on MacOS |
   | `disableCertificateVerification` | Setting to determine if the driver 
should verify the host certificate against the trust store. | `false` |
   | `trustedCerts` | The full path of the .pem file containing certificates 
for the purpose of verifying the server. | `NONE` |
   | `useSystemTrustStore` | Setting to determine whether to use a CA 
certificate from the system's trust store or from a specified .pem file. | 
`true` |
   | `stringColumnLength` | Maximum length of a string column. Some apps may 
require a lower length. | `NONE` |
   | `useWideChar` | Setting to determine if wide characters should be used. 
Important for Unicode applications. | `true` on Windows, `false` on MacOS & 
Linux |
   | `chunkBufferCapacity` | Capacity of a chunk buffer. Larger values will 
improve throughput at the cost of increased memory usage. | 5 |
   ```



##########
cpp/src/arrow/flight/sql/odbc/README.md:
##########
@@ -17,29 +17,50 @@
   under the License.
 -->
 
-## Steps to Register the 64-bit Apache Arrow ODBC driver on Windows
+## Steps to Register the Apache Arrow Flight SQL ODBC driver
 
-After the build succeeds, the ODBC DLL will be located in 
-`build\debug\Debug` for a debug build and `build\release\Release` for a 
release build.
+After building the repository you will find the built ODBC binaries in the 
build artifacts.
 
-1. Open Windows Power Shell as administrator.
+On Windows, the driver binary will be located at 
`build\debug\Debug\arrow_flight_sql_odbc.dll` for a debug build and 
`build\release\Release\arrow_flight_sql_odbc.dll` for a release build.
 
-2. Register your ODBC DLL:
+On MacOS, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.dylib` for a debug build and 
`build/release/libarrow_flight_sql_odbc.dylib` for a release build.
 
-   Need to replace `<path\to\repo>` with actual path to repository in the 
commands.
+On Linux, the driver binary will be located at 
`build/debug/libarrow_flight_sql_odbc.so` for a debug build and 
`build/release/libarrow_flight_sql_odbc.so` for a release build.
 
-   1. `cd <path\to\repo>`
-   2. Run script to register your ODBC DLL as Apache Arrow Flight SQL ODBC 
Driver
+1. Open your system terminal. On Windows this should be Power Shell in 
administrator mode.
+
+2. Register your ODBC binary:
+
+   These commands need `<path/to/repo>` to be replaced with the actual path to 
the repository.
+
+   1. `cd <path/to/repo>`
+   2. Run script to register your ODBC driver binary as Apache Arrow Flight 
SQL ODBC Driver.<br>
+      On Windows:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
<path\to\repo>\cpp\build\< release | debug >\< Release | 
Debug>\arrow_flight_sql_odbc.dll
       ```
       Example command for reference:
       ```
       .\cpp\src\arrow\flight\sql\odbc\tests\install_odbc.cmd 
C:\path\to\arrow\cpp\build\release\Release\arrow_flight_sql_odbc.dll
       ```
+      On MacOS:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.dylib
+      ```
+      Example command for reference:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.dylib
+      ```
+      On Linux:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.so
+      ```
+      Example command for reference:
+      ```
+      ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.so

Review Comment:
   `install_odbc.sh` exits unless run as root (it prints "Please run this 
script with sudo"). The Linux command example should include `sudo` so the 
instructions work as written.
   ```suggestion
         sudo ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/repo>/cpp/build/< release | debug >/libarrow_flight_sql_odbc.so
         ```
         Example command for reference:
         ```
         sudo ./cpp/src/arrow/flight/sql/odbc/install/unix/install_odbc.sh 
<path/to/arrow>/cpp/build/release/libarrow_flight_sql_odbc.so
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to