Skip to content

Commit dd3bf01

Browse files
committed
Replace specific sequence encoders with generic sequence encoder
1 parent 38f4e86 commit dd3bf01

File tree

2 files changed

+15
-44
lines changed

2 files changed

+15
-44
lines changed

sql/core/src/main/scala/org/apache/spark/sql/SQLImplicits.scala

Lines changed: 11 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -111,93 +111,60 @@ abstract class SQLImplicits extends LowPrioritySQLImplicits {
111111

112112
/**
113113
* @since 1.6.1
114-
* @deprecated use [[newIntSequenceEncoder]]
114+
* @deprecated use [[newSequenceEncoder]]
115115
*/
116116
def newIntSeqEncoder: Encoder[Seq[Int]] = ExpressionEncoder()
117117

118118
/**
119119
* @since 1.6.1
120-
* @deprecated use [[newLongSequenceEncoder]]
120+
* @deprecated use [[newSequenceEncoder]]
121121
*/
122122
def newLongSeqEncoder: Encoder[Seq[Long]] = ExpressionEncoder()
123123

124124
/**
125125
* @since 1.6.1
126-
* @deprecated use [[newDoubleSequenceEncoder]]
126+
* @deprecated use [[newSequenceEncoder]]
127127
*/
128128
def newDoubleSeqEncoder: Encoder[Seq[Double]] = ExpressionEncoder()
129129

130130
/**
131131
* @since 1.6.1
132-
* @deprecated use [[newFloatSequenceEncoder]]
132+
* @deprecated use [[newSequenceEncoder]]
133133
*/
134134
def newFloatSeqEncoder: Encoder[Seq[Float]] = ExpressionEncoder()
135135

136136
/**
137137
* @since 1.6.1
138-
* @deprecated use [[newByteSequenceEncoder]]
138+
* @deprecated use [[newSequenceEncoder]]
139139
*/
140140
def newByteSeqEncoder: Encoder[Seq[Byte]] = ExpressionEncoder()
141141

142142
/**
143143
* @since 1.6.1
144-
* @deprecated use [[newShortSequenceEncoder]]
144+
* @deprecated use [[newSequenceEncoder]]
145145
*/
146146
def newShortSeqEncoder: Encoder[Seq[Short]] = ExpressionEncoder()
147147

148148
/**
149149
* @since 1.6.1
150-
* @deprecated use [[newBooleanSequenceEncoder]]
150+
* @deprecated use [[newSequenceEncoder]]
151151
*/
152152
def newBooleanSeqEncoder: Encoder[Seq[Boolean]] = ExpressionEncoder()
153153

154154
/**
155155
* @since 1.6.1
156-
* @deprecated use [[newStringSequenceEncoder]]
156+
* @deprecated use [[newSequenceEncoder]]
157157
*/
158158
def newStringSeqEncoder: Encoder[Seq[String]] = ExpressionEncoder()
159159

160160
/**
161161
* @since 1.6.1
162-
* @deprecated use [[newProductSequenceEncoder]]
162+
* @deprecated use [[newSequenceEncoder]]
163163
*/
164-
implicit def newProductSeqEncoder[A <: Product : TypeTag]: Encoder[Seq[A]] = ExpressionEncoder()
164+
def newProductSeqEncoder[A <: Product : TypeTag]: Encoder[Seq[A]] = ExpressionEncoder()
165165

166166
/** @since 2.2.0 */
167-
implicit def newIntSequenceEncoder[T <: Seq[Int] : TypeTag]: Encoder[T] =
168-
ExpressionEncoder()
169-
170-
/** @since 2.2.0 */
171-
implicit def newLongSequenceEncoder[T <: Seq[Long] : TypeTag]: Encoder[T] =
172-
ExpressionEncoder()
173-
174-
/** @since 2.2.0 */
175-
implicit def newDoubleSequenceEncoder[T <: Seq[Double] : TypeTag]: Encoder[T] =
176-
ExpressionEncoder()
177-
178-
/** @since 2.2.0 */
179-
implicit def newFloatSequenceEncoder[T <: Seq[Float] : TypeTag]: Encoder[T] =
180-
ExpressionEncoder()
181-
182-
/** @since 2.2.0 */
183-
implicit def newByteSequenceEncoder[T <: Seq[Byte] : TypeTag]: Encoder[T] =
184-
ExpressionEncoder()
185-
186-
/** @since 2.2.0 */
187-
implicit def newShortSequenceEncoder[T <: Seq[Short] : TypeTag]: Encoder[T] =
188-
ExpressionEncoder()
189-
190-
/** @since 2.2.0 */
191-
implicit def newBooleanSequenceEncoder[T <: Seq[Boolean] : TypeTag]: Encoder[T] =
192-
ExpressionEncoder()
193-
194-
/** @since 2.2.0 */
195-
implicit def newStringSequenceEncoder[T <: Seq[String] : TypeTag]: Encoder[T] =
196-
ExpressionEncoder()
197-
198-
/** @since 2.2.0 */
199-
implicit def newProductSequenceEncoder[T <: Seq[Product] : TypeTag]: Encoder[T] =
200-
ExpressionEncoder()
167+
implicit def newSequenceEncoder[T <: Seq[_] : TypeTag]: Encoder[T] = ExpressionEncoder()
201168

202169
// Arrays
203170

sql/core/src/test/scala/org/apache/spark/sql/DatasetPrimitiveSuite.scala

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,10 @@ class DatasetPrimitiveSuite extends QueryTest with SharedSQLContext {
258258
ListClass(List(1)) -> Queue("test" -> SeqClass(Seq(2))))
259259
}
260260

261+
test("nested sequences") {
262+
checkDataset(Seq(Seq(Seq(1))).toDS(), Seq(Seq(1)))
263+
}
264+
261265
test("package objects") {
262266
import packageobject._
263267
checkDataset(Seq(PackageClass(1)).toDS(), PackageClass(1))

0 commit comments

Comments
 (0)