Bug 1053701

Summary: [linearstore] Using recovered store results in "JERR_JNLF_FILEOFFSOVFL: Attempted to increase submitted offset past file size. (JournalFile::submittedDblkCount)" error message
Product: Red Hat Enterprise MRG Reporter: Kim van der Riet <kim.vdriet>
Component: qpid-cppAssignee: Kim van der Riet <kim.vdriet>
Status: CLOSED CURRENTRELEASE QA Contact: Irina Boverman <iboverma>
Severity: high Docs Contact:
Priority: high    
Version: DevelopmentCC: esammons, iboverma, jross, kim.vdriet, mrgqe-bugs, zkraus
Target Milestone: 3.0Keywords: OtherQA
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qpid-cpp-0.22-35 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-21 12:55:00 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:
Bug Depends On:    
Bug Blocks: 709325    
Attachments:
Description Flags
Store files that need to be expanded none

Description Kim van der Riet 2014-01-15 16:36:50 UTC
Created attachment 850589 [details]
Store files that need to be expanded

While running a qpid-txtest soak test, a store was encountered which recovered correctly, but upon completion of the test, the following error message was discovered in the broker log:

jexception 0x0402 AtomicCounter::addLimit() threw JERR_JNLF_FILEOFFSOVFL: Attempted to increase submitted offset past file size. (JournalFile::submittedDblkCount)

This message was found four times. The store in question is attached. To reproduce:

1. Expand the store into the store directory. Note that the store directory is the one that contains the qls directory, and is supplied to the broker using the --store-dir parameter.

2. Start the broker so as to recover the store in the store directory:

./qpidd --load-module linearstore.so -m no --auth no --default-flow-stop-threshold 0 --default-flow-resume-threshold 0 --default-queue-limit 0 --store-dir <path-to-store-dir> --log-enable info+ --truncate no

3. Run the test client to complete the test:

./qpid-txtest --messages-per-tx 14 --tx-count 1000000 --total-messages 981 --size 390 --queues 11 --check yes --init no --transfer no

The test passes ok. Examine the output from the broker to find the error messages above.

The cause must be analyzed and a fix found for what is probably a corner-case error in the recovery logic.

Comment 1 Kim van der Riet 2014-01-15 16:37:45 UTC
Upstream bug: https://issues.apache.org/jira/browse/QPID-5479

Comment 2 Kim van der Riet 2014-02-05 19:22:46 UTC
Since the checkin of the fix for QPID-5480 / BZ1053749, have not been able to reproduce this bug. Suggest testing to make sure this is the case.

Comment 3 Kim van der Riet 2014-02-05 20:03:38 UTC
I tested against the supplied test case (attached), now works correctly.