code: def union(self, rdds):
          
          first_jrdd_deserializer = rdds[0]._jrdd_deserializer
          if any(x._jrdd_deserializer != first_jrdd_deserializer for x in rdds):
              rdds = [x._reserialize() for x in rdds]
          cls = SparkContext._jvm.org.apache.spark.api.java.JavaRDD
          jrdds = SparkContext._gateway.new_array(cls, len(rdds))
          for i in range(0, len(rdds)):
              jrdds[i] = rdds[i]._jrdd
          return RDD(self._jsc.union(jrdds), self, rdds[0]._jrdd_deserializer)
docs: Build the union of a list of RDDs.
  
          This supports unions() of RDDs with different serialized formats,
          although this forces them to be reserialized using the default
          serializer:
  
          >>> path = os.path.join(tempdir, "union-text.txt")
          >>> with open(path, "w") as testFile:
          ...    _ = testFile.write("Hello")
          >>> textFile = sc.textFile(path)
          >>> textFile.collect()
          [u'Hello']
          >>> parallelized = sc.parallelize(["World!"])
          >>> sorted(sc.union([textFile, parallelized]).collect())
          [u'Hello', 'World!']