tephra-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Varun Rao <varunrao0...@gmail.com>
Subject SELECT after INSERT shows missing data
Date Tue, 11 Dec 2018 15:05:14 GMT
Hello,

We have an application that issues two sequential inserts within the same
Phoenix/Tephra transaction.  Before the second insert, a check is performed
to ensure data from the first insert is available (select ...).  This check
failed once in production (an intermittent problem which has not been
reproduced).  Phoenix/Tephra is being accessed through
Spring (which uses Java Transaction API) with 'read committed' and
'propagation.required' options.  The code is similar to the following:

@transactional
void insertOuter(Object obj1, Object obj2) throws SomeException {
// Spring call to insert obj1 into Phoenix transactional table1
insertInner(obj2)
}

@Transactional
void insertInner(Object obj) throws SomeException {
checkToEnsureObj1WasInserted() // ** THIS FAILS
... // code to insert object 2
}

We expect to see that subsequent write operations within the same Phoenix
transactions are guaranteed to see the results of prior operations (the
second write will have access to the first write)

1)  Should Java Spring be compatible with Phoenix/Tephra?
2)  Is there a particular Phoenix/Tephra logging configuration that can be
enabled to capture additional transaction-specific information, such as
when commits or rollbacks occur?

Thanks very much

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message