You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Everett Anderson (JIRA)" <ji...@apache.org> on 2017/02/26 01:38:45 UTC

[jira] [Commented] (SPARK-14393) values generated by non-deterministic functions shouldn't change after coalesce or union

    [ https://issues.apache.org/jira/browse/SPARK-14393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15884486#comment-15884486 ] 

Everett Anderson commented on SPARK-14393:
------------------------------------------

Appears this also happens in 2.0.2.

Thanks for fixing this!

I disagree that monotonically_increasing_id function should ever be allowed to create duplicate values in a table given its documentation is "The generated ID is guaranteed to be monotonically increasing and unique, but not consecutive." 

We were certainly relying on it to produce unique values!

> values generated by non-deterministic functions shouldn't change after coalesce or union
> ----------------------------------------------------------------------------------------
>
>                 Key: SPARK-14393
>                 URL: https://issues.apache.org/jira/browse/SPARK-14393
>             Project: Spark
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 1.6.0, 2.0.0, 2.0.1
>            Reporter: Jason Piper
>            Assignee: Xiangrui Meng
>            Priority: Blocker
>              Labels: correctness, releasenotes
>             Fix For: 2.1.0
>
>
> When utilising monotonicallyIncreasingId with a coalesce, it appears that every partition uses the same offset (0) leading to non-monotonically increasing IDs.
> See examples below
> {code}
> >>> sqlContext.range(10).select(monotonicallyIncreasingId()).show()
> +---------------------------+
> |monotonicallyincreasingid()|
> +---------------------------+
> |                25769803776|
> |                51539607552|
> |                77309411328|
> |               103079215104|
> |               128849018880|
> |               163208757248|
> |               188978561024|
> |               214748364800|
> |               240518168576|
> |               266287972352|
> +---------------------------+
> >>> sqlContext.range(10).select(monotonicallyIncreasingId()).coalesce(1).show()
> +---------------------------+
> |monotonicallyincreasingid()|
> +---------------------------+
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> |                          0|
> +---------------------------+
> >>> sqlContext.range(10).repartition(5).select(monotonicallyIncreasingId()).coalesce(1).show()
> +---------------------------+
> |monotonicallyincreasingid()|
> +---------------------------+
> |                          0|
> |                          1|
> |                          0|
> |                          0|
> |                          1|
> |                          2|
> |                          3|
> |                          0|
> |                          1|
> |                          2|
> +---------------------------+
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org