Derby
  1. Derby
  2. DERBY-4507

Write user documentation for restricted table functions.

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 10.6.1.0
    • Fix Version/s: 10.6.1.0
    • Component/s: Documentation
    • Labels:
      None

      Description

      We need to document this 10.6 feature: DERBY-4357.

      1. DERBY-4507.diff
        30 kB
        Kim Haase
      2. DERBY-4507.stat
        0.4 kB
        Kim Haase
      3. DERBY-4507.zip
        20 kB
        Kim Haase
      4. DERBY-4507-2.diff
        32 kB
        Kim Haase
      5. DERBY-4507-2.stat
        0.4 kB
        Kim Haase
      6. DERBY-4507-2.zip
        22 kB
        Kim Haase

        Issue Links

          Activity

          Hide
          Kim Haase added a comment -

          Thank you, Rick!

          Committed patch DERBY-4507-2.diff to documentation trunk at revision 916743.

          Show
          Kim Haase added a comment - Thank you, Rick! Committed patch DERBY-4507 -2.diff to documentation trunk at revision 916743.
          Hide
          Rick Hillegas added a comment -

          Thanks Kim. The revised patch looks great. +1

          Show
          Rick Hillegas added a comment - Thanks Kim. The revised patch looks great. +1
          Hide
          Kim Haase added a comment -

          Thanks, Rick. I'll file an issue for the UDT documentation so we can track it.

          Show
          Kim Haase added a comment - Thanks, Rick. I'll file an issue for the UDT documentation so we can track it.
          Hide
          Rick Hillegas added a comment -

          Hi Kim,

          Thanks for the revised patch. I'll take a look at it later when I pop off my interrupt stack. The JIRA for UDTs is DERBY-651. That JIRA uses the term "Abstract Data Types" in its early comments. Later comments use the term "User Defined Types". Cheers-Rick

          Show
          Rick Hillegas added a comment - Hi Kim, Thanks for the revised patch. I'll take a look at it later when I pop off my interrupt stack. The JIRA for UDTs is DERBY-651 . That JIRA uses the term "Abstract Data Types" in its early comments. Later comments use the term "User Defined Types". Cheers-Rick
          Hide
          Kim Haase added a comment -

          Thanks, Rick, for the helpful suggestions. I'm attaching DERBY-4507-2.diff, DERBY-4507-2.stat, and DERBY-4507-2.zip, which make the suggested changes to the Dev Guide topics and also modify the tuning guide topic – I retitled it to make it a bit more general and added a sentence on restricted table functions.

          Let me know if any more changes are needed.

          I will keep the UDT item in mind. BTW, what is the base JIRA issue for UDTs? I can't seem to find it.

          Show
          Kim Haase added a comment - Thanks, Rick, for the helpful suggestions. I'm attaching DERBY-4507 -2.diff, DERBY-4507 -2.stat, and DERBY-4507 -2.zip, which make the suggested changes to the Dev Guide topics and also modify the tuning guide topic – I retitled it to make it a bit more general and added a sentence on restricted table functions. Let me know if any more changes are needed. I will keep the UDT item in mind. BTW, what is the base JIRA issue for UDTs? I can't seem to find it.
          Hide
          Rick Hillegas added a comment -

          Thanks for this documentation, Kim. I have a couple comments:

          --------------

          cdevspecialtfbasic.html:

          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."

          --------------

          cdevspecialtfrestr.html:

          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:

          new Restriction.ColumnQualifier(
          "LASTNAME", ORDER_OP_EQUALS, "Stone" ) )

          --------------

          cdevspecialtfgetxxx.html:

          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.

          --------------

          cdevspecialtfopttune.html:

          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.

          Show
          Rick Hillegas added a comment - Thanks for this documentation, Kim. I have a couple comments: -------------- cdevspecialtfbasic.html: 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." -------------- cdevspecialtfrestr.html: 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: new Restriction.ColumnQualifier( "LASTNAME", ORDER_OP_EQUALS, "Stone" ) ) -------------- cdevspecialtfgetxxx.html: 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. -------------- cdevspecialtfopttune.html: 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.
          Hide
          Kim Haase added a comment -

          Attaching DERBY-4507.diff, DERBY-4507.stat, and DERBY-4507.zip.

          Added topic for restricted table functions in Developer's Guide. Also changed hard-coded "Derby" in other topics to the conrefs phrase, and redid line breaks in examples so they look okay in both PDF and HTML frames.

          I didn't make any change to the CREATE FUNCTION statement in the Ref Manual because the current paragraph on table functions seemed general enough not to need any change. If you have any thoughts on needed changes here, please let me know.

          Show
          Kim Haase added a comment - Attaching DERBY-4507 .diff, DERBY-4507 .stat, and DERBY-4507 .zip. Added topic for restricted table functions in Developer's Guide. Also changed hard-coded "Derby" in other topics to the conrefs phrase, and redid line breaks in examples so they look okay in both PDF and HTML frames. I didn't make any change to the CREATE FUNCTION statement in the Ref Manual because the current paragraph on table functions seemed general enough not to need any change. If you have any thoughts on needed changes here, please let me know.

            People

            • Assignee:
              Kim Haase
              Reporter:
              Rick Hillegas
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development