Skip to content

Commit 6fb2706

Browse files
Documenting LDAP URLs
1 parent 03ed205 commit 6fb2706

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

README.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -191,22 +191,22 @@ are supported by Oracle R2DBC:
191191
- `HOST`
192192
- `PORT`
193193
- `DATABASE`
194+
- The database option is interpreted as the
195+
[service name](https://docs.oracle.com/en/database/oracle/oracle-database/21/netag/identifying-and-accessing-database.html#GUID-153861C1-16AD-41EC-A179-074146B722E6)
196+
of an Oracle Database instance. _System Identifiers (SID) are not recognized_.
194197
- `USER`
195198
- `PASSWORD`
196199
- `SSL`
197200
- `CONNECT_TIMEOUT`
198201
- `STATEMENT_TIMEOUT`.
199-
200-
> Oracle R2DBC interprets the `DATABASE` option as the
201-
> [service name](https://docs.oracle.com/en/database/oracle/oracle-database/21/netag/identifying-and-accessing-database.html#GUID-153861C1-16AD-41EC-A179-074146B722E6)
202-
> of an Oracle Database instance. _System Identifiers (SID) are not recognized_.
202+
- `PROTOCOL`
203+
- (For inclusion in the next release) Accepted protocol values are "tcps", "ldap", and "ldaps"
203204

204205
#### Support for Extended R2DBC Options
205206
Oracle R2DBC extends the standard set of R2DBC options to offer functionality
206207
that is specific to Oracle Database and the Oracle JDBC Driver. Extended options
207208
are declared in the
208-
[OracleR2dbcOptions](src/main/java/oracle/r2dbc/OracleR2dbcOptions.java)
209-
class.
209+
[OracleR2dbcOptions](src/main/java/oracle/r2dbc/OracleR2dbcOptions.java) class.
210210

211211
#### Configuring an Oracle Net Descriptor
212212
The `oracle.r2dbc.OracleR2dbcOptions.DESCRIPTOR` option may be used to configure
@@ -234,6 +234,22 @@ located:
234234
r2dbc:oracle://?oracle.r2dbc.descriptor=myAlias&TNS_ADMIN=/path/to/tnsnames/
235235
```
236236

237+
#### (For inclusion in the next release) Configuring an LDAP URL
238+
Use `ldap` or `ldaps` as the URL protocol to have an Oracle Net Descriptor
239+
retrieved from an LDAP server:
240+
```
241+
r2dbc:oracle:ldap://ldap.example.com:7777/sales,cn=OracleContext,dc=com
242+
r2dbc:oracle:ldaps://ldap.example.com:7778/sales,cn=OracleContext,dc=com
243+
```
244+
Use a space separated list of LDAP URIs for fail over and load balancing:
245+
```
246+
r2dbc:oracle:ldap://ldap1.example.com:7777/sales,cn=OracleContext,dc=com%20ldap://ldap2.example.com:7777/sales,cn=OracleContext,dc=com%20ldap://ldap3.example.com:7777/sales,cn=OracleContext,dc=com
247+
```
248+
> Space characters in a URL must be percent encoded as `%20`
249+
250+
An LDAP server request will **block a thread for network I/O** when Oracle R2DBC
251+
creates a new connection.
252+
237253
#### Configuring a java.util.concurrent.Executor
238254
The `oracle.r2dbc.OracleR2dbcOptions.EXECUTOR` option configures a
239255
`java.util.concurrent.Executor` for executing asynchronous callbacks. The

0 commit comments

Comments
 (0)