[ https://issues.apache.org/jira/browse/FLINK-18893?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dian Fu reassigned FLINK-18893: ------------------------------- Assignee: Dian Fu > Python tests fails with "AppendStreamTableSink requires that Table has only > insert changes." > -------------------------------------------------------------------------------------------- > > Key: FLINK-18893 > URL: https://issues.apache.org/jira/browse/FLINK-18893 > Project: Flink > Issue Type: Bug > Components: API / Python, Tests > Affects Versions: 1.12.0, 1.11.2 > Reporter: Robert Metzger > Assignee: Dian Fu > Priority: Major > Labels: test-stability > Fix For: 1.12.0, 1.11.2 > > > https://dev.azure.com/apache-flink/apache-flink/_build/results?buildId=5392&view=logs&j=9cada3cb-c1d3-5621-16da-0f718fb86602&t=455fddbf-5921-5b71-25ac-92992ad80b28 > {code} > 2020-08-11T09:33:00.6405057Z > 2020-08-11T09:33:00.6407257Z =================================== FAILURES > =================================== > 2020-08-11T09:33:00.6407774Z _________ > StreamPandasConversionTests.test_to_pandas_for_retract_table _________ > 2020-08-11T09:33:00.6408007Z > 2020-08-11T09:33:00.6409313Z a = ('xro10353', > <py4j.java_gateway.GatewayClient object at 0x7f9572c53ac8>, > 'z:org.apache.flink.table.runtime.arrow.ArrowUtils', > 'collectAsPandasDataFrame') > 2020-08-11T09:33:00.6409732Z kw = {} > 2020-08-11T09:33:00.6410610Z s = 'org.apache.flink.table.api.TableException: > AppendStreamTableSink requires that Table has only insert changes.' > 2020-08-11T09:33:00.6413478Z stack_trace = > 'org.apache.flink.table.plan.nodes.datastream.DataStreamSink.writeToAppendSink(DataStreamSink.scala:118)\n\t > at > org.ap....api.python.shaded.py4j.GatewayConnection.run(GatewayConnection.java:238)\n\t > at java.lang.Thread.run(Thread.java:748)' > 2020-08-11T09:33:00.6414468Z exception = > 'org.apache.flink.table.api.TableException' > 2020-08-11T09:33:00.6414663Z > 2020-08-11T09:33:00.6414858Z def deco(*a, **kw): > 2020-08-11T09:33:00.6415060Z try: > 2020-08-11T09:33:00.6415274Z > return f(*a, **kw) > 2020-08-11T09:33:00.6415419Z > 2020-08-11T09:33:00.6415615Z pyflink/util/exceptions.py:147: > 2020-08-11T09:33:00.6415918Z _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > 2020-08-11T09:33:00.6416154Z > 2020-08-11T09:33:00.6416459Z answer = 'xro10353' > 2020-08-11T09:33:00.6416746Z gateway_client = > <py4j.java_gateway.GatewayClient object at 0x7f9572c53ac8> > 2020-08-11T09:33:00.6419376Z target_id = > 'z:org.apache.flink.table.runtime.arrow.ArrowUtils' > 2020-08-11T09:33:00.6420325Z name = 'collectAsPandasDataFrame' > 2020-08-11T09:33:00.6420574Z > 2020-08-11T09:33:00.6421009Z def get_return_value(answer, gateway_client, > target_id=None, name=None): > 2020-08-11T09:33:00.6421735Z """Converts an answer received from the > Java gateway into a Python object. > 2020-08-11T09:33:00.6422153Z > 2020-08-11T09:33:00.6422538Z For example, string representation of > integers are converted to Python > 2020-08-11T09:33:00.6423113Z integer, string representation of > objects are converted to JavaObject > 2020-08-11T09:33:00.6423424Z instances, etc. > 2020-08-11T09:33:00.6423594Z > 2020-08-11T09:33:00.6423844Z :param answer: the string returned by > the Java gateway > 2020-08-11T09:33:00.6424203Z :param gateway_client: the gateway > client used to communicate with the Java > 2020-08-11T09:33:00.6424604Z Gateway. Only necessary if the > answer is a reference (e.g., object, > 2020-08-11T09:33:00.6424874Z list, map) > 2020-08-11T09:33:00.6425375Z :param target_id: the name of the object > from which the answer comes from > 2020-08-11T09:33:00.6425735Z (e.g., *object1* in > `object1.hello()`). Optional. > 2020-08-11T09:33:00.6426069Z :param name: the name of the member from > which the answer comes from > 2020-08-11T09:33:00.6426422Z (e.g., *hello* in > `object1.hello()`). Optional. > 2020-08-11T09:33:00.6426648Z """ > 2020-08-11T09:33:00.6426868Z if is_error(answer)[0]: > 2020-08-11T09:33:00.6427112Z if len(answer) > 1: > 2020-08-11T09:33:00.6427358Z type = answer[1] > 2020-08-11T09:33:00.6427665Z value = > OUTPUT_CONVERTER[type](answer[2:], gateway_client) > 2020-08-11T09:33:00.6428032Z if answer[1] == REFERENCE_TYPE: > 2020-08-11T09:33:00.6428313Z raise Py4JJavaError( > 2020-08-11T09:33:00.6428691Z "An error occurred while > calling {0}{1}{2}.\n". > 2020-08-11T09:33:00.6429083Z > format(target_id, ".", > name), value) > 2020-08-11T09:33:00.6429798Z E py4j.protocol.Py4JJavaError: > An error occurred while calling > z:org.apache.flink.table.runtime.arrow.ArrowUtils.collectAsPandasDataFrame. > 2020-08-11T09:33:00.6430529Z E : > org.apache.flink.table.api.TableException: AppendStreamTableSink requires > that Table has only insert changes. > 2020-08-11T09:33:00.6431132Z E at > org.apache.flink.table.plan.nodes.datastream.DataStreamSink.writeToAppendSink(DataStreamSink.scala:118) > 2020-08-11T09:33:00.6431793Z E at > org.apache.flink.table.plan.nodes.datastream.DataStreamSink.writeToSink(DataStreamSink.scala:74) > 2020-08-11T09:33:00.6432378Z E at > org.apache.flink.table.plan.nodes.datastream.DataStreamSink.translateToPlan(DataStreamSink.scala:59) > 2020-08-11T09:33:00.6433145Z E at > org.apache.flink.table.planner.StreamPlanner.org$apache$flink$table$planner$StreamPlanner$$translateToCRow(StreamPlanner.scala:274) > 2020-08-11T09:33:00.6434258Z E at > org.apache.flink.table.planner.StreamPlanner$$anonfun$translate$1.apply(StreamPlanner.scala:120) > 2020-08-11T09:33:00.6435151Z E at > org.apache.flink.table.planner.StreamPlanner$$anonfun$translate$1.apply(StreamPlanner.scala:117) > 2020-08-11T09:33:00.6436010Z E at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) > 2020-08-11T09:33:00.6436565Z E at > scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) > 2020-08-11T09:33:00.6437051Z E at > scala.collection.Iterator$class.foreach(Iterator.scala:891) > 2020-08-11T09:33:00.6437492Z E at > scala.collection.AbstractIterator.foreach(Iterator.scala:1334) > 2020-08-11T09:33:00.6437963Z E at > scala.collection.IterableLike$class.foreach(IterableLike.scala:72) > 2020-08-11T09:33:00.6438568Z E at > scala.collection.AbstractIterable.foreach(Iterable.scala:54) > 2020-08-11T09:33:00.6439109Z E at > scala.collection.TraversableLike$class.map(TraversableLike.scala:234) > 2020-08-11T09:33:00.6439574Z E at > scala.collection.AbstractTraversable.map(Traversable.scala:104) > 2020-08-11T09:33:00.6440142Z E at > org.apache.flink.table.planner.StreamPlanner.translate(StreamPlanner.scala:117) > 2020-08-11T09:33:00.6440681Z E at > org.apache.flink.table.api.internal.TableEnvironmentImpl.translate(TableEnvironmentImpl.java:1264) > 2020-08-11T09:33:00.6441279Z E at > org.apache.flink.table.api.internal.TableEnvironmentImpl.executeInternal(TableEnvironmentImpl.java:733) > 2020-08-11T09:33:00.6441924Z E at > org.apache.flink.table.api.internal.TableImpl.execute(TableImpl.java:570) > 2020-08-11T09:33:00.6442447Z E at > org.apache.flink.table.runtime.arrow.ArrowUtils.collectAsPandasDataFrame(ArrowUtils.java:643) > 2020-08-11T09:33:00.6442934Z E at > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > 2020-08-11T09:33:00.6443477Z E at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > 2020-08-11T09:33:00.6444005Z E at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > 2020-08-11T09:33:00.6444476Z E at > java.lang.reflect.Method.invoke(Method.java:498) > 2020-08-11T09:33:00.6444953Z E at > org.apache.flink.api.python.shaded.py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) > 2020-08-11T09:33:00.6445545Z E at > org.apache.flink.api.python.shaded.py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357) > 2020-08-11T09:33:00.6446079Z E at > org.apache.flink.api.python.shaded.py4j.Gateway.invoke(Gateway.java:282) > 2020-08-11T09:33:00.6446631Z E at > org.apache.flink.api.python.shaded.py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132) > 2020-08-11T09:33:00.6447221Z E at > org.apache.flink.api.python.shaded.py4j.commands.CallCommand.execute(CallCommand.java:79) > 2020-08-11T09:33:00.6447764Z E at > org.apache.flink.api.python.shaded.py4j.GatewayConnection.run(GatewayConnection.java:238) > 2020-08-11T09:33:00.6448224Z E at > java.lang.Thread.run(Thread.java:748) > 2020-08-11T09:33:00.6448437Z > 2020-08-11T09:33:00.6449124Z > .tox/py35-cython/lib/python3.5/site-packages/py4j/protocol.py:328: > Py4JJavaError > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)