Skip to content

sync issue for MaxQueueSize #53

Closed
Closed
@kostaskougios

Description

@kostaskougios

MaxQueueSize is populated in one thread and then used in an other without sync. This randomly (if a code runs for hundreds of times) results in the Parser thread to read MaxQueueSize as 0. In turn this fails with an exception:

Exception in thread "XMLEventReader" java.lang.IllegalArgumentException
at java.util.concurrent.LinkedBlockingQueue.(LinkedBlockingQueue.java:261)
at scala.xml.pull.ProducerConsumerIterator$class.scala$xml$pull$ProducerConsumerIterator$$queue(XMLEventReader.scala:133)
at scala.xml.pull.XMLEventReader.scala$xml$pull$ProducerConsumerIterator$$queue$lzycompute(XMLEventReader.scala:27)
at scala.xml.pull.XMLEventReader.scala$xml$pull$ProducerConsumerIterator$$queue(XMLEventReader.scala:27)
at scala.xml.pull.ProducerConsumerIterator$$anonfun$produce$1.apply$mcV$sp(XMLEventReader.scala:144)
at scala.xml.pull.ProducerConsumerIterator$$anonfun$produce$1.apply(XMLEventReader.scala:144)
at scala.xml.pull.ProducerConsumerIterator$$anonfun$produce$1.apply(XMLEventReader.scala:144)
at scala.xml.pull.ProducerConsumerIterator$class.interruptibly(XMLEventReader.scala:125)
at scala.xml.pull.XMLEventReader.interruptibly(XMLEventReader.scala:27)
at scala.xml.pull.ProducerConsumerIterator$class.produce(XMLEventReader.scala:144)
at scala.xml.pull.XMLEventReader.produce(XMLEventReader.scala:27)
at scala.xml.pull.XMLEventReader$Parser$$anonfun$setEvent$1.apply(XMLEventReader.scala:68)
at scala.xml.pull.XMLEventReader$Parser$$anonfun$setEvent$1.apply(XMLEventReader.scala:68)
at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
at scala.collection.mutable.WrappedArray.foreach(WrappedArray.scala:35)
at scala.xml.pull.XMLEventReader$Parser.setEvent(XMLEventReader.scala:68)
at scala.xml.pull.XMLEventReader$Parser.run(XMLEventReader.scala:95)
at java.lang.Thread.run(Thread.java:745)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions