Apache Beam: PubsubReader epäonnistuu NPE: n kanssa

gk888 03/23/2017. 1 answers, 132 views
apache-beam

Minulla on aa palkkiputki, joka lukee PubSubista ja kirjoittaa BigQuerylle muutoksen jälkeen. Putki epäonnistuu yhdenmukaisesti NPE: n kanssa. Käytän SDK versio 0.6.0. Jokainen idea siitä, mitä voisin tehdä väärin? Yritän suorittaa putki DirectRunnerilla.

java.lang.NullPointerException
at org.apache.beam.sdk.io.PubsubUnboundedSource$PubsubReader.ackBatch(PubsubUnboundedSource.java:640)
at org.apache.beam.sdk.io.PubsubUnboundedSource$PubsubCheckpoint.finalizeCheckpoint(PubsubUnboundedSource.java:313)
at org.apache.beam.runners.direct.UnboundedReadEvaluatorFactory$UnboundedReadEvaluator.getReader(UnboundedReadEvaluatorFactory.java:174)
at org.apache.beam.runners.direct.UnboundedReadEvaluatorFactory$UnboundedReadEvaluator.processElement(UnboundedReadEvaluatorFactory.java:127)
at org.apache.beam.runners.direct.TransformExecutor.processElements(TransformExecutor.java:139)
at org.apache.beam.runners.direct.TransformExecutor.run(TransformExecutor.java:107)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745) 

1 Answers


Thomas Groh 03/24/2017.

Tämä ongelma johtuu DirectRunnerin bugista ( BEAM-1656 ) ja ehtona PubsubCheckpointissa. DirectRunner-bugi kiinnitettiin vetopyyntöön 2237 , joka sulautetaan Github-isännöintiin, mutta 0.6.0 julkaisun jälkeen.

Päivitys 0.7.0: n yörakennukseen tai rakennukseen github HEAD: ltä ratkaisee tämän ongelman DirectRunner-ohjelmaa käytettäessä.

Jos haluat päivittää nykyiseen yöpymiseen, sinun on lisättävä seuraaviin arkistoihin projektin pom.xml . 0.7.0-20170316.070901-9 sisältävä beam-runners-direct-java -moduulin varhaisin versio on 0.7.0-20170316.070901-9 , mutta kaikkia moduuleita ei ole rakennettu tähän erityiseen versioon, joten sinun on ehkä määriteltävä yksilöllisesti yhteensopivat versiot tai käytettävä 0.7.0-SNAPSHOT

              apache.snapshots        Apache Development Snapshot Repository https://repository.apache.org/content/repositories/snapshots/                  false                          true                   
3 comments
gk888 03/24/2017
Kiitos. Päivitys 0.7.0: ään SNAPSHOT näyttää ratkaise tämän virheen mutta tuo toisen java.lang.IllegalStateException: Cannot nackAll on persisting checkpoint at org.apache.beam.sdks.java.core.repackaged.com.google.common.‌​base.Preconditions.c‌​heckState(Preconditi‌​ons.java:444) ja minun gradlen kokoonpano on `org.apache.beam: beam-sdks-java-core: 0.7.0-SNAPSHOT", "org.apache.beam : palkki-SDK: t-java-io-google-pilvi-alustan: 0,7 0,0-SNAPSHOT "" org.ap ache.beam: säde-Runne rs-google-pilvi-datavirta-java: 0,7 0,0-SNAP SHOT", "org.apache.be am: säde-juoksijat-kohtalokkaita ct-java: 0.7.0-SNAPSH OT"
Thomas Groh 03/24/2017
Se johtuu kahden muun ongelman, BEAM-1182: n ja BEAM-1655: n yhdistelmästä . Vedä pyyntö # 2323 korjaa BEAM-1182: n, joten yönä oleva yöpyminen pitäisi toimia odotetusti.
gk888 03/28/2017
Yökerho näyttäisi korvanneen asian. Kiitos Thomas.

Related questions

Hot questions

Language

Popular Tags