Skip to content

Commit

Permalink
Add an override search limits request control
Browse files Browse the repository at this point in the history
Added support for an UnboundID/Ping-proprietary control that can be
included in a search request to allow the client to attempt to
override various internal limits that might otherwise be in place
for that operation.  The ldapsearch tool has also been updated to
include support for this control.
  • Loading branch information
dirmgr committed Mar 16, 2018
1 parent e30ae57 commit 7d02fa0
Show file tree
Hide file tree
Showing 7 changed files with 1,318 additions and 9 deletions.
28 changes: 19 additions & 9 deletions docs/release-notes.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,25 @@ <h3>Version 4.0.5</h3>
</li>

<li>
Added support for two new UnboundID/Ping-proprietary request controls. The
reject unindexed search request control can be used to indicate that the server
should reject a search request if it cannot be efficiently processed using
server indexes, even if the requester has the unindexed-search privilege. The
permit unindexed search request control can be used to indicate that the server
should process the search request even if it is unindexed, as long as the
requester has the unindexed-search-with-control privilege. The
<tt>ldapsearch</tt> tool has also been updated allow these controls to be
included in the search requests that it generates.
Added support for two new UnboundID/Ping-proprietary request controls that can
help clients prevent inadvertently requesting unindexed searches. The reject
unindexed search request control can be used to indicate that the server should
reject a search request if it cannot be efficiently processed using server
indexes, even if the requester has the unindexed-search privilege. The permit
unindexed search request control can be used to indicate that the server should
process the search request even if it is unindexed, as long as the requester has
the unindexed-search-with-control privilege. The <tt>ldapsearch</tt> tool has
also been updated allow these controls to be included in the search requests
that it generates.
<br><br>
</li>

<li>
Added support for a new UnboundID/Ping-proprietary request control that can be
included in a search request to indicate that the client wishes to override an
internal limit that might otherwise be in effect for that operation. The
<tt>ldapsearch</tt> tool has been updated to allow this control to be included
in the search requests that it generates.
<br><br>
</li>

Expand Down
18 changes: 18 additions & 0 deletions messages/unboundid-ldapsdk-tools.properties
Original file line number Diff line number Diff line change
Expand Up @@ -1334,6 +1334,11 @@ INFO_LDAPMODIFY_ARG_DESCRIPTION_ASSURED_REPL_REMOTE_LEVEL=Specifies the \
INFO_LDAPMODIFY_ARG_DESCRIPTION_OPERATION_PURPOSE=Indicates that all \
operations should include the UnboundID-proprietary 'operation purpose' \
request control to provide the specified reason for the operation.
INFO_LDAPSEARCH_NAME_VALUE_PLACEHOLDER={name=value}
INFO_LDAPSEARCH_ARG_DESCRIPTION_OVERRIDE_SEARCH_LIMIT=Indicates that search \
operations should include the override search limits request control with \
the specified name-value pair. This may be provided multiple times to \
specify multiple property name-value pairs to include in the control.
INFO_LDAPMODIFY_ARG_DESCRIPTION_MULTI_UPDATE_ERROR_BEHAVIOR=Indicates that \
all add, delete, modify, and modify DN requests should be sent to the \
server in a single multi-update request with the specified error behavior. \
Expand Down Expand Up @@ -1993,6 +1998,19 @@ ERR_LDAPSEARCH_MATCHING_ENTRY_COUNT_INVALID_VALUE=The value provided for the \
filter components left to evaluate), and/or ':debug' (to indicate that the \
response control should include debug information about the processing \
performed in the course of making the determination.
ERR_LDAPSEARCH_OVERRIDE_LIMIT_NO_EQUAL=A value provided for the ''{0}'' \
argument is invalid because it does not contain an equal sign to separate \
the property name from the value.
ERR_LDAPSEARCH_OVERRIDE_LIMIT_EMPTY_PROPERTY_NAME=A value provided for the \
''{0}'' argument is invalid because it starts with an equal sign, \
indicating an empty property name. Property names must not be empty.
ERR_LDAPSEARCH_OVERRIDE_LIMIT_DUPLICATE_PROPERTY_NAME=A value provided for \
the ''{0}'' argument is invalid because there are multiple attempts to set \
a value for property ''{1}''. The same property cannot be set multiple \
times.
ERR_LDAPSEARCH_OVERRIDE_LIMIT_EMPTY_PROPERTY_VALUE=A value provided for the \
''{0}'' argument is invalid because it contains an empty value for property \
''{1}''. Property values must not be empty.
ERR_LDAPSEARCH_PERSISTENT_SEARCH_INVALID_VALUE=The value provided for the \
''{0}'' argument is invalid. The value must start with 'ps'. That may be \
followed by a colon and a comma-delimited list of change types ('add', \
Expand Down
20 changes: 20 additions & 0 deletions messages/unboundid-ldapsdk-unboundid-controls.properties
Original file line number Diff line number Diff line change
Expand Up @@ -642,3 +642,23 @@ ERR_PERMIT_UNINDEXED_SEARCH_REQUEST_HAS_VALUE=The provided control cannot be \
decoded as a permit unindexed search request control because it has a value.
INFO_CONTROL_NAME_PERMIT_UNINDEXED_SEARCH_REQUEST=Permit Unindexed Search \
Request Control
ERR_OVERRIDE_SEARCH_LIMITS_REQUEST_NO_VALUE=Unable to decode the provided \
control as an override search limits request control because the provided \
control does not have a value.
ERR_OVERRIDE_SEARCH_LIMITS_REQUEST_EMPTY_PROPERTY_NAME=Unable to decode the \
provided control as an override search limits request control because the \
provided control contained a property with an empty name.
ERR_OVERRIDE_SEARCH_LIMITS_REQUEST_EMPTY_PROPERTY_VALUE=Unable to decode the \
provided control as an override search limits request control because the \
provided control contained property ''{0}''' with an empty value.
ERR_OVERRIDE_SEARCH_LIMITS_REQUEST_DUPLICATE_PROPERTY_NAME=Unable to decode \
the provided control as an override search limits request control because \
the provided control contained multiple values for property ''{0}''.
ERR_OVERRIDE_SEARCH_LIMITS_REQUEST_CANNOT_DECODE_VALUE=Unable to decode the \
provided control as an override search limits request control because an \
error occurred while parsing the request value: {0}
ERR_OVERRIDE_SEARCH_LIMITS_REQUEST_CONTROL_NO_PROPERTIES=Unable to decode the \
provided control as an override search limits request control because the \
control value did not include any properties.
INFO_OVERRIDE_SEARCH_LIMITS_REQUEST_CONTROL_NAME=Override Search Limits \
Request Control
Loading

0 comments on commit 7d02fa0

Please sign in to comment.