All the record printing at runtime should go through APrintVisitor, which is one per partition. For any printer for primitive values that has to be stateful, the right fix should go to APrintVisitor.java. Basically, add a reusable printer for the type there.
Best, Yingyi On Tue, Nov 24, 2015 at 4:53 PM, Chris Hillery (JIRA) <[email protected]> wrote: > > [ > https://issues.apache.org/jira/browse/ASTERIXDB-1099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15025877#comment-15025877 > ] > > Chris Hillery commented on ASTERIXDB-1099: > ------------------------------------------ > > Per Till, a better possible solution would be to construct one printer per > Partition. > > > Format printers may have multi-threading errors > > ----------------------------------------------- > > > > Key: ASTERIXDB-1099 > > URL: > https://issues.apache.org/jira/browse/ASTERIXDB-1099 > > Project: Apache AsterixDB > > Issue Type: Bug > > Components: AsterixDB > > Reporter: Chris Hillery > > Assignee: Chris Hillery > > Priority: Minor > > > > Several of the printers - for instance, > org.apache.asterix.dataflow.data.nontagged.printers.AUUIDPrinter - have a > static member which is used for formatting the data. This static member > would be shared by any threads on the NC and is not synchronized, so there > is at least the possibility of data corruption. > > > > -- > This message was sent by Atlassian JIRA > (v6.3.4#6332) >
