Hi Venkatesh,

I filed HIVE-1679 which covers the issue I described earlier as well
as HIVE-1681 which I think is the real root cause of the problem you
are seeing. Please see HIVE-1681 for more information.

Thanks.

Carl

On Fri, Oct 1, 2010 at 12:51 AM, S. Venkatesh <venkat...@innerzeal.com>wrote:

> We are seeing this exception:
>
> Internal error processing create_table
> java.lang.RuntimeException: Commit is called, but transaction is not
> active.
> Either there are mismatching open and close calls or rollback was called in
> the
> same transaction
>
> Carl, this suggests that the transaction is not active when commit was
> called. I concur with your observation.
>
> Venkatesh
>
> On Fri, Oct 1, 2010 at 12:21 PM, Carl Steinbach <c...@cloudera.com> wrote:
> > It looks like the root of the problem is that the code in ObjectStore is
> not
> > detecting failed transactions, and hence is not rolling them back.
> > Using JDO with locally managed transactions, you're expected to do
> something
> > like this:
> > Transaction tx = pm.currentTransaction();
> > try {
> >   tx.begin();
> >   { do some stuff }
> >   tx.commit();
> > } finally {
> >   if (tx.isActive()) {
> >     tx.rollback();
> >   }
> > }
> > But the code in ObjectStore instead wraps these methods in
> openTransaction()
> > and commitTransaction(). After calling tx.commit()  the method
> > commitTransaction() should then call tx.isActive() to check if the
> > transaction failed and call rollback if appropriate. Currently it doesn't
> do
> > this and instead always returns false.
> > I'm filing a ticket against this now.
> > Thanks.
> > Carl
> >
>

Reply via email to