Thanks for this documentation, Kim. I have a couple comments:
I would reword the changes slightly so that they apply to general table functions and not just to table functions which select from a table in a foreign database:
"With a normal table function, you must select its entire contents. You can, however, write a restricted table function that lets you limit the rows and columns you select. A restricted table function can improve performance greatly."
I would reword the following sentence so that it doesn't refer to the newness of this feature. I don't think we'll remember to update this manual when the feature no longer seems new:
"You must write a class which implements both java.sql.ResultSet and the Derby-specific interface org.apache.derby.vti.RestrictedVTI."
Also, the signature of the ColumnQualifier constructor changed. I apologize for not updating the functional spec. The example should be changed to:
"LASTNAME", ORDER_OP_EQUALS, "Stone" ) )
This page looks ok. Just a heads-up that we need to update this table as part of the UDT documentation because UDTs are now allowed as the types of columns returned by table functions.
This pages looks ok, too. However, it made me realize that it would be useful to have a brief section in the Tuning Guide on how to optimize the performance of table functions by implementing the interface for restricted table functions. This section could just point to the extensive write-up in the Developer Guide.