Jeremiah, If you ensure the base directory is exclusive to your state stores, e.g. "./state-stores" or any similarly exclusive path, that should work.
Thanks, Brett On Tue, Jan 28, 2020 at 8:07 AM Jeremiah Adams <jad...@helixeducation.com.invalid> wrote: > Thanks Brett. > > In the short term, can I fix this by specifying an alternate directory? It > will still be empty on initial startup. > > > > Jeremiah Adams > Software Engineer > www.helixeducation.com > Blog | Twitter | Facebook | LinkedIn > > ________________________________________ > From: Brett Konold <brettkon...@gmail.com> > Sent: Tuesday, January 28, 2020 1:27 AM > To: dev@samza.apache.org > Subject: Re: Nullpointer After Upgrade from samza 1.0.0 to 1.3.0 > > Thanks for sharing Jeremiah. The infringing code is calling listFiles on > every file in the base directory, and since you'd configured that to be the > current directory of the job, there will be other non-store related > contents there as well some of which may be empty directories or not > directories at all. This is the reason for the NPE. > > I've created > https://url.emailprotection.link/?bb4dcsrIoLyiCTjGiqSsT_0LnLYpW7LTqyGmsCgDxt72IyPMS1mxdVxwJ7bI1sDQscs04YbqL0eWxl9A9wpYR3u44rRH8NrkqY28e6GFAlDrQ7EbO2m0JAgkH2_um6A4d > to track, you > can follow that for updates as I get a patch ready. > > Thanks, > Brett > > On Fri, Jan 24, 2020 at 7:03 AM Jeremiah Adams > <jad...@helixeducation.com.invalid> wrote: > > > Thanks for following up Brett. > > > > It is a RocksDB data store on the local disk. I am trying to get it > > runnign before deploying it as a standalone job in a docker container. > Yes, > > the directory is empty in this case. > > > > local config: > > job.logged.store.base.dir=. > > job.non-logged.store.base.dir=. > > > > new RocksDbTableDescriptor(tableName, KVSerde.of(new StringSerde(), new > > StringSerde()))).withTtl(this.rocksDbTtl); > > > > > > Jeremiah Adams > > Software Engineer > > > https://url.emailprotection.link/?bM9S-3pRw1lv8pYfwa-TwdjElP4W2K6b9vP5Crz22L_YcgsRJ-13h-OgPZSwFtU7GSNTDi1z-jdaRvWESRhtTVA~~ > > Blog | Twitter | Facebook | LinkedIn > > > > ________________________________________ > > From: Brett Konold <brettkon...@gmail.com> > > Sent: Thursday, January 23, 2020 3:45 PM > > To: Prateek Maheshwari > > Cc: dev@samza.apache.org > > Subject: Re: Nullpointer After Upgrade from samza 1.0.0 to 1.3.0 > > > > Hey Jeremiah, > > > > It looks like TransactionalStateTaskStorageManager.removeOldCheckpoints > is > > relying on an assumption that the store directory actually has some > > contents, which may not be true depending on the type of store being > used. > > > > Can you let me know what kind of KeyValueStore you've configured for your > > state? > > > > Brett > > > > On Thu, Jan 23, 2020 at 2:31 PM Prateek Maheshwari <prateek...@gmail.com > > > > wrote: > > > > > Brett, can you take a look at this? > > > > > > - Prateek > > > > > > On Wed, Jan 15, 2020 at 9:41 AM Jeremiah Adams > > > <jad...@helixeducation.com.invalid> wrote: > > > > > >> I am updating our jobs to use samza 1.3.0. I'm getting a null pointer > > >> when manually committing via taskCoordinator.commit(). > > >> > > >> > > >> Below is the stack trace - can anyone point me in the right direction? > > >> > > >> Thanks. > > >> > > >> > > >> 2020-01-15 10:33:35 RunLoop [ERROR] Task Partition 0 commit failed > > >> java.lang.NullPointerException > > >> at > > >> > > > scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:190) > > >> at > > >> scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:186) > > >> at > > >> > > > scala.collection.TraversableLike$class.filterImpl(TraversableLike.scala:246) > > >> at > > >> > scala.collection.TraversableLike$class.filter(TraversableLike.scala:259) > > >> at > > scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:186) > > >> at > > >> > > > org.apache.samza.storage.TransactionalStateTaskStorageManager$$anonfun$removeOldCheckpoints$2.apply(TransactionalStateTaskStorageManager.scala:94) > > >> at > > >> > > > org.apache.samza.storage.TransactionalStateTaskStorageManager$$anonfun$removeOldCheckpoints$2.apply(TransactionalStateTaskStorageManager.scala:86) > > >> at > > >> > > > scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33) > > >> at > > scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186) > > >> at > > >> > > > org.apache.samza.storage.TransactionalStateTaskStorageManager.removeOldCheckpoints(TransactionalStateTaskStorageManager.scala:86) > > >> at > > >> org.apache.samza.container.TaskInstance.commit(TaskInstance.scala:277) > > >> at > > >> > > > org.apache.samza.container.RunLoop$AsyncTaskWorker$5.run(RunLoop.java:547) > > >> at > > >> > > > org.apache.samza.container.RunLoop$AsyncTaskWorker.commit(RunLoop.java:566) > > >> at > > >> > org.apache.samza.container.RunLoop$AsyncTaskWorker.run(RunLoop.java:432) > > >> at > > >> > > > org.apache.samza.container.RunLoop$AsyncTaskWorker.access$300(RunLoop.java:357) > > >> at org.apache.samza.container.RunLoop.runTasks(RunLoop.java:244) > > >> at org.apache.samza.container.RunLoop.run(RunLoop.java:176) > > >> at > > >> > org.apache.samza.container.SamzaContainer.run(SamzaContainer.scala:768) > > >> at > > >> > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > > >> at > > java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) > > >> at java.util.concurrent.FutureTask.run(FutureTask.java) > > >> at > > >> > > > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > > >> at > > >> > > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > > >> at java.lang.Thread.run(Thread.java:748) > > >> 2020-01-15 10:33:35 RunLoop [ERROR] Caught throwable and stopping run > > loop > > >> java.lang.NullPointerException > > >> at > > >> > > > scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:190) > > >> at > > >> scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:186) > > >> at > > >> > > > scala.collection.TraversableLike$class.filterImpl(TraversableLike.scala:246) > > >> at > > >> > scala.collection.TraversableLike$class.filter(TraversableLike.scala:259) > > >> at > > scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:186) > > >> at > > >> > > > org.apache.samza.storage.TransactionalStateTaskStorageManager$$anonfun$removeOldCheckpoints$2.apply(TransactionalStateTaskStorageManager.scala:94) > > >> at > > >> > > > org.apache.samza.storage.TransactionalStateTaskStorageManager$$anonfun$removeOldCheckpoints$2.apply(TransactionalStateTaskStorageManager.scala:86) > > >> at > > >> > > > scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33) > > >> at > > scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:186) > > >> at > > >> > > > org.apache.samza.storage.TransactionalStateTaskStorageManager.removeOldCheckpoints(TransactionalStateTaskStorageManager.scala:86) > > >> at > > >> org.apache.samza.container.TaskInstance.commit(TaskInstance.scala:277) > > >> at > > >> > > > org.apache.samza.container.RunLoop$AsyncTaskWorker$5.run(RunLoop.java:547) > > >> at > > >> > > > org.apache.samza.container.RunLoop$AsyncTaskWorker.commit(RunLoop.java:566) > > >> at > > >> > org.apache.samza.container.RunLoop$AsyncTaskWorker.run(RunLoop.java:432) > > >> at > > >> > > > org.apache.samza.container.RunLoop$AsyncTaskWorker.access$300(RunLoop.java:357) > > >> at org.apache.samza.container.RunLoop.runTasks(RunLoop.java:244) > > >> at org.apache.samza.container.RunLoop.run(RunLoop.java:176) > > >> at > > >> > org.apache.samza.container.SamzaContainer.run(SamzaContainer.scala:768) > > >> at > > >> > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > > >> at > > java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) > > >> at java.util.concurrent.FutureTask.run(FutureTask.java) > > >> at > > >> > > > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > > >> at > > >> > > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > > >> at java.lang.Thread.run(Thread.java:748) > > >> > > >> > > >> Jeremiah Adams > > >> Software Engineer > > >> > > > https://url.emailprotection.link/?bM9S-3pRw1lv8pYfwa-TwdjElP4W2K6b9vP5Crz22L_YcgsRJ-13h-OgPZSwFtU7GSNTDi1z-jdaRvWESRhtTVA~~ > > < > > > https://url.emailprotection.link/?basKr9vk92a8vVw0XMnK5bmaSKuBc0AuEZ7YasYc7Df8YVt3SYmcjmLWdKMWzAAINWlUUA33ebGI7pSoTl9cg1g~~ > > > > > >> Blog< > > > https://url.emailprotection.link/?basKr9vk92a8vVw0XMnK5bmaSKuBc0AuEZ7YasYc7Df-lAcqG1fqHPpNw-wd9z7HtUJeCG5_8UjCf2mHtn6C_zQ~~ > > > > | Twitter< > > >> > > > https://url.emailprotection.link/?bVO2q0UXR235wN_yOnM0FjqITPdBYMD3reLGNddq-zPV5ChMQK9JwV4Be-QnrbRoXpJl8IcknAqKzYtA3RABKww~~ > > > > | Facebook< > > >> > > > https://url.emailprotection.link/?bUU7m4NfMS_EWGtH1yojBHX9sWZ6uxVdT1eQUkmU5vWY01WFZiS2KJ-c9iLIncdHB7Uw1lRYCprEEpPPQCdiK6Q~~ > > > > | LinkedIn< > > >> > > > https://url.emailprotection.link/?b0ZQfJ1pZYnASyoShs9MJI46-r1lxPhA-JS5VSkR7so-DFP0_HxbOo2LsajGOaoYXxb1ZCOMAu7hZscPCnIKWpXz0cpgQ386SnNHjPcwsu4z90mzBkuwoZc6YxOCzMGA0 > > > > > >> > > > > > >