Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1152783

Summary: Error relation "xids" does not exist shown during recovery
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Ondrej Chaloupka <ochaloup>
Component: Transaction ManagerAssignee: tom.jenkinson
Status: CLOSED DUPLICATE QA Contact: Ondrej Chaloupka <ochaloup>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.4.0CC: hhovsepy
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-10-15 14:10:24 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
server.log with error none

Description Ondrej Chaloupka 2014-10-14 23:33:31 UTC
Created attachment 947056 [details]
server.log with error

It happens time to time that I'm getting error 'relation "xids" does not exist' (see [1]) during recovery.

This happens mainly when testing with PostgreSQL Plus. I'm getting it when running our jobs on jenkins. In fact quite consistently. Unfortunately I'm not able to reproduce it on my machine to having some hands-on reproducer.

This error does not cause any data integrity or functional problem. This just appear in log and then when commit on XAResource should be done, it's really done without any problem.

[1]
TRACE [com.arjuna.ats.arjuna] (Periodic Recovery) CommitMarkableResourceRecordRecoveryModule::periodicWorkFirstPass
TRACE [com.arjuna.ats.jta] (Periodic Recovery) TransactionSynchronizationRegistryImple.getTransactionKey
WARN  [com.arjuna.ats.arjuna] (Periodic Recovery) Could not handle connection: com.edb.util.PSQLException: ERROR: relation "xids" does not exist
  Position: 27
 at com.edb.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2555)
 at com.edb.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2185)
 at com.edb.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:545)
 at com.edb.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:532)
 at com.edb.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:387)
 at com.edb.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:267)
 at org.jboss.jca.adapters.jdbc.WrappedStatement.executeQuery(WrappedStatement.java:344)
 at com.arjuna.ats.internal.jta.recovery.arjunacore.CommitMarkableResourceRecordRecoveryModule.periodicWorkFirstPass(CommitMarkableResourceRecordRecoveryModule.java:224) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.jta.recovery.arjunacore.CommitMarkableResourceRecordRecoveryModule.wasCommitted(CommitMarkableResourceRecordRecoveryModule.java:507) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.jta.resources.arjunacore.CommitMarkableResourceRecord.restore_state(CommitMarkableResourceRecord.java:359) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.arjuna.coordinator.BasicAction.restore_state(BasicAction.java:1174) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.arjuna.coordinator.BasicAction.activate(BasicAction.java:484) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.arjuna.coordinator.BasicAction.activate(BasicAction.java:447) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.arjuna.recovery.RecoverAtomicAction.<init>(RecoverAtomicAction.java:50) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.arjuna.recovery.AtomicActionRecoveryModule.doRecoverTransaction(AtomicActionRecoveryModule.java:149) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.arjuna.recovery.AtomicActionRecoveryModule.processTransactionsStatus(AtomicActionRecoveryModule.java:251) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.arjuna.recovery.AtomicActionRecoveryModule.periodicWorkSecondPass(AtomicActionRecoveryModule.java:109) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:793) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]
 at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:375) [jbossjts-jacorb-4.17.23.Final.jar:4.17.23.Final]

Comment 1 tom.jenkinson 2014-10-15 10:03:19 UTC
Can you confirm that the table has been created and the recovery user can access it please?

Comment 2 Ondrej Chaloupka 2014-10-15 14:10:24 UTC
Hi Tom,

it's trouble as I'm not able to reproduce it somelike.

But your point with "access it" give me idea what could be the reason.

As this is test running with multiple datasources against one database I would say that is caused by https://bugzilla.redhat.com/show_bug.cgi?id=1104227

I'm closing this bug as duplicate of the mentioned one. And in case that I would find another reason or when the bz#1104227 will be fixed and I will be still getting the error I would reopen this one.

Thanks
Ondra

*** This bug has been marked as a duplicate of bug 1104227 ***