Giter Site home page Giter Site logo

iceberg's People

Contributors

aokolnychyi avatar arina-ielchiieva avatar chenjunjiedada avatar edgarrd avatar electrum avatar fokko avatar jerryshao avatar jun-he avatar jzhuge avatar manishmalhotrawork avatar massdosage avatar mccheah avatar moulimukherjee avatar omalley avatar openinx avatar parth-brahmbhatt avatar prodeezy avatar rdblue avatar rdsr avatar samarthjain avatar shardulm94 avatar sujithjay avatar tgooch44 avatar vanliu-tx avatar vrozov avatar wangmiao1981 avatar waterlx avatar xabriel avatar xiao-chen avatar xiaokunding avatar

iceberg's Issues

Hive: 设置iceberg表commit时hive metastore check lock超时机制

hive metastore在高并发场景下可能因为获取锁的请求堆积而导致处理能力下降,进而可能雪崩导致iceberg表commit成功次数陡降。为了消峰,避免hive metastore雪崩,当发现iceberg表commit过程中metastore client处理一个请求的耗时超出阈值时,中断此次commit操作,避免给hive metastore增加更多的工作负载。

Spark: fix spark extension test failure

Task :iceberg-spark3-extensions:test

org.apache.iceberg.spark.extensions.TestCopyOnWriteDelete > testDeleteFromEmptyTable[catalogName = testhive, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hive, default-namespace=default}, format = orc, vectorized = true] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<0>

org.apache.iceberg.spark.extensions.TestCopyOnWriteDelete > testDeleteNonExistingRecords[catalogName = testhive, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hive, default-namespace=default}, format = orc, vectorized = true] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<1>

org.apache.iceberg.spark.extensions.TestCopyOnWriteDelete > testDeleteFromEmptyTable[catalogName = testhadoop, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hadoop}, format = parquet, vectorized = true] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<0>

org.apache.iceberg.spark.extensions.TestCopyOnWriteDelete > testDeleteNonExistingRecords[catalogName = testhadoop, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hadoop}, format = parquet, vectorized = true] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<1>

org.apache.iceberg.spark.extensions.TestCopyOnWriteDelete > testDeleteFromEmptyTable[catalogName = spark_catalog, implementation = org.apache.iceberg.spark.SparkSessionCatalog, config = {type=hive, default-namespace=default, clients=1, parquet-enabled=false, cache-enabled=false}, format = avro, vectorized = false] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<0>

org.apache.iceberg.spark.extensions.TestCopyOnWriteDelete > testDeleteNonExistingRecords[catalogName = spark_catalog, implementation = org.apache.iceberg.spark.SparkSessionCatalog, config = {type=hive, default-namespace=default, clients=1, parquet-enabled=false, cache-enabled=false}, format = avro, vectorized = false] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<1>

org.apache.iceberg.spark.extensions.TestCopyOnWriteUpdate > testUpdateNonExistingRecords[catalogName = testhive, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hive, default-namespace=default}, format = orc, vectorized = true] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<1>

org.apache.iceberg.spark.extensions.TestCopyOnWriteUpdate > testUpdateEmptyTable[catalogName = testhive, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hive, default-namespace=default}, format = orc, vectorized = true] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<0>

org.apache.iceberg.spark.extensions.TestCopyOnWriteUpdate > testUpdateNonExistingRecords[catalogName = testhadoop, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hadoop}, format = parquet, vectorized = false] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<1>

org.apache.iceberg.spark.extensions.TestCopyOnWriteUpdate > testUpdateEmptyTable[catalogName = testhadoop, implementation = org.apache.iceberg.spark.SparkCatalog, config = {type=hadoop}, format = parquet, vectorized = false] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<0>

org.apache.iceberg.spark.extensions.TestCopyOnWriteUpdate > testUpdateNonExistingRecords[catalogName = spark_catalog, implementation = org.apache.iceberg.spark.SparkSessionCatalog, config = {type=hive, default-namespace=default, clients=1, parquet-enabled=false, cache-enabled=false}, format = avro, vectorized = false] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<1>

org.apache.iceberg.spark.extensions.TestCopyOnWriteUpdate > testUpdateEmptyTable[catalogName = spark_catalog, implementation = org.apache.iceberg.spark.SparkSessionCatalog, config = {type=hive, default-namespace=default, clients=1, parquet-enabled=false, cache-enabled=false}, format = avro, vectorized = false] FAILED
    java.lang.AssertionError: Should have 2 snapshots expected:<2> but was:<0>

Allow fetching flink job id from environment

flink的k8s的native application模式提交的一个flink集群上只有一个job。
flink框架里写死了job id是00000000000000000000000000000000,导致无法区分数据是由那个k8s的pod写入的,不方便查看日志定位问题。
这里支持从flink环境变量里获取jobid的值,写入commit的消息里。

Hive: HiveCatalog listTables takes minutes if there are thousands tables in namespace

when we update iceberg 0.9.0 to 0.12.1, we found an issue that HiveCatalog#listTables(Namespace) takes minutes in 0.12.1 in our production env, compared to ~0.1s in 0.9.0.

In our production, this method takes 28s for one namespace contains 517 tables, 75s for one namespace contains 1301 tables, more than half an hour for one namespace with 27000+ tables.

Spark: skip empty dataset in append and overwrite mode

In 0.12.1, write empty dataset by Spark append mode will result in an empty snapshot created, write empty dataset by Spark overwrite mode will result in an exception below:

org.apache.spark.SparkException: Writing job aborted.

	at org.apache.spark.sql.execution.datasources.v2.WriteToDataSourceV2Exec.doExecute(WriteToDataSourceV2Exec.scala:92)
	at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$1.apply(SparkPlan.scala:131)
	at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$1.apply(SparkPlan.scala:127)
	at org.apache.spark.sql.execution.SparkPlan$$anonfun$executeQuery$1.apply(SparkPlan.scala:155)
	at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
	at org.apache.spark.sql.execution.SparkPlan.executeQuery(SparkPlan.scala:152)
	at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:127)
	at org.apache.spark.sql.execution.QueryExecution.toRdd$lzycompute(QueryExecution.scala:80)
	at org.apache.spark.sql.execution.QueryExecution.toRdd(QueryExecution.scala:80)
	at org.apache.spark.sql.DataFrameWriter$$anonfun$runCommand$1.apply(DataFrameWriter.scala:676)
	at org.apache.spark.sql.DataFrameWriter$$anonfun$runCommand$1.apply(DataFrameWriter.scala:676)
	at org.apache.spark.sql.execution.SQLExecution$$anonfun$withNewExecutionId$1.apply(SQLExecution.scala:78)
	at org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:125)
	at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:73)
	at org.apache.spark.sql.DataFrameWriter.runCommand(DataFrameWriter.scala:676)
	at org.apache.spark.sql.DataFrameWriter.save(DataFrameWriter.scala:260)
	at org.apache.spark.sql.DataFrameWriter.save(DataFrameWriter.scala:229)
	at com.tencent.bk.base.datahub.iceberg.SparkUtils.writeTable(SparkUtils.java:248)
	at com.tencent.bk.base.datahub.iceberg.TestSparkUtils.testWriteEmptyDs(TestSparkUtils.java:223)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
	at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:230)
	at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:58)
Caused by: java.lang.IllegalStateException: Cannot determine partition spec: no data or delete files have been added
	at org.apache.iceberg.relocated.com.google.common.base.Preconditions.checkState(Preconditions.java:508)
	at org.apache.iceberg.MergingSnapshotProducer.writeSpec(MergingSnapshotProducer.java:121)
	at org.apache.iceberg.BaseReplacePartitions.apply(BaseReplacePartitions.java:58)
	at org.apache.iceberg.SnapshotProducer.apply(SnapshotProducer.java:164)
	at org.apache.iceberg.BaseReplacePartitions.apply(BaseReplacePartitions.java:26)
	at org.apache.iceberg.SnapshotProducer.lambda$commit$2(SnapshotProducer.java:283)
	at org.apache.iceberg.util.Tasks$Builder.runTaskWithRetry(Tasks.java:405)
	at org.apache.iceberg.util.Tasks$Builder.runSingleThreaded(Tasks.java:214)
	at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:198)
	at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:190)
	at org.apache.iceberg.SnapshotProducer.commit(SnapshotProducer.java:282)
	at org.apache.iceberg.BaseReplacePartitions.commit(BaseReplacePartitions.java:26)
	at org.apache.iceberg.spark.source.Writer.commitOperation(Writer.java:169)
	at org.apache.iceberg.spark.source.Writer.replacePartitions(Writer.java:195)
	at org.apache.iceberg.spark.source.Writer.commit(Writer.java:145)
	at org.apache.spark.sql.execution.datasources.v2.WriteToDataSourceV2Exec.doExecute(WriteToDataSourceV2Exec.scala:76)
	... 42 more

Hive: fix HiveTableTest#testListTables failure

> Task :iceberg-hive-metastore:test

org.apache.iceberg.hive.HiveTableTest > testListTables FAILED
    java.lang.AssertionError: should only 1 iceberg table . expected:<1> but was:<2>
        at org.junit.Assert.fail(Assert.java:89)
        at org.junit.Assert.failNotEquals(Assert.java:835)
        at org.junit.Assert.assertEquals(Assert.java:647)
        at org.apache.iceberg.hive.HiveTableTest.testListTables(HiveTableTest.java:326)

Flink: stream rewrite failed in some cases

2022-05-13 11:18:17,872 INFO  org.apache.iceberg.flink.sink.IcebergRewriteFilesCommitter   [] - Committing rewrite file groups of table iceberg_hive_catalog.iceberg_2005000727.mysqlcdc_van_7010_2005000727: RewriteResult{partitions=[PartitionData{id_trunc=1200000, ____et_month=626}], startingSnapshotId=8635809729983299546, numRewrittenFiles=2, numAddedFiles=1}.
2022-05-13 11:18:18,254 ERROR org.apache.iceberg.flink.sink.IcebergRewriteFilesCommitter   [] - Cannot commit rewrite file groups, attempting to clean up written files.
org.apache.iceberg.exceptions.ValidationException: Missing required files to delete: hdfs://testOnline/data/iceberg/warehouse/iceberg_2005000727.db/mysqlcdc_van_7010_2005000727/data/id_trunc=1200000/____et_month=2022-03/00000-0-f95888c5-64e0-4747-82fa-81cc533ec8d9-00057.parquet,hdfs://testOnline/data/iceberg/warehouse/iceberg_2005000727.db/mysqlcdc_van_7010_2005000727/data/id_trunc=1200000/____et_month=2022-03/00000-0-f95888c5-64e0-4747-82fa-81cc533ec8d9-00059.parquet
        at org.apache.iceberg.exceptions.ValidationException.check(ValidationException.java:46) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.ManifestFilterManager.validateRequiredDeletes(ManifestFilterManager.java:227) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.ManifestFilterManager.filterManifests(ManifestFilterManager.java:190) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.MergingSnapshotProducer.apply(MergingSnapshotProducer.java:517) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.SnapshotProducer.apply(SnapshotProducer.java:164) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.SnapshotProducer.lambda$commit$2(SnapshotProducer.java:283) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.util.Tasks$Builder.runTaskWithRetry(Tasks.java:404) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.util.Tasks$Builder.runSingleThreaded(Tasks.java:214) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:198) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:190) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.SnapshotProducer.commit(SnapshotProducer.java:282) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.flink.sink.IcebergRewriteFilesCommitter.commitRewriteResult(IcebergRewriteFilesCommitter.java:104) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.flink.sink.IcebergRewriteFilesCommitter.commitRewriteResults(IcebergRewriteFilesCommitter.java:90) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.iceberg.flink.sink.IcebergRewriteFilesCommitter.snapshotState(IcebergRewriteFilesCommitter.java:72) ~[blob_p-18eaa50b994da682c46635771ae4356412f1b414-6517ea91cf6e0520f8de477c5dbe5f6a:?]
        at org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.snapshotState(StreamOperatorStateHandler.java:219) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.snapshotState(StreamOperatorStateHandler.java:170) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.api.operators.AbstractStreamOperator.snapshotState(AbstractStreamOperator.java:348) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.checkpointStreamOperator(RegularOperatorChain.java:233) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.buildOperatorSnapshotFutures(RegularOperatorChain.java:206) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.snapshotState(RegularOperatorChain.java:186) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.SubtaskCheckpointCoordinatorImpl.takeSnapshotSync(SubtaskCheckpointCoordinatorImpl.java:605) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.SubtaskCheckpointCoordinatorImpl.checkpointState(SubtaskCheckpointCoordinatorImpl.java:315) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTask.lambda$performCheckpoint$14(StreamTask.java:1329) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.runThrowing(StreamTaskActionExecutor.java:50) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTask.performCheckpoint(StreamTask.java:1315) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTask.triggerCheckpointOnBarrier(StreamTask.java:1258) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.CheckpointBarrierHandler.notifyCheckpoint(CheckpointBarrierHandler.java:147) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.triggerCheckpoint(SingleCheckpointBarrierHandler.java:287) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.access$100(SingleCheckpointBarrierHandler.java:64) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler$ControllerImpl.triggerGlobalCheckpoint(SingleCheckpointBarrierHandler.java:493) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.AbstractAlignedBarrierHandlerState.triggerGlobalCheckpoint(AbstractAlignedBarrierHandlerState.java:74) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.AbstractAlignedBarrierHandlerState.barrierReceived(AbstractAlignedBarrierHandlerState.java:66) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.lambda$processBarrier$2(SingleCheckpointBarrierHandler.java:234) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.markCheckpointAlignedAndTransformState(SingleCheckpointBarrierHandler.java:262) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.SingleCheckpointBarrierHandler.processBarrier(SingleCheckpointBarrierHandler.java:231) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.CheckpointedInputGate.handleEvent(CheckpointedInputGate.java:181) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.checkpointing.CheckpointedInputGate.pollNext(CheckpointedInputGate.java:159) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.AbstractStreamTaskNetworkInput.emitNext(AbstractStreamTaskNetworkInput.java:110) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.io.StreamOneInputProcessor.processInput(StreamOneInputProcessor.java:65) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTask.processInput(StreamTask.java:496) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.mailbox.MailboxProcessor.runMailboxLoop(MailboxProcessor.java:203) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTask.runMailboxLoop(StreamTask.java:809) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:761) ~[flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:958) [flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:937) [flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:766) [flink-dist_2.11-1.14.3.jar:1.14.3]
        at org.apache.flink.runtime.taskmanager.Task.run(Task.java:575) [flink-dist_2.11-1.14.3.jar:1.14.3]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_292]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.