object CharVarcharUtils extends Logging
- Alphabetic
- By Inheritance
- CharVarcharUtils
- Logging
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def addPaddingForScan(attr: Attribute): Expression
- def addPaddingInStringComparison(attrs: Seq[Attribute]): Seq[Expression]
Return expressions to apply char type padding for the string comparison between the given attributes.
Return expressions to apply char type padding for the string comparison between the given attributes. When comparing two char type columns/fields, we need to pad the shorter one to the longer length.
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def cleanAttrMetadata(attr: AttributeReference): AttributeReference
Removes the metadata entry that contains the original type string of CharType/VarcharType from the given attribute's metadata.
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def failIfHasCharVarchar(dt: DataType): DataType
Validate the given DataType to fail if it is char or varchar types or contains nested ones
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def getRawSchema(schema: StructType, conf: SQLConf): StructType
- def getRawSchema(schema: StructType): StructType
Re-construct the original schema from the type string in the given metadata of each field.
- def getRawType(metadata: Metadata): Option[DataType]
Re-construct the original data type from the type string in the given metadata.
Re-construct the original data type from the type string in the given metadata. This is needed when dealing with char/varchar columns/fields.
- def getRawTypeString(metadata: Metadata): Option[String]
- def hasCharVarchar(dt: DataType): Boolean
Returns true if the given data type is CharType/VarcharType or has nested CharType/VarcharType.
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
- Attributes
- protected
- Definition Classes
- Logging
- def initializeLogIfNecessary(isInterpreter: Boolean): Unit
- Attributes
- protected
- Definition Classes
- Logging
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isTraceEnabled(): Boolean
- Attributes
- protected
- Definition Classes
- Logging
- def log: Logger
- Attributes
- protected
- Definition Classes
- Logging
- def logDebug(msg: => String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logDebug(msg: => String): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logError(msg: => String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logError(msg: => String): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logInfo(msg: => String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logInfo(msg: => String): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logName: String
- Attributes
- protected
- Definition Classes
- Logging
- def logTrace(msg: => String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logTrace(msg: => String): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logWarning(msg: => String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
- def logWarning(msg: => String): Unit
- Attributes
- protected
- Definition Classes
- Logging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def replaceCharVarcharWithString(dt: DataType): DataType
Replaces CharType/VarcharType with StringType recursively in the given data type.
- def replaceCharVarcharWithStringForCast(dt: DataType): DataType
Replaces CharType/VarcharType with StringType recursively in the given data type, with a warning message if it has char or varchar types
- def replaceCharVarcharWithStringInSchema(st: StructType): StructType
Replaces CharType/VarcharType with StringType recursively in the given struct type.
Replaces CharType/VarcharType with StringType recursively in the given struct type. If a top-level StructField's data type is CharType/VarcharType or has nested CharType/VarcharType, this method will add the original type string to the StructField's metadata, so that we can re-construct the original data type with CharType/VarcharType later when needed.
- def replaceCharWithVarchar(dt: DataType): DataType
Replaces CharType with VarcharType recursively in the given data type.
- def stringLengthCheck(expr: Expression, dt: DataType): Expression
- def stringLengthCheck(expr: Expression, targetAttr: Attribute): Expression
Returns an expression to apply write-side string length check for the given expression.
Returns an expression to apply write-side string length check for the given expression. A string value can not exceed N characters if it's written into a CHAR(N)/VARCHAR(N) column/field.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()