Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-2603

Review, resolve NULL checks/isNull()/null around vectors, accessors, JDBC SQLAccessor, etc.

    XMLWordPrintableJSON

Details

    • Task
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • Future
    • Execution - Data Types
    • None

    Description

      Review the checking for SQL NULL and mapping to Java null (for non-primitive types) from the vector and vector access layer up through the JDBC layer (e.g., SQLAccessors (which is just for JDBC)), resolve where checking should be done, and specify that contract information in the Javadoc documentation.

      Considerations:

      • With DRILL-2463, there are now some redundant checks for SQL NULL.
      • Get methods returning non-primitive types must follow a different pattern, since they can't return Java null.
      • Behavior that is very specific to JDBC usually should be implemented in the JDBC layer. (For example, JDBC's NULL-reporting protocol of calling getInt(...) and then calling wasNull() shouldn't appear in lower layers (e.g., the planned DrillClient-level public interface) unless we intentionally choose that protocol for there.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              dsbos Daniel Barclay
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated: