HCL
Skip to main content  
 
   


SPRTechnote


@Db lookups that return greater than 64K always return an error even when result set is limited to less than 64K

Technote Number: 1231611


Problem:
This issue has been reported to Quality Engineering as SPR# EFEN6LVQMD and is
fixed in Domino 6.5.6, 7.0.1 Fix Pack 1 (FP1) and 7.0.2. The issue was caused
by a fix introduced in Notes/Domino 7.0.1 for SPR# BKOH6FBKDU.

Excerpt from the Lotus Domino 7.0.1 Fix Pack 1 fix list (available at
http://www.ibm.com/developerworks/lotus):

@functions
SPR# EFEN6LVQMD - @Error was returned if @DBLookup returned data more than 64K
bytes long. Prior to this regression, @DBLookup was allowed to return data that
long, but the result of the formula couldn't be longer then 64KB. This fix
repairs the problem, which was a regression introduced in 7.0.1.

Refer to the Upgrade Central site for details on upgrading Domino.

The fix which introduced this regression was made to address an issue where the
@IsError function did not detect cases where a @Db lookups returned greater
than 64K. For more details on this topic, refer to the document titled
"@IsError check does not work as expected with @Db lookup functions that return
more than 64K" (#1233623).

A cumulative client hotfix (CCH) is available for Notes Client 7.0.1 that fixes
the issue reported in SPR# EFEN6LVQMD. Since hotfixes do not receive the
extensive testing that maintenance releases and fix packs do, customers are
encouraged to implement workarounds until this fix is in a generally available
release. However, if workarounds are not possible and you still need a fix,
please contact IBM Technical Support to request the CCH containing the fix for
this issue.

The fix for this issue resolves the described issue where a lookup returning
greater than 64k of data resulted in @ERROR, even when the returned data set
was limited via a formula to decrease the size of the data set to less than 64k.

The fix also changes the behavior relative to the @IsError function with
returned data sets greater than 64k of data which are not limited via a formula
to return less than 64k of data. Because it is not actually an error to return
more than 64k worth of data the @IsError function will not detect this
condition, and the field will reflect the value @ERROR. This is working as
expected. Note: This only effects Computed fields. Keyword fields have
separate behavior.

Examples of behavior
The examples below are relative to a lookup formula, which itself returns more
than 64K of data.

Computed field
5.x: When a document is composed, this error is returned: "The specified
database lookup generated more than 65,000 bytes of results, which is too large
to return in this context."
6.0 through 6.5.5, and 7.0: When a document is composed, this error is
returned: "The result of the computation cannot exceed 65535 bytes."
7.0.1 and 7.0.1 CCH1: The field is populated with @ERROR. This is expected
given that returning more than 64K does not generate an error in 6.x and later
versions.

Computed field containing lookup with @IsError check
5.x: - The @IsError detects that greater than 64K of data was returned, which
is expected as this is not allowed in 5.x.
6.0 through 6.5.5, and 7.0 - When a document is composed, this error is
returned: "The result of the computation cannot exceed 65535 bytes." Note:
This is the issue described in this document.
7.0.1 - @IsError detects that greater than 64K of data was returned.
7.0.1 CCH1 - The field reflects @ERROR and the @IsError check is ignored.
This is expected given that returning more than 64K is not an error.

Computed field which limits the amount of data returned to less than 64K of
data (for example, @Subset.)
5.x - When a document is composed, this error is returned: "Field:
'<fieldname>': The specified database lookup generated more than 65,000 bytes
of results, which is too large for Notes to return in this context."
6.0 through 6.5.5, and 7.0 - The expected data is returned.
7.0.1 - Field reflects @ERROR. Note: This is the regression issue described
previously in this document.
7.0.1 CCH1 - The expected data is returned.

Dialog List field containing lookup with @IsError check
5.x: The @IsError function will work because 5.x does not allow more than 64K
of data to be returned.
6.x and 7.x: Triggering the dialog list returns the error: "The specified
database lookup generated more than 65,000 bytes of results, which is too large
for Notes to return in this context.." This is expected given that returning
more than 64K is not an error.

Dialog List field which limits the amount of data returned to less than 64K of
data (for example, @Subset.)
5.x: As 5.x did not allow more than 64K of data to be returned, the following
expected error is returned: "The specified database lookup generated more than
65,000 bytes of results, which is too large for Notes to return in this
context."
6.x and 7.x: The expected data is returned.
More >





  Document options
Print this document
Print view

  Search
Search Advanced Search


  Fix list views

 RSS feeds   RSS
Subscribe to the fix list

  Resources
Using this database
View notices

  HCL Support
HCL Support


    About HCL Privacy Contact